Renesas E1/E20 仿真器使用指南:从规格到调试全解析
在电子工程师的日常工作中,仿真器是调试和开发微控制器(MCU)不可或缺的工具。Renesas E1/E20 仿真器以其强大的功能和广泛的适用性,成为了众多工程师的首选。本文将详细介绍 Renesas E1/E20 仿真器的相关信息,包括规格、设计要点、调试准备、调试功能以及使用注意事项等,希望能为广大电子工程师提供有价值的参考。
文件下载:R5F2L38AMNFA#V0.pdf
一、E1/E20 仿真器手册概述
Renesas E1/E20 仿真器的手册由两部分组成:《E1/E20 仿真器用户手册》和《E1/E20 仿真器用户手册补充文档(连接注意事项)》。前者主要描述硬件规格,后者则着重介绍仿真器调试器的功能、使用方法、与 MCU 相关的内容以及注意事项。在使用 E1/E20 仿真器之前,务必仔细阅读这两份文档。
二、E1/E20 仿真器规格
2.1 目标 MCU
该仿真器支持 R8C 系列的多个型号,包括 R8C/3x 系列和 R8C/Lx 系列,具体涵盖了如 R8C/32C、R8C/33C 等多种型号。这些 MCU 为不同的应用场景提供了丰富的选择。
2.2 仿真器规格
- 型号:E1(R0E000010KCE00)和 E20(R0E000200KCT00)。
- 电源供应:无需额外电源,通过 USB 总线从主机获取电力。
- 适用调试器:R8C E1/E20 仿真器调试器。
- 工作环境:温度范围为 -10°C 至 50°C(非活动状态)和 10°C 至 35°C(活动状态),湿度范围为 35% RH 至 80% RH(无冷凝),振动要求在活动状态下最大为 2.45 m/s²,非活动状态下最大为 4.9 m/s²,运输时最大为 14.7 m/s²,且环境中无腐蚀性气体。
2.3 适用工具链和第三方产品
可以调试由内部工具链和第三方产品创建的模块,如 M3T - NC30WA V.5.20 Release 01 或更高版本的工具链,以及 TASKING M16C C/C++/EC++ Compiler V.2.3r1 或更高版本、IAR EWM16C V.2.12 或更高版本的第三方产品。
三、用户系统设计
3.1 连接器选择
在将 E1 或 E20 仿真器连接到用户系统之前,需要在用户系统中安装连接器。推荐使用 3M Limited 的 14 - 针连接器,如 2514 - 6002(用于日本以外地区)和 7614 - 6002(用于日本)。同时,要注意在 14 - 针连接器周围 5 mm 范围内,不要安装高度超过 10 mm 的组件,并且要将 14 - 针连接器的 2、12 和 14 引脚牢固连接到用户系统板的 GND 上。
3.2 小连接器转换适配器
如果使用 E1 仿真器的小连接器转换适配器(R0E000010CKZ11),要注意其连接器引脚分配与 E1 仿真器的标准接口连接器不同。具体引脚分配可参考文档中的表格。
3.3 系统接地连接
仿真器的信号地与用户系统的信号地相连,在仿真器中,信号地和框架地是连接的。在用户系统中,只连接框架地,不要将信号地与框架地连接,以避免因电位差导致的过流问题,引发安全隐患。
3.4 推荐连接示例
E1/E20 连接连接器与 MCU 的推荐连接示例中,MODE 引脚用于 MCU 控制和强制中断控制,不要连接电容等元件;RESET# 引脚用于输出“L”和监控引脚状态,建议使用开集电极输出缓冲器或 CR 复位电路作为复位电路,上拉值推荐为 4.7 kΩ 或更大。同时,要确保 Vss 和 Vcc 分别连接到 MCU 的 Vss 和 Vcc,并且输入 Vcc 的电压必须在 MCU 指定范围内。
3.5 接口电路
文档中给出了 E1 和 E20 仿真器的接口电路示例,可作为确定上拉电阻值的参考。
四、调试准备
4.1 激活高性能嵌入式工作室
首先将仿真器连接到主机和用户系统,然后从 [开始] 菜单的 [程序] 中选择 [Renesas -> 高性能嵌入式工作室 -> 高性能嵌入式工作室],在弹出的 [欢迎!] 对话框中选择启动方式,如创建新的工作区、打开最近的工作区或浏览其他工作区。
4.2 创建新工作区
根据是否使用工具链,创建新工作区的步骤有所不同。如果不使用工具链,在 [欢迎!] 对话框中选择 [创建新的项目工作区],然后在 [新项目工作区] 对话框中输入工作区名称、项目名称、选择 CPU 家族等信息,接着选择调试目标、设置配置文件名,最后点击 [完成] 按钮启动高性能嵌入式工作室。如果使用工具链,除了上述步骤外,还需要在 [工具链] 选项中选择合适的工具链。
4.3 打开现有工作区
在 [欢迎!] 对话框中选择 [浏览到另一个项目工作区],指定工作区所在的目录,选择工作区文件(扩展名为 “.hws”),点击 [选择] 按钮即可打开现有工作区。
4.4 连接仿真器
可以通过在启动前进行仿真器设置或加载会话文件来连接仿真器。如果仿真器断开连接,可以通过 [调试] 菜单中的 [连接] 选项、点击 [连接] 工具栏按钮或在 [命令行] 窗口中输入连接命令来重新连接。
4.5 断开仿真器
可以通过 [调试] 菜单中的 [断开连接] 选项、点击 [断开连接] 工具栏按钮或在 [命令行] 窗口中输入断开连接命令来断开仿真器。
4.6 退出高性能嵌入式工作室
选择 [文件] 菜单中的 [退出] 选项关闭高性能嵌入式工作室,关闭前会弹出消息框询问是否保存会话。
4.7 调试相关设置
可以通过 [调试] 菜单中的 [调试设置…] 选项打开 [调试设置] 对话框,指定下载模块、设置命令行批处理文件的自动执行以及下载选项等。
4.8 启动 E1/E20 仿真器调试器
在启动前要确保用户系统电源关闭,依次连接用户系统接口电缆和 USB 接口电缆,然后打开 [开始] 菜单,选择 [程序 -> Renesas -> 高性能嵌入式工作室 -> 高性能嵌入式工作室],在 [欢迎!] 对话框中选择使用教程工作区,指定工作区目录和文件,点击 [打开] 按钮。启动时会依次显示 [初始设置] 对话框、[配置属性] 对话框和 [连接中…] 对话框,完成设置后,当 [输出] 窗口显示 “Connected” 时,仿真器初始化完成。
五、调试功能
5.1 调试功能列表
根据操作模式的不同,仿真器支持不同的调试功能。在 [写入片上闪存模式] 下,支持程序下载和在线帮助等功能;在 [调试模式] 下,支持程序下载、复位功能、内存访问功能、用户程序执行功能、断点功能、跟踪功能、调试控制台功能、性能测量功能、堆栈跟踪功能、启动/停止功能、命令行功能和在线帮助等。
5.2 下载程序
可以通过 [调试] 菜单中的 [下载] 选项选择要下载的加载模块,或者在 [工作区] 窗口的 [下载模块] 下右键单击加载模块并选择 [下载],也可以双击加载模块名称来下载程序。下载前需要在高性能嵌入式工作室中注册加载模块,并且要注意下载时的访问大小设置。
5.3 打开源文件
可以通过选择源文件并点击 [打开] 按钮,或者在 [工作区] 窗口中双击源文件来打开源文件。在 [编辑器] 窗口中,可以查看源代码、切换列显示、查看汇编语言代码以及修改汇编语言代码。
5.4 内存访问功能
仿真器具有内存读写功能、内存数据上传和下载功能、显示变量功能以及自动更新内存数据功能。同时,还支持内存填充、移动、比较、搜索等操作,但要注意操作的数据大小和范围限制,以及对特殊功能寄存器(SFR)区域的访问注意事项。
5.5 断点功能
包括强制断点、软件断点(S/W 断点)和片上断点。S/W 断点通过重写指定地址的指令来实现程序中断,设置和移除 S/W 断点会涉及内存写入操作。片上断点包括预 - PC 断点、数据访问断点和跟踪满断点。
5.6 使用 S/W 断点
可以通过 [编辑器] 或 [反汇编] 窗口、[断点] 对话框或命令行来添加、移除、启用或禁用 S/W 断点。设置 S/W 断点后,程序在执行到该地址时会停止,此时 [编辑器] 或 [反汇编] 窗口会更新,显示程序停止的位置。
5.7 片上断点功能
通过 [片上事件] 对话框设置片上事件断点条件和跟踪条件。可以设置事件 A 和 B 的相关设置以及跟踪条件,还可以注册、保存和加载事件设置。
5.8 添加片上事件(DA 事件)
可以通过 [片上事件] 对话框、从其他窗口拖放或命令行来设置 DA 事件。设置事件时要注意地址、访问大小和访问类型的选择,避免设置无效的事件。
5.9 添加片上事件(PC 事件)
同样可以通过 [片上事件] 对话框、[编辑器] 窗口的 [片上断点] 列、从其他窗口拖放或命令行来设置 PC 事件。在 [编辑器] 窗口设置预 - PC 断点时,要确保在 [片上事件] 对话框中点击 [应用] 按钮后再进行操作。
5.10 注册事件
可以通过 [片上事件] 对话框、拖放或 [注册事件] 对话框来注册事件。注册的事件可以在后续使用时复用,也可以创建新的事件。
5.11 保存/加载片上事件设置
可以通过 [片上事件] 对话框的 [保存…] 和 [加载…] 按钮来保存和加载片上事件的设置。
5.12 保存/加载 [注册事件] 对话框设置
可以通过 [注册事件] 对话框的 [保存…] 和 [加载…] 按钮来保存和加载 [注册事件] 对话框的设置。
5.13 跟踪功能
通过 [片上事件] 对话框设置跟踪条件,包括跟踪类型、起始条件、停止条件和记录事件等。可以在 [跟踪] 窗口中查看跟踪信息,还可以使用跟踪菜单进行设置、清除、显示源程序、停止和重新启动跟踪等操作。
5.14 状态栏
通过 [视图 -> 状态栏] 可以显示 [状态栏],查看调试平台的当前状态,如用户程序的运行状态、PC 状态、任务 ID、断点原因和执行时间等。
5.15 启动/停止功能
可以通过 [设置 -> 仿真器 -> 启动/停止功能设置…] 打开 [启动/停止功能设置] 对话框,指定在用户程序执行前后要执行的例程。使用该功能时要注意调试功能的限制、寄存器和标志的限制以及语句的限制。
5.16 简单堆栈溢出检测功能
当栈超出 RAM 区域时,R8C E1/E20 仿真器调试器会在 [输出] 窗口显示堆栈溢出消息,此时需要从仿真器调试器进行复位操作。
5.17 在线帮助
通过 [帮助] 菜单中的 [仿真器帮助] 选项可以查看在线帮助,了解每个功能的使用方法和命令行语法。
六、教程
6.1 介绍
教程程序用 C 语言编写,用于对随机数据进行排序,帮助用户了解仿真器和仿真器调试器的功能。
6.2 启动高性能嵌入式工作室
按照前面介绍的方法打开工作区,指定教程工作区的目录和文件。
6.3 连接仿真器
启动仿真器时,在调试器设置对话框中进行初始设置,完成后即可开始调试。
6.4 下载教程程序
右键单击 [下载模块] 下的 [Tutorial.x30],选择 [下载] 来下载目标程序。
6.5 设置 S/W 断点
在 [编辑器] 窗口中,双击 [S/W 断点] 列中对应调用排序函数的行,设置 S/W 断点。
6.6 执行程序
通过 [调试] 菜单中的 [复位 CPU] 选项复位 CPU,然后选择 [运行] 选项执行程序,程序会在断点处停止。
6.7 检查断点
通过 [编辑 -> 源断点] 打开 [断点] 对话框,检查已设置的 S/W 断点,并可以进行移除、启用或禁用操作。
6.8 更改寄存器内容
通过 [视图 -> CPU -> 寄存器] 打开 [寄存器] 窗口,右键单击窗口可以切换寄存器组,双击寄存器行可以更改寄存器内容。
6.9 引用符号
通过 [视图 -> 符号 -> 标签] 打开 [标签] 窗口,查看模块中的符号信息。
6.10 检查内存内容
通过 [视图 -> CPU -> 内存…] 打开 [显示地址] 对话框,输入标签名,点击 [确定] 按钮,在 [内存] 窗口中查看相应内存的内容。
6.11 引用变量
在 [编辑器] 窗口中,将光标放在包含变量的行上,右键单击选择 [即时监视],在对话框中点击 [添加] 按钮将变量添加到 [监视] 窗口。也可以在 [监视] 窗口中右键单击,选择 [添加监视],输入变量名添加变量。
6.12 显示局部变量
通过 [视图 -> 符号 -> 局部] 打开 [局部] 窗口,查看函数中的局部变量。
6.13 单步执行程序
包括 [单步进入]、[单步跳过] 和 [单步跳出] 等命令。选择 [单步进入] 可以进入调用的函数,选择 [单步跳过] 可以执行整个函数调用,选择 [单步跳出] 可以跳出当前函数。
6.14 强制中断程序执行
清除所有断点,选择 [运行] 选项执行教程函数,由于程序处于无限循环中,可以选择 [停止程序] 选项强制中断程序执行。
6.15 片上断点功能
可以在 [编辑器] 窗口中设置指令获取事件作为片上断点,也可以通过 [视图 -> 事件 -> 片上事件] 打开 [片上事件] 对话框,设置内存访问断点。
6.16 跟踪功能
通过 [视图 -> 代码 -> 跟踪] 打开 [跟踪] 窗口,设置跟踪条件,如跟踪起始条件为用户程序执行开始,跟踪停止条件为用户程序执行停止。设置 S/W 断点,选择 [复位运行] 选项,程序在断点处停止后,跟踪信息会显示在 [跟踪] 窗口中。
6.17 堆栈跟踪功能
在排序函数的任意行设置 S/W 断点,选择 [复位运行] 选项,程序停止后,通过 [视图 -> 代码 -> 堆栈跟踪] 打开 [堆栈跟踪] 窗口,查看哪个函数调用了当前 PC 值对应的函数。
七、使用 E1 或 E20 仿真器的注意事项
7.1 MCU 资源使用
- 程序区域:不同型号的 MCU 有不同的程序区域用于仿真器,具体信息可参考文档中的表格。在调试器启动时,需要在 [配置属性] 对话框中指定不会被用户系统使用的区域。
- 引脚使用:仿真器通过 RESET# 引脚和 MODE 引脚控制 MCU。
- 中断使用:BRK 指令中断、地址匹配中断、单步中断和地址中断被仿真器程序使用,用户程序不要使用这些中断。
- 堆栈区域:仿真器在用户程序中断时使用最多 8 字节的堆栈指针,因此要预留 8 字节的堆栈区域。
- 特殊功能寄存器(SFR)使用:部分 SFR 被仿真器程序和用户程序共同使用,部分仅被仿真器程序使用,不要随意更改这些寄存器的值,否则仿真器可能无法控制 MCU。
- 选项功能选择区域:仿真器会设置选项功能选择寄存器(OFS)和选项功能选择寄存器 2(OFS2)的部分位,要注意这些设置对看门狗定时器和计数源保护模式的影响。
- 寄存器初始化:系统启动时,仿真器会初始化 CPU 寄存器,具体初始值可参考文档中的表格。
- RAM 初始化:仿真器会在启动时将 MCU 内部 RAM 区域(00400h - 004FFh)的部分内容初始化为 “00h”。
- MCU 保留区域
发布评论请先 登录
E1与E20仿真器用户手册
E1/E20仿真器、E2仿真器用户手册附加文件(RH850/P1M-E连接注意事项)
E1/E20仿真器、E2仿真器用户手册附加文档(RH850/E1L和RH850/E1M-S连接注意事项)
E1/E20仿真器、E2仿真器用户手册附加文档(RH850/E1L和RH850/E1M-S连接注意事项)
Renesas E1/E20 仿真器使用指南:从规格到调试全解析
评论