OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5071|回复: 10

ARM7移植问题求助

[复制链接]

7

主题

42

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2014-6-30
在线时间
29 小时
发表于 2014-7-1 22:35:36 | 显示全部楼层 |阅读模式
5金钱
大家好!我是菜鸟,我现在想把51单片机里的程序移植到ARM7 LPC2138的程序里面来,但看了51程序里面的“data、idata、pdata、xdata"在ARM程序里面不知要如何定义,请各位大侠指点,谢谢!
下面是8051的程序里面带了“xdata”,还有些地方有“data、idata、pdata”没贴出来,我要问的是在ARM7 LPC2138程序里面是如何来定义的?是直接将这些“data、idata、pdata、xdata"都取消就可以了吗?
#include <c8051f126.h>
#include <stdio.h>
extern ZTexts ZText[ZText_NUM];
extern uchar star;
extern xdata uint zerox,zeroy;
unsigned char xdata ZLQn[10]={200,200,200,200,200,200,200,100,100,100};
unsigned char xdata ZLQh[10]={0,0,0,0,0,0,0,0,0,0};
unsigned char xdata ZLQt[10]={0,0,0,0,0,0,0,0,0,0};
uchar xdata ZLQD[10][200];
uchar xdata ecgtempx[300];
uchar xdata ecgtempy[120];
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165353
金钱
165353
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-7-1 23:46:10 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

7

主题

42

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2014-6-30
在线时间
29 小时
 楼主| 发表于 2014-7-2 21:38:30 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子大侠,我重新贴了一些程序过来,在ARM程序里要用这些程序直接取消“data、idata、pdata、xdata"就可以么?
回复

使用道具 举报

22

主题

2251

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4471
金钱
4471
注册时间
2013-4-22
在线时间
335 小时
发表于 2014-7-2 21:57:42 | 显示全部楼层
直接删除就可以了,因为51的ram很小,其他都是外部ram,这些关键字估计只有51支持吧,主要是告诉编译器把这些变量使用的是什么类型的ram
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165353
金钱
165353
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-7-2 23:19:26 | 显示全部楼层
回复【3楼】648806817:
---------------------------------
这个我也不太熟了...
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

9

主题

97

帖子

5

精华

金牌会员

Rank: 6Rank: 6

积分
1015
金钱
1015
注册时间
2012-7-16
在线时间
25 小时
发表于 2014-7-3 00:18:56 | 显示全部楼层
经典的8051单片机,128字节RAM,C51(51单片机的C语言)中用data声明,默认省略;后来有了52,多出的128字节RAM,用pdata声明;后来又有厂家外扩RAM,最大64K,用xdata关键字声明。这些关键字只是在C51,也就是51单片机的C语言使用,到ARM,内存统一管理了,肯定不适用C51的语法,也就没有了data/pdata/xdata之分,记忆中是这个样子的。。。
我的微博:weifengdq,欢迎关注和私信:http://weibo.com/3193061857/profile?rightmod=1&wvr=5&mod=personinfo
回复

使用道具 举报

7

主题

42

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2014-6-30
在线时间
29 小时
 楼主| 发表于 2014-7-3 21:22:06 | 显示全部楼层
回复【4楼】三叶草:
---------------------------------
谢谢,我试试。
回复

使用道具 举报

7

主题

42

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2014-6-30
在线时间
29 小时
 楼主| 发表于 2014-7-3 21:27:50 | 显示全部楼层
回复【6楼】weifengdq:
---------------------------------
请问,是将这些程序带data/pdata/xdata的删去就可直接用在ARM程序里了么?
回复

使用道具 举报

9

主题

97

帖子

5

精华

金牌会员

Rank: 6Rank: 6

积分
1015
金钱
1015
注册时间
2012-7-16
在线时间
25 小时
发表于 2014-7-4 19:52:31 | 显示全部楼层
回复【8楼】648806817:
---------------------------------
应该是
我的微博:weifengdq,欢迎关注和私信:http://weibo.com/3193061857/profile?rightmod=1&wvr=5&mod=personinfo
回复

使用道具 举报

34

主题

805

帖子

4

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1863
金钱
1863
注册时间
2011-3-29
在线时间
139 小时
发表于 2014-7-4 21:57:32 | 显示全部楼层
全部删了吧。直接#define为空格也可以。

不过移植过来可能有些兼容性问题。
业余程序玩家。
回复

使用道具 举报

7

主题

42

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2014-6-30
在线时间
29 小时
 楼主| 发表于 2014-7-4 22:40:31 | 显示全部楼层
回复【10楼】ofourme:
---------------------------------
谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 23:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表