首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[讨论]请教在MON08中疑惑的问题?

[讨论]请教在MON08中疑惑的问题?

我看可很多freescale的单片机的datasheet,在MONitor ROM一章中会提到有两种进入monitor rom的方式,一种为normal方式,一种为forced方式.forced方式较为简单,不需要占用太多的I/O口,不需要一个高电压,但是它需要一个特殊的条件,就是
If $FFFE and $FFFF contain $FF
其中$FFFE and $FFFF 是复位时的地址,也就是说只有在复位向量中包含FFFF,FFFF时在能进入这种方式.我对这一点不是很理解.它的意思是不是在芯片中没有程序的时候.才能进入forced mode.
因为在上电复位的时候,$FFFE and $FFFF 中的数据会装入程序计数器中,我想问下,$FFFE and $FFFF 中在芯片为空的时候是什么数据?在芯片非空的时候是什么数据?
立志做个专业的工程师
对,$FFFE和$FFFF就是复位中断的矢量地址。当芯片为空时,复位矢量也为空,其中的数据为$FFFF。当芯片复位后,监控程序会检测复位矢量的值,如果发现数据为空(即为$FFFF),监控程序会强制启动,使芯片进入监控模式,即所谓的强制方式(forced)。
海纳百川  有容乃大
那这种烧写方式意义好像不大啊,只有是空芯片才能进入监控方式.如果单只有这种方式,那好像就是一次性烧写了.
立志做个专业的工程师
所以还有一种正常方式(normal)。当芯片不空时,通过特殊电平的设置,仍可以进入监控模式。
海纳百川  有容乃大
谢谢版主,这个我知道,但是这种方式需要占用一些I/O口,不过现在也在凑合着用.i/o口尽量复用吧
立志做个专业的工程师
只是复位时需要几个口线的电平设置。进入监控状态后,只需一个口进行通讯,其余的口线都被释放,可用回正常功能。
海纳百川  有容乃大
正常方式(normal)需要IRQ高压,确实有点不方便。

你可以在程序加一段擦除程序,在特定情况下,把芯片内容全擦,使芯片恢复到空片状态
   
监控方式没什么实际用处的,我都是下完了直接测功能。
监控方式至少是一种调试方法。
海纳百川  有容乃大
返回列表