在IAR Embedded Workbench for Renesas RH850中开发和调试Renesas RH850 MCU

RH850系列32位汽车MCU凭借先进的制程技术和瑞萨电子的专有内核,可在实现超低功耗的同时优化性能。 该系列高品质MCU符合AEC-Q100标准,具备内置安全功能,并为汽车应用场景提供符合ISO 26262标准的功能安全保障。RH850系列产品组合提供具有可扩展性的解决方案,其CPU内核结构多样------包括单核、多核、锁步核或其组合------以满足严苛场景对高性能与高可靠性的要求。这些MCU专为应对最新的汽车市场趋势而设计,包括网联化、自动化、共享化和电动化(CASE),以助力实现电子电气(E/E)架构的变革。

IAR Embedded Workbench for Renesas RH850是一套完整的集成开发环境,符合ISO 26262功能安全标准,支持Renesas RH850的编译和调试。本文主要以RH850/U2A为例介绍如何在IAR Embedded Workbench for Renesas RH850中开发和调试Renesas RH850 MCU。

01.准备工作

软件:
IAR Embedded Workbench for Renesas RH850
RH850/U2A Starter Kit Sample Code
RH850 Smart Configurator
AUTOSAR RH850/U2A MCAL v22.01.00 Software
Renesas Flash Programmer

硬件:
Y-ASK-RH850U2A RH850/U2A Starter Kits
硬件调试器:E2

02.在IAR Embedded Workbench for Renesas RH850中开发和调试Renesas RH850 MCU

下面以RH850/U2A为例介绍如何在IAR Embedded Workbench for Renesas RH850中开发和调试Renesas RH850 MCU。
使用RH850/U2A Starter Kit Sample Code

快速入手RH850/U2A最快捷的方式就是直接使用RH850/U2A Starter Kit Sample Code。

打开Y-ASK-RH850U2A16-v0200\toolchain\IAR\U2A16目录下面的IAR工程,直接编译工程,正常来说会成功编译:

然后下载调试,正常来说程序会成功下载到目标系统,然后停在main函数入口:

全速运行,正常来说程序会正常运行,然后串口助手会打印出相关的Log信息:

使用RH850 Smart Configurator

使用RH850 Smart Configurator可以自动生成外设模块的驱动程序,从而缩短开发周期并显著降低成本。

打开RH850 Smart Configurator,点击Create Project,在Device下拉框中选中对应的芯片,Toolchain选择IAR RH850 Toolchain:

在System中配置是否使能PE1、PE2和PE3:

在System中配置是否使能PE1、PE2和PE3:

配置完成之后,点击Generate Code生成代码。

在IAR Embedded Workbench for Renesas RH850中打开生成的工程,配置对应的芯片:

添加RH850/U2A Starter Kit Sample Code示例工程中的启动代码cstartup4_g4.s以及对应的iodefine.h、low_level_init_pe0.c、main_pe0.c、main_pe1.c、main_pe2.c和main_pe3.c到工程中,并做对应的修改,编译工程:

Debugger > Driver中选择E2:

Emulator > Hardware Setup... > Pin mask中的TRESET和RESET不要勾选:

下载调试,正常来说程序会成功下载到目标系统,然后停在main函数入口:

使用AUTOSAR RH850/U2A MCAL v22.01.00 Software

通常来说RH850/U2A的开发需要使用AUTOSAR, 那么就需要基于对应MCAL进行开发。

这里只介绍AUTOSAR MCAL中相关的启动代码的集成,更多关于AUTOSAR的配置需要咨询对应AUTOSAR厂商。

对应IAR的启动代码源文件,头文件和链接脚本icf文件分别位于AUTOSAR_RH850_U2Ax_MCAL_Ver22.01.00下面的\X2x\U2Ax\common_family\src\iar,\X2x\U2Ax\common_family\include\iar和\X2x\U2Ax\common_family\make\iar目录下面。

对于U2A16来说,需要定义MAX_PE3(表示4个PE):

对应PE0_USED、PE1_USED、PE2_USED、PE3_USED需要根据是否使用对应的PE进行定义:

程序入口函数需要配置为coldreset.s里面的_RESET:

配置好对应的选项之后,编译工程,正常来说会成功编译:

下载调试,正常来说程序会成功下载到目标系统,然后停在main函数入口:

03.注意事项

在IAR Embedded Workbench for Renesas RH850中开发和调试Renesas RH850 MCU中的ICUM需要联系Renesas提供对应ICUM的支持文件(需要签署NDA)。

当前在IAR Embedded Workbench for Renesas RH850中开发和调试Renesas RH850 MCU,需要使用Renesas Flash Programmer下载Renesas RH850中的选项字节(Option Byte)。

本文以RH850/U2A为例介绍如何在IAR Embedded Workbench for Renesas RH850中开发和调试Renesas RH850 MCU。

相关推荐
硬汉嵌入式15 小时前
MDK AC5,AC6,GCC以及IAR在const局部变量存储位置的异同
gcc·const·iar·ac6·mdk·ac5
北京迅为16 小时前
【北京迅为】iTOP-4412精英版使用手册-第七十八章 Qt界面切换
linux·人工智能·嵌入式·4412
大聪明-PLUS17 小时前
关于 systemd 和桌面应用程序自动启动
linux·嵌入式·arm·smarc
Channon_19 小时前
专题四:内存战场的无声战役——压缩、共享与空间复用
缓存·嵌入式·空间复用
大聪明-PLUS20 小时前
了解 Linux 系统中用于流量管理的 libnl 库
linux·嵌入式·arm·smarc
大聪明-PLUS1 天前
使用 Shell 脚本生成配置文件的 6 种方法
linux·嵌入式·arm·smarc
大聪明-PLUS1 天前
Linux 下的 C 语言编程:创建命令行 shell:第二部分
linux·嵌入式·arm·smarc
大聪明-PLUS1 天前
在 Linux 6.8 中创建自定义系统调用
linux·嵌入式·arm·smarc
大聪明-PLUS1 天前
使用 Linux 命令轻松构建数据库
linux·嵌入式·arm·smarc
大聪明-PLUS1 天前
如何编写你的第一个 Linux 内核模块
linux·嵌入式·arm·smarc