请教各位单片机编程高手!

wuyisq 2003-09-27 10:20:10
我想在单片机的CODE区域的一固定单元,比如说0X50单元写一个值,请问如何实现?谢谢各位!
...全文
43 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zilingzhang 2003-09-28
  • 打赏
  • 举报
回复
他要的是写入CODE区!!!必须是在编译的时候才能够实现。你们说的通过语言指令对于51来说是做不到的,可以通过使用link命令来实现比如wave里面在link命令行通过生命 CODE(?PR?EXIT_8KROM?BLS(F000H),?PR?ENTERTOISP?BLS(F006H))这就是将exit_8krom模块放在code区0xf000h entertoisp 放在0xf006处,至于keil里面你要看一些参考资料了。可以去www.c51bbs.com上问问
sun 2003-09-28
  • 打赏
  • 举报
回复
看看KEIL里的"AT"关键词吧!
mcufan 2003-09-28
  • 打赏
  • 举报
回复
在程序运行中,无法写程序存储器

tom
----------------------------------------------
单片机爱好者欢迎您!
http://www.mcufan.com
liangsiyuan 2003-09-27
  • 打赏
  • 举报
回复
#define var CODE [0x50]
wuyisq 2003-09-27
  • 打赏
  • 举报
回复
我是要对CODE区域的一个单元进行操作。
liangsiyuan 2003-09-27
  • 打赏
  • 举报
回复
#define var DATA [0x50]

var=0x68;//付值语句
wuyisq 2003-09-27
  • 打赏
  • 举报
回复
我是用KeilC 的编译器,能这么做么。DATA是数据区域。
liangsiyuan 2003-09-27
  • 打赏
  • 举报
回复
dataval EQU 0x50

mov dataval,#xxH
tony1976 2003-09-27
  • 打赏
  • 举报
回复
写错了。应该是:
#define DBYTE ((unsigned char volatile data *) 0)
写0x68进去:
DBYTE[0x50]=0x68;
tony1976 2003-09-27
  • 打赏
  • 举报
回复
#define DBYTE ((unsigned char volatile data *) 0x50)
写0x68进去:
DBYTE[0]=0x68;

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧