电子说
在嵌入式系统开发的领域中,仿真器是调试和验证 MCU(微控制器单元)程序不可或缺的工具。Renesas E1/E20 仿真器以其强大的功能和广泛的适用性,成为了众多电子工程师的首选。今天,我们就来深入探讨一下这款仿真器的使用方法、调试功能以及使用过程中的注意事项。
文件下载:R5F104LLAFB#30.pdf
E1/E20 仿真器的文档包含两部分:《E1/E20 Emulator User’s Manual》和《E1/E20 Emulator Additional Document for User’s Manual》。前者主要介绍硬件规格,如仿真器组件、硬件规格以及与主机或用户系统的连接方式;后者则聚焦于仿真器调试器的功能、使用方法、与 MCU 相关的内容以及注意事项。
该仿真器支持 R8C 系列的多个型号,包括 R8C/3x 系列和 R8C/Lx 系列。具体型号众多,工程师在使用时需根据实际需求进行选择。
可调试内部工具链和部分第三方产品创建的模块,如 M3T - NC30WA V.5.20 Release 01 或更高版本,以及 IAR EWM16C V.2.12 或更高版本等。
在将 E1 或 E20 仿真器连接到用户系统之前,需在用户系统中安装合适的连接器,并注意以下几点:
推荐使用 3M Limited 生产的 14 - pin 连接器,有适用于不同地区的型号。
使用 E1 仿真器的小型连接器转换适配器时,需注意连接器引脚分配与标准接口连接器不同。
将仿真器的信号接地与用户系统的信号接地相连,同时注意在用户系统中分离框架接地和信号接地,避免因接地电位不同而引发安全问题。
连接 E1/E20 连接连接器和 MCU 时,应使相邻电阻分离以减少干扰,布线图案尽可能短,并按要求连接各引脚。
进行调试前,需要完成一系列准备工作:
连接仿真器到主机和用户系统,从 [Start] 菜单中选择启动高性能嵌入式工作区,并选择合适的启动方法。
根据是否使用工具链,创建新工作区的步骤有所不同。需设置工作区名称、项目名称、目录、CPU 家族等信息。
通过指定工作区所在目录并选择工作区文件,即可打开现有工作区。
可通过设置调试选项或加载会话文件来连接仿真器,断开仿真器也有多种方式。
在 [Debug Settings] 对话框中指定下载模块、设置命令行批处理文件的自动执行等。
R8C E1/E20 仿真器调试器提供了丰富的调试功能:
可将待调试的加载模块下载到 RAM 或闪存存储器中,需注意访问大小的设置。
能查看源代码、切换源文件列的显示、查看汇编语言代码并进行修改。
包括内存读写、自动更新数据、内存填充、移动、比较、搜索等功能,访问 SFR 区域时需遵循相关注意事项。
提供强制断点、软件断点和片上断点三种方式,可单设或多设,设置和使用时需注意不同断点的特点和限制。
可获取用户程序执行过程中的分支和数据访问信息,通过设置跟踪条件和使用跟踪菜单,能更深入地分析程序执行流程。
可指定在用户程序启动前和停止后执行的特定例程,但使用时存在一些限制,如调试功能受限等。
通过一个教程程序,我们可以更好地理解 E1/E20 仿真器的使用方法:
按照指定步骤打开工作区,为后续调试做准备。
在启动仿真器时完成调试器的初始设置。
将目标程序下载到 MCU 中,注意程序下载地址与 MCU 相关。
在 [Editor] 窗口中轻松设置软件断点,监控程序执行流程。
通过复位 CPU 和执行程序,观察程序运行情况,检查断点是否生效。
使用 [Breakpoints] 对话框检查和管理断点,在 [Register] 窗口中修改寄存器内容。
通过 [Labels] 窗口查看符号信息,在 [Memory] 窗口中查看指定标签对应的内存内容。
使用 [Watch] 窗口查看变量值,通过 [Locals] 窗口查看函数内的局部变量。
使用不同的单步执行命令,深入调试程序,观察变量和程序执行的细节。
在必要时强制中断程序执行,利用片上断点功能在特定地址或内存访问时中断程序。
使用跟踪和栈跟踪功能,获取程序执行的详细信息,帮助定位问题。
在使用 E1 或 E20 仿真器时,还需注意以下几点:
部分复位功能不可用,复位向量地址在调试时由仿真器程序使用,复位后的行为因复位类型而异。
更改内部 ROM 区域时,仅更新仿真器的内部缓存,在 CPU 重写模式下调试有诸多限制。
E1 仿真器在不向用户系统供电时也会消耗一定功率,在批量生产编程时不建议使用其供电功能。
单步执行、“Go to cursor”功能等在使用时有特定限制,调试低功耗功能时需遵循相应规则。
对于 R8C/3xW 和 R8C/3xX 型号,使用 CAN 模块时需注意时钟频率、激活方式和睡眠模式等问题。
总之,Renesas E1/E20 仿真器为我们提供了强大的调试功能,但在使用过程中需要我们仔细阅读文档,注意各种细节,以确保调试工作的顺利进行。希望通过这篇文章,能帮助各位电子工程师更好地使用这款仿真器,提高开发效率。如果你在使用过程中有任何疑问或经验分享,欢迎在评论区留言交流!
全部0条评论
快来发表一下你的评论吧 !