单片机运行时程序能修改自身代码吗?

有一款单片机内置RF模块,是否可以通过RF的命令随时更新内部程序FLASH的代码数据?就是所谓的“airprogramming"空中编程?换句话说单片机的程序能否实现自身... 有一款单片机内置RF模块,是否可以通过RF的命令随时更新内部程序FLASH的代码数据?就是所谓的“air programming" 空中编程? 换句话说单片机的程序能否实现自身代码的修改?是否需要一个引导(linker)?
请高手帮忙解答!
展开
 我来答
ahubaoan
2014-01-09
知道答主
回答量:33
采纳率:0%
帮助的人:10.2万
展开全部
首先看你的单片机是在root中跑还是在ram中跑,如果是在ram中,纠结有写的代码就ok了。如果是在rom中,则要跳转加一段引导程序,引导的时候只写rom,不干其他的。不过最好是有2份程序,每次只改一个,如果失败就运行正常的并把异常的再改回成正常的。
追问
  1. 程序一般都是固定在ROM中,只读区间运行吧? 怎么说程序区间也可以放到RAM中运行?

追答
由于我们的单片机教学书籍比较早,所以都是用的好几年以前的。8位单片机还横行的时候,基本都是在ROM中运行的。在ROM和RAM中运行区别是指令寄存器从哪个地方取指令的区别,两个都是可行的。目前来说,简单电子设备,冰箱,洗衣机,收音机什么的,控制为主,不需要UI的,基本用的都是老片子,都是在ROM中跑的。像现在的手机,ipad什么的都是在RAM中跑的。对了,想想你的电脑,程序都咋C盘的,启动后会被加载到RAM运行。这也就是在RAM中和ROM中的一个区别,RAM是要先加载进去再跑的,ROM是直接跑的。
zmxzmxzmx2012
2014-01-09
知道答主
回答量:32
采纳率:0%
帮助的人:16万
展开全部
只能修改数据部分,不能修改执行程序部分.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友62000af
2014-01-09 · TA获得超过124个赞
知道小有建树答主
回答量:280
采纳率:0%
帮助的人:171万
展开全部
自动更新代码没听说过,RF模块可以无线收发数据,可以用来做功能切换。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式