[技术问答] 赛元单片机怎么将变量定义到我想要定义的地址里面去?

[复制链接]
 楼主| 疯狂的小呆呆 发表于 2020-8-29 16:44 | 显示全部楼层 |阅读模式
请问一下,赛元单片机怎么将变量定义到我想要定义的地址里面去?同时将bit变量定义再我想要定义到变量里面?比如说我像把一个char a 变量定义在寄存地址0x08里面去,应该怎么操作?同时我想在0x09这个地址里里面定义一个bit变量应该怎么操作?
xys9190 发表于 2020-8-31 07:40 | 显示全部楼层
扩展关键字
char far ftext[256]    _at_ 0x02E000; /* array at xdata 0x03E000 */
赛元MCU3 发表于 2020-8-31 15:56 | 显示全部楼层
您好,可以在定义变量的时候首先定义好变量类型,然后使用_at_关键词将变量定位到对应的地址,例如要把char型的变量Example_num1定义到0x50这个地址:char  Example_num1  _at_  0x50;关于将一个bit类型的变量定义到某个具体地址的某一位,我们暂时没有找到合适的方法,可以将一个char型的变量定位到具体的地址,去改变这个char型变量的某一位,具体定位bit类型变量的做法如果哪位坛友有比较好的方式可以留言或者是加赛元的技术支持QQ:2131132845进行讨论,另外需要注意的是,赛元芯片的内部RAM的0x00~0x1F是工作寄存器组,因此用户变量应该定义在此区域以外。
1598860322(1).jpg
 楼主| 疯狂的小呆呆 发表于 2020-8-31 16:11 | 显示全部楼层
赛元MCU3 发表于 2020-8-31 15:56
您好,可以在定义变量的时候首先定义好变量类型,然后使用_at_关键词将变量定位到对应的地址,例如要把char ...

好的,我试试看
 楼主| 疯狂的小呆呆 发表于 2020-8-31 16:17 | 显示全部楼层
xys9190 发表于 2020-8-31 07:40
扩展关键字
char far ftext[256]    _at_ 0x02E000; /* array at xdata 0x03E000 */

好的,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

48

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部