深入了解Renesas E1/E20 Emulator:从规范到应用

电子说

1.4w人已加入

描述

深入了解Renesas E1/E20 Emulator:从规范到应用

引言

在微控制器(MCU)的开发过程中,调试工具起着至关重要的作用。Renesas的E1/E20 Emulator就是一款强大的调试工具,它能帮助工程师更高效地开发和调试基于R8C Family的MCU项目。本文将详细介绍E1/E20 Emulator的规格、使用方法、调试功能以及使用时的注意事项,希望能对广大电子工程师有所帮助。

文件下载:R5F2134CWJFP#U0.pdf

1. E1/E20 Emulator 规格

1.1 目标MCU

E1/E20 Emulator支持R8C Family的多个系列,包括R8C/3x Series和R8C/Lx Series。具体涵盖了如R8C/32C、R8C/33C等众多型号的MCU,为开发者提供了广泛的选择。

1.2 仿真器规格

  • 类型:包括E1 (R0E000010KCE00) 和 E20 (R0E000200KCT00) 两种型号。
  • 电源:无需外部电源,通过USB总线由主机供电。
  • 适用调试器:R8C E1/E20 Emulator Debugger。
  • 工作环境:温度在10°C - 35°C(活动状态)和 -10°C - 50°C(非活动状态);湿度在35% RH - 80% RH,无冷凝;振动活动状态下最大2.45 m/s²,非活动状态下最大4.9 m/s²,运输时最大14.7 m/s²;周围环境无腐蚀性气体。

1.3 适用工具链和第三方产品

可以调试由内部工具链和第三方产品创建的模块,如M3T - NC30WA V.5.20 Release 01或更高版本的工具链,以及IAR EWM16C V.2.12或更高版本、TASKING M16C C/C++/EC++ Compiler V.2.3r1或更高版本的第三方产品。不过使用TASKING M16C C/C++/EC++编译器V3.0r1创建的ELF/DWARF2格式加载模块调试时,显示基类成员变量需要注意一些问题。

2. 用户系统设计

2.1 连接器选择

在将E1或E20仿真器连接到用户系统之前,需要在用户系统上安装连接器。推荐使用3M Limited的2514 - 6002(用于国外)或7614 - 6002(用于日本)14 - 针连接器。连接时要注意,在14 - 针连接器周围5毫米范围内不要安装高度超过10毫米的组件,并且要将引脚2、12和14牢固连接到用户系统板的GND上。

2.2 小连接器转换适配器

使用E1仿真器的小连接器转换适配器(R0E000010CKZ11)时,连接器引脚分配与标准接口连接器不同。使用时要特别注意引脚分配,避免连接错误。

2.3 系统接地连接

仿真器的信号接地与用户系统的信号接地相连,仿真器中信号接地和框架接地连接,但在用户系统中,仅连接框架接地,不要将信号接地与框架接地连接,否则可能因接地电位不同导致冒烟、起火或触电。

3. 调试准备

3.1 激活高性能嵌入式工作室

连接仿真器到主机和用户系统,从[Start]菜单的[Programs]中选择[Renesas -> High - performance Embedded Workshop -> High - performance Embedded Workshop],在弹出的[Welcome!]对话框中选择启动方式,包括创建新项目工作区、打开最近的项目工作区或浏览其他项目工作区。

3.2 创建工作区

  • 未使用工具链:在[Welcome!]对话框中选择[Create a new project workspace],启动项目生成器,输入工作区名称、项目名称、目录,选择CPU系列,设置调试目标和配置文件名,完成后点击[Finish]启动高性能嵌入式工作室,最后连接仿真器。
  • 使用工具链:步骤与未使用工具链类似,但在项目生成器中需要选择合适的工具链。

3.3 连接和断开仿真器

连接仿真器可以通过在启动前进行仿真器设置,选择[Debug Settings…]并设置调试目标、下载模块和自动执行命令链;也可以加载已注册仿真器使用设置的会话文件。断开仿真器可从[Debug]菜单选择[Disconnect],点击[Disconnect]工具栏按钮或在[Command Line]窗口输入断开命令。

3.4 调试相关设置

  • 指定下载模块:从[Debug]菜单选择[Debug Settings…],在[Target]下拉列表中选择要连接的产品,在[Debug format]下拉列表中选择加载模块的格式,然后在[Download modules]列表框中注册模块。
  • 设置自动执行命令行批处理文件:点击[Debug Settings]对话框的[Options]选项卡,选择命令链自动执行的时机,如在仿真器连接时、下载模块前、下载模块后或复位后,然后将命令批处理文件添加到[Command Line Batch Processing]列表框。

4. 调试功能

4.1 调试功能列表

不同操作模式下支持的功能有所不同。在[Writing the on - chip flash memory mode]模式下,支持程序下载、在线帮助和命令行功能;在[Debugging mode]模式下,支持更多功能,如重置功能、内存访问功能、断点功能、跟踪功能、堆栈跟踪功能等。

4.2 程序下载

从[Debug]菜单选择[Download],选择要下载的加载模块,也可以在[Workspace]窗口的[Download modules]下右键点击加载模块选择[Download],或双击加载模块名称。下载前需要将其注册为高性能嵌入式工作室中的加载模块,注意下载时访问大小要固定为1字节。

4.3 打开源文件

可以在集成编辑器中打开源文件,通过选择源文件并点击[Open]按钮,或在[Workspace]窗口中双击源文件。编辑器左侧的列显示地址、片上断点和软件断点等信息,方便设置断点和定位程序。

4.4 内存访问功能

  • 读写功能:可以在[Memory…]窗口中显示和操作内存内容,包括下载和上传内存数据、显示变量、自动更新内存数据等。
  • 其他操作功能:如内存填充、移动、比较、搜索等,但要注意数据大小和范围的限制,并且这些功能在调试监视器所在区域可能无法正常工作。

4.5 断点功能

提供强制断点、软件断点(S/W break)和片上断点三种功能。可以在编辑器、[Breakpoints]对话框或命令行中添加、删除、启用或禁用断点。设置和使用断点时要注意一些限制,如S/W断点设置会导致片上内存写入,不能在特定区域设置等。

4.6 跟踪功能

可以获取用户程序执行过程中的分支和数据访问信息,帮助分析程序执行流程。支持分支跟踪和数据访问跟踪,可在[On - Chip Event]对话框中设置跟踪条件,通过[Trace]窗口显示跟踪结果,并可进行统计分析和函数调用显示等操作。

5. 教程

教程程序用C语言编写,主要功能是对随机数据进行升序和降序排序。通过教程可以学习如何启动高性能嵌入式工作室、连接仿真器、下载程序、设置断点、执行程序、检查断点、改变寄存器内容、查看符号和变量、单步执行程序、使用片上断点和跟踪功能等。

6. 使用注意事项

6.1 MCU资源使用

  • 程序区域:不同型号的MCU有不同的程序区域用于仿真器,部分型号需要指定2KB的ROM区域,不能更改该区域,否则仿真器可能无法控制MCU。
  • 引脚使用:仿真器通过RESET#引脚和MODE引脚控制MCU。
  • 中断:BRK指令中断、地址匹配中断、单步中断和地址中断被仿真器程序使用,用户程序不能使用这些中断。
  • 堆栈区域:仿真器在用户程序中断时使用最多8字节的堆栈指针(ISP),需要预留8字节的堆栈区域。
  • 特殊功能寄存器(SFR):部分SFR被仿真器程序和用户程序共同使用,部分仅被仿真器程序使用,不能随意更改这些寄存器的值。

6.2 复位注意事项

  • 电源复位和电压监视器0复位不能使用,否则仿真器将无法控制。
  • 调试时复位向量地址由仿真器程序使用,用户程序运行和暂停时显示的复位向量地址有所不同。
  • 复位后,仿真器程序会暂时介入,用户程序启动会有时间延迟,不同类型的复位行为也有所不同。
  • 看门狗定时器复位时要注意,避免因异常导致仿真器失控,并且在用户程序暂停时不要进行硬件复位。

6.3 内部ROM区域(闪存)

  • 更改内部ROM区域时,仅更新仿真器的内部缓存,更改内容会在用户程序启动前反映到MCU中。
  • 调试CPU重写模式时,要注意不可重写的区域,避免操作不当导致仿真器无法控制MCU。
  • 仿真器重写闪存时,不要对MCU进行复位或调试操作,以防止程序中断。
  • 调试时频繁重写闪存,不要将用于调试的MCU用于产品中,也不要保存调试时的MCU闪存内容。

6.4 电源供应

E1仿真器在不向用户系统供电时会消耗一定功率,使用E1仿真器进行批量生产编程时,不要使用其电源供应功能,应根据MCU允许的电压单独供电,因为其供电精度受主机USB电源质量影响。

6.5 调试功能限制

  • 单步执行时,S/W断点和片上断点无效,某些指令(如软件中断指令、INT指令、标志操作指令)单步执行有特殊情况。
  • “Go to cursor”功能使用时,已设置的S/W断点和片上断点会无效。
  • 调试停止模式或等待模式时,要设置断点,避免在模式中操作窗口和执行单步操作,防止内存访问异常。

6.6 CAN模块使用注意事项(仅适用于R8C/3xW和R8C/3xX)

使用CAN模块时,要确保CPU时钟在4MHz以上,不要从内存窗口激活CAN模块,不要进入停止模式,并且在MCU操作时钟速度较低时优先使用片上断点。

总结

Renesas E1/E20 Emulator为基于R8C Family的MCU开发提供了丰富的调试功能,但在使用过程中需要注意诸多细节,包括硬件连接、资源使用、复位操作、闪存读写等方面。只有充分了解并遵循这些规则,才能高效、准确地使用该仿真器进行开发和调试工作,确保项目的顺利进行。各位电子工程师在实际应用中遇到问题时,不妨参考本文的内容,希望能为大家带来帮助。你在使用Renesas E1/E20 Emulator的过程中遇到过哪些挑战呢?欢迎在评论区分享交流。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐
  • 热点推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分