加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何使用瑞萨E10A调试SH系列不带片内FLASH的单片机

发布时间:2020-12-15 20:05:53 所属栏目:百科 来源:网络整理
导读:对于SH1,SH2等内建FLASH的 单片机 ,由于内建了高速FLASH存储器,我们可以使用E10A等 仿真 器直接在FLASH ROM里设置硬件断点,可以很方便的进行调试。? 但是对于SH2A,SH3,SH4等不带内部FLASH的单片机,我们只能在片外RAM里进行仿真和调试了。 ? ? 下面以SH2A
对于SH1,SH2等内建FLASH的单片机,由于内建了高速FLASH存储器,我们可以使用E10A等仿真器直接在FLASH ROM里设置硬件断点,可以很方便的进行调试。?但是对于SH2A,SH3,SH4等不带内部FLASH的单片机,我们只能在片外RAM里进行仿真和调试了。

? ? 下面以SH2A为例,如何设置断点,如何在内置SRAM里或者片外SDRAM里调试程序,如何下载程序到外部FLASH里。?

? ???SH2A断点:针对SH2A的调试体系,硬件断点可以设置在任何地址处(FLASH和SDRAM,SRAM等),软件断点只能设置在RAM处。硬件断点通过设置相应的地址寄存器,并进行地址比较,使CPU进入调试模式。软件断点可以通过相应的数据寄存器,在任何需要设置断点的地方,将其内容替换为一个固定的序列,达到设置断点的目的。软件断点的实现需要替换要设置断点的位置的内容,这点在FLASH里做不到,因为读写FLASH需要特殊的指令。故软件断点只能设置在RAM中。

E10A仿真器调试说明:?


在内部RAM调试:?

1. 新建一个文本文档,将打开软件断点,初始化SP和PC寄存器的命令放在其中,然后保存为后缀“.hdc”的批处理文件。?
2. 在HEW里的debug -- debug settings -- options -- command batch file load,分别选中after download of modules和after reset选项,选择上面的.hdc文件即可。?
3. 改变相应的段地址(复位向量,中断向量,代码区,初始化全局区,未初始化全局区,堆,栈)。?


? ?说明:编译器复位或者编译全部文件之后,将自动运行上面的批处理文件,执行相应的命令。?
command line设置见编译器手册。?

在外部RAM调试:?
1. 新建一个文本文档,将初始化时钟和总线控制器的命令放在其中,然后保存为后缀“.hdc”的批处理文件。?
2. 在HEW里的debug -- debug settings -- options -- command batch file load,选中before download of modules选项,选择上面的文件.?
3. 再次新建一个打开软件断点,初始化SP和PC寄存器的批处理文件。?
4. 在HEW里的debug -- debug settings -- options -- command batch file load,选中after download of modules选项,选择3中的文件。?
5. 改变相应的段地址(复位向量,中断向量,代码区,初始化全局区,未初始化全局区,堆,栈)。


? ? 说明:在进入下载模式之前需要设置时钟和总线控制器,可执行的映象文件才能下载到外部RAM。?

如何使用E10A下载程序到外部FLASH里:?
1. 初始化外部FLASH的总线控制器,保存到hdc文件,操作步骤见“在外部RAM调试”的第一条。?
2. 参照FLASH手册修改Renesas提供的FLASH样本程序(汇编语言),生成.mot文件,然后在HEW里选中该文件,并设置FLASH参数。?
3. 在HEW里设置FLASH下载选项,如图。?

?
4. 最后可以下载程序了。?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读