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

2011-2-25 14:05 1304 3 4 分类: MCU/ 嵌入式
来源:瑞萨单片机论坛

对于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下载选项,如图。 

如何使用E10A调试SH系列不带片内FLASH的单片机 - 瑞沙 - 瑞萨产品世界

文章评论1条评论)

登录后参与讨论

用户377235 2015-5-16 18:36

小弟初学,买了一个新的E10A,安装连接不上,不知道什么问题,请大哥帮忙。如有看到,帮个忙,QQ 634982466 flca888@126.com
相关推荐阅读
用户1407374 2011-03-15 21:40
嵌入式Linux下SRAM驱动程序的开发原理及应用
摘要: 嵌入式Linux是目前操作系统领域中的一个热点。其要点与难点是驱动程序的开发。本文简要论述了基于现代公司嵌入式Arm处理器芯片的嵌入式Linux的SRAM驱动程序的开发原理及流程。 关键词:嵌...
用户1407374 2011-03-15 21:39
嵌入式Linux网络驱动程序的开发及实现原理
0 引言 随着人们对开放源代码软件热情的日益增高,Linux作为一个功能强大而稳定的开源操作系统,越来越受到成千上万的计算机专家和爱好者的青睐。在嵌入式领域,通过对Linux进行小型化裁剪后,使其能够...
用户1407374 2011-03-07 09:42
R8C/1B学习板之uC/OS-II移植详解
来源:瑞萨单片机论坛都说在8051上都可以跑UCOS,那么在瑞萨R8C这种小资源的MCU上能否跑RTOS呢?R8C/1B的ROM为16KB,RAM为1KB。下面我们来尝试一下吧。 笔者曾经将uC/OS...
用户1407374 2011-02-25 14:33
R8C2K的LIN总线设置
来源:瑞萨单片机论坛仅写了底层驱动,简单的主机和从机的收发,供参考!主机:void LIN_Mater_Config(void){tstop_tracr = 1;    // 强制timerRA终止/...
用户1407374 2011-02-25 14:33
R8C\2K 2L系统时钟设置,WDT设置
来源:瑞萨单片机论坛系统时钟设置:使用内时钟40MHz/************************************************************************...
用户1407374 2011-02-25 14:32
R8C\Tiny DataFlash程序中 WDT的处理方法
来源:瑞萨单片机论坛R8C\Tiny 单片机的DataFlash处理起来比较繁琐,处理模式分为EW0模式和EW1模式,通常我们采用EW1模式。  在此模式中,DataFlash的一个块擦除时间比较长,...
我要评论
1
3
关闭 站长推荐上一条 /3 下一条