在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。

相关推荐
bush422 分钟前
嵌入式linux学习记录十四、术语
linux·嵌入式
国产化创客2 小时前
ESP32 CameraWebServer 原生摄像头项目全解析
物联网·开源·嵌入式·实时音视频·智能硬件
goldenrolan5 小时前
学习型红外控制系统稳定性挂测工装专项总结
软件测试·python·stm32·嵌入式·红外
w4ysonch8 小时前
我手搓了一套适用于任何嵌入式项目的跨线程通信API
嵌入式
海砥装备HardAus8 小时前
大载重工业无人机动力容错控制:单电机失效下的应急重构算法设计
算法·重构·嵌入式·无人机
济6179 小时前
BMS系统专栏:电池状态监控任务
嵌入式硬件·嵌入式·bms电池系统管理
济6179 小时前
BMS系统专栏: BMS_ProtectTask 电池保护任务
嵌入式硬件·嵌入式·bms电池管理
番茄灭世神1 天前
RTC授时时间戳转换工具
c语言·单片机·嵌入式
charlie1145141911 天前
嵌入式Linux驱动开发——从轮询到中断
linux·开发语言·驱动开发·嵌入式
2023自学中1 天前
imx6ull开发板,sd卡启动运行linux,手动给开发板的 emmc 做分区、烧系统
linux·嵌入式·开发板