【经验】以汽车级32bit MCU RH850为例说明如何配置自编程库FCL实现bootloader

2020-05-20 世强
汽车级32bit MCU,RH850,Renesas 汽车级32bit MCU,RH850,Renesas 汽车级32bit MCU,RH850,Renesas 汽车级32bit MCU,RH850,Renesas

Bootloader又称引导加载程序,它是系统加电后运行的第一段软件代码,可以实现用户程序的引导启动和固件自更新两个功能。其中固件自更新需要向芯片提供额外的数据传输介质使得芯片能将接收到的机器代码写入自身的Flash中。一般写flash都是通过仿真器或专用的编程器,而当产品完成交付使用过程中,通过仿真器或编程器进行程序重新刷写是不现实的事情,所以,通过通信接口进行用户程序的维护和功能升级则被广泛的应用于现在的电子产品单元中,汽车电子也不例外。


由于汽车电子所采用的是CAN通讯,所以后期应用程序的维护和升级通过CAN接口来实现,那么MCU如何通过CAN来实现更新呢?以瑞萨电子汽车级32bit MCU RH850为例,提供一个FCL库用于bootlaoder中对flash擦除,编程和校验等操作,采用CAN 总线作为Bootloader的通信介质,基于CAN 总线的Bootloader需要在CAN 协议的基础上完成数据传输和命令执行的协议,就可以实现产品的功能升级。


FCL如何嵌入并应用到程序中呢?以下我们就来了解下基于瑞萨电子的集成环境CS+如何加载配置FCL库以实现bootloader。

首先选择FCL的工作模式,如下:

R_FCL_COMMAND_EXECUTION_MODE

  • R_FCL_HANDLER_CALL_INTERNAL (internal mode) :internal模式不需要轮询库的状态,在自编程命令执行期间没有状态值的返回,直到命令执行结束。消耗RAM空间小。

  • R_FCL_HANDLER_CALL_USER (user mode): user模式,用户代码运行在RAM区,在自编程命令执行期间,可以运行用户代码,用户可以轮询库的运行状态。需要消耗一定的RAM空间。


用户可以根据实际应用,定义库支持的功能,以减少库的代码量。

其次,配置FCL库基础的参数,以保证与用户硬件一致,如下:

图一,FCL参数配置


  • FCL_CPU_FREQUENCY_MHZ:CPU工作频率配置,请不要在库的运行期间改变CPU的工作频率,如果需要改变,改完后必须重新初始化FCL库。

  • FCL_AUTHENTICATION_ID:如果设备设置了ID验证码,需要提供相应的ID码,在FCL初始阶段需要验证ID,如果ID验证不通过,不能成功执行FCL命令。

  • FCL_RAM_ADDRESS:根据相应的设备配置RAM起始。


然后,在编译环境的section中进行FCL的段配置,如下:

图二,FCL段设置


如上图,

1. FCL库的代码段请按照如图样例设置。在这些代码段中请不要插入其他段。

2. FCL_RESERVED.bss段: 在RAM中存放FCL库运行的代码,即复制上面代码段的内容到此RAM中。如果定义了R_FCL_HANDLER_CALL_USER,则用户代码R_FCL_CODE_USER.text也此RAM中运行。


在实际应用中定义FCL_RESERVED预留的大小,大小必须包含该库代码量和用户代码量(如果定义了R_FCL_HANDLER_CALL_USER )。

/* This array reserves the copy area in the device RAM */

#define FCL_RAM_EXECUTION_AREA_SIZE 0x8000

R_FCL_NOINIT uint8_t FCL_Copy_area[FCL_RAM_EXECUTION_AREA_SIZE];


3. R_FCL_DATA.bss:FCL内部运行数据段。

如此以上,编译后即可使用FCL库进行bootloader的底层操作。


最后,友情提示:

在CS+环境下,FCL编译后会出现3个对齐失配警告,请忽略。

W0561322:Section alignment mismatch : "R_FCL_CODE_USR.text"

W0561322:Section alignment mismatch : "R_FCL_CODE_RAM.text"

W0561322:Section alignment mismatch : "R_FCL_CODE_ROMRAM.text

技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:开云手机入口平台www.deyec.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:开云手机入口平台电子商城www.deyec.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:开云手机入口平台www.deyec.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:开云手机入口平台www.deyec.com
  • +1 赞 0
  • 收藏
  • 评论 5

本文由落叶萧萧提供,版权归开云手机入口平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:开云手机入口平台”。

平台合作

评论

   |   

提交评论

全部评论(5

  • 用户33922725 Lv2 工程师 2022-03-10
    请问一下,FCL库在RAM中运行的部分可以单独拿出来吗?就是让程序每次编译时只编译FCL库在Flash中运行的部分,在RAM中运行程序每次升级之前作为数据包接收过来放到RAM中和之前编译到Flash中的程序配合运行,可以这样吗?或者是否可以将整个FCL库拿出来,每次进行升级时,MCU再接收FCL库数据整体放到RAM中运行,期待回复,感谢!
    • Park回复: 你好,经了解FCL可以单独拿出来,可以参考以下文章介绍:【经验】以MCU RH850/F1x为例介绍如何将CODE定义到RAM中/news/30577020.html,可以单独把驱动编译出来保留使用。

      查看全部1条回复

  • 用户33922725 Lv2 工程师 2022-03-10
    一个项目中使用的瑞萨RH850芯片,在开发BootLoader时,因为考虑升级程序的可靠性,现在想将Flash Driver(FCL库)不固定到Flash中,想将Flash Driver(FCL库)数据包在每次升级程序之前单独传过来放到RAM中,请问一下,FCL库在RAM中运行的部分可以单独拿出来吗?就是让程序每次编译时只编译FCL库在Flash中运行的部分,在RAM中运行程序每次升级之前作为数据包接收过来放到RAM中和之前编译到Flash中的程序配合运行,可以这样吗?或者是否可以将整个FCL库拿出来,每次进行升级时,MCU再接收FCL库数据整体放到RAM中运行?
    • 用户21008489_世强回复: 先选择FCL工作模式,配置FCL库的基础参数,根据芯片型号设置RAM的起始地址,然后在section中的FCL_RESERVED.bss段为在RAM中存放FCL库运行的代码,即复制上面代码段的内容到此RAM中。如果定义了R_FCL_HANDLER_CALL_USER,则用户代码R_FCL_CODE_USER.text也在此RAM中运行。瑞萨FCL自编程库提供了很多接口函数,需要结合实际应用掉用不同接口函数。

      查看全部1条回复

  • 这一生关于你的风景 Lv3 高级工程师 2020-08-11
    请问如果RH850要BootLoader通过CAN实现软件升级,如果又要保存数据到DataFlash,FCL库和FDL库可以一起用吗 提问来源:/news/32243486.html
    • VincenLiu_世强回复: 可以的,你可以参考FCL,将FDL相关代码放到对应代码段,操作时会拷贝到RAM运行。

      查看全部4条回复

  • 用户33922725 Lv2. 工程师 2022-03-10
    请问一下,FCL库在RAM中运行的部分可以单独拿出来吗?就是让程序每次编译时只编译FCL库在Flash中运行的部分,在RAM中运行程序每次升级之前作为数据包接收过来放到RAM中和之前编译到Flash中的程序配合运行,可以这样吗?或者是否可以将整个FCL库拿出来,每次进行升级时,MCU再接收FCL库数据整体放到RAM中运行,期待回复,感谢!
  • 这一生关于你的风景 Lv3. 高级工程师 2020-08-11
    请问如果RH850要BootLoader通过CAN实现软件升级,如果又要保存数据到DataFlash,FCL库和FDL库可以一起用吗
没有更多评论了

相关推荐

【经验】关于瑞萨CS+编译器debug查看变量值的技巧

我们在使用瑞萨的CS+编译器开发RH850的MCU时,在调试的过程中,往往需要查看变量值的变化。这时候,我们需要将该变量添加到debug的watch1窗口当中,但是如果通过打断点的方式,将程序停在哪里,再去观察变量值,会发现变量值是不太准的。

2023-02-26 -  设计经验

【经验】以RH850/F1KM为例解析使用E2进行仿真调试编程的电路连接应用

Renesas E2是瑞萨新一代推出的用于支持MCU的片上调试仿真器和闪存编程器,是上一代瑞萨E1高度器的升级版调试器。本文以瑞萨电子32bit汽车级MCU RH850/F1KM为例,描述使用E2进行仿真调试编程的电路连接应用。

2021-10-13 -  设计经验

【经验】瑞萨MCU RH850系列开启信息加密单元ICU的方法

瑞萨MCU RH850系列具备智能加密单元ICU的功能,可以保护汽车零部件类项目产品中的软硬件系统免遭篡改和盗窃等行为,那么对于该系列MCU的ICU功能我们该怎么开启,下边介绍两个开启该加密单元的方法。

2022-12-04 -  设计经验

云途半导体与伊世智能双方建立生态合作伙伴关系,共同推进车载信息安全产品

为了更好地为汽车客户筑起安全防线,基于云途半导体32Bit车规级MCU芯片和伊世智能的HSM信息安全固件产品,双方针对车载控制器信息安全防护,整车信息安全纵深防御体系的最核心层,联合推出国产方案。

2024-04-13 -  原厂动态 代理服务 技术支持 采购服务

汽车级ECU智能芯片类型推荐?

世强代理瑞萨电子汽车级MCU产品有16bit和32bit,可满足车载各种ECU应用,详细的资源列表请参考:/news/73672924.html /doc/60520.html

2018-08-10 -  技术问答

云途半导体正式成为AUTOSAR开发合作伙伴,将共同推动AUTOSAR标准的推广及完善

2023年2月,苏州云途半导体有限公司与AUTOSAR组织签署了“开发合作伙伴协议“,正式成为AUTOSAR组织的开发合作伙伴。云途半导体将基于AUTOSAR生态,遵照AUTOSAR标准规范,持续开发车规级控制芯片,进一步为OEM和Tier1客户提供高质量、高可靠性的汽车芯片解决方案。

2024-05-26 -  原厂动态 代理服务 技术支持 采购服务

世强代理哪些汽车ECU器件?

世强代理瑞萨电子汽车级MCU产品有16bit和32bit,可满足车载各种ECU应用,详细的资源列表请参考:/news/73672924.html /doc/60520.html

2018-10-25 -  技术问答

在哪里可以下载瑞萨处理器RH850的FDL,FSL库文件

你好,已经安排上传到世强平台上,请通过搜索RH850 FCL关键词搜索。另也单独发到了您的邮箱。

2018-12-07 -  技术问答

RH850 D系列有没有开发板可以提供?

瑞萨有提供官方的开发板,不同于其他系列开发板。D系列的开发板有两个板组成,所有的外设都引出,外设板支持全部D系列的型号。核心板根据不同的芯片有不同的核心板型号。在选型时需要注意。具体可以向世强咨询相关事宜

2019-05-28 -  技术问答

请问瑞萨RH850的实际编译选项和链接选项在哪里能找到呢

具体资料查看CCRH手册,在CS+中更改如图所示

2023-08-30 -  技术问答

【经验】瑞萨RH850 MCU芯片如何实现从BOOT跳转到APP地址中执行?

本文介绍瑞萨RH850芯片如何实现从BOOT区域跳转到APP区域。

2021-07-01 -  设计经验

【经验】如何解决32位汽车微控制器RH850自带的ADC采集精度不准的问题?

某日接到某客户反馈问题,其在产品上面使用RENESAS RH850系列32位汽车微控制器自带的ADC时,发现数值不是很准确,比手册数值大,波动大致0.02V,但是ADC自诊断测试数值很准。

2023-06-20 -  设计经验

【经验】汽车级MCU RH850编程时如何设置ID码?

嵌入式程序设计时,为了保证不被破解或任意的修改,通常都采用ID加密的方式来进行单片机程序的保护。使用ID加密可以提高解密的难度,也是加密方式中最简单的一种方法。本文以瑞萨电子汽车级MCU RH850为例,介绍使用配套的开发工具E1和Renesas Flash Programming(以下简称RFP)来进行ID设置时,具体如何设置。

2019-11-20 -  设计经验

【经验】RH850 MCU内置的智能加密单元ICU,保护车辆ECU系统免遭篡改或盗窃损害

瑞萨电子RH850 MCU内置的智能加密单元ICU很好的解决了这些问题,将秘钥存储在单独的存储区域中,CPU无法直接访问,需要通过专用机制来增强实际的防篡改功能,支持高端的加密操作如RSA,ECC等;可以提供防止软件操纵,连接硬件和软件,安全启动,网络节点中ECU的验证等安全服务。

2020-02-11 -  设计经验

【经验】瑞萨RH850系列32位汽车微控制器缩短MCU上电初始化时间的方法

瑞萨RH850系列32位汽车微控制器(MCU)在各种可扩展的产品中提供高性能和极低的功耗。该系列提供新的和先进的汽车应用所需的丰富功能安全和嵌入式安全功能。

2023-05-08 -  设计经验
展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥11.9853

现货: 4,490

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥11.9853

现货: 91

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥15.5166

现货: 5

品牌:PMICRO

品类:MCU

价格:

现货: 10

品牌:极海半导体

品类:MCU

价格:¥12.1500

现货: 50

品牌:极海半导体

品类:MCU

价格:¥9.1800

现货: 2

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥8.9198

现货: 4,188

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥7.5258

现货: 2,503

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥7.7115

现货: 1,583

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥6.2247

现货: 1,500

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:RENESAS

品类:32-BIT GENERAL MCU

价格:¥257.6400

现货:48,719

品牌:RENESAS

品类:16-BIT MCU

价格:¥3.9530

现货:851,163

品牌:RENESAS

品类:Diodes

价格:¥0.0120

现货:292,500

品牌:RENESAS

品类:MOSFET

价格:¥1.7440

现货:263,268

品牌:RENESAS

品类:MOSFET

价格:¥0.4580

现货:222,500

品牌:RENESAS

品类:MCU

价格:¥5.1500

现货:200,000

品牌:RENESAS

品类:MOSFET

价格:¥1.4020

现货:196,984

品牌:RENESAS

品类:MOSFET

价格:¥0.2200

现货:155,504

品牌:RENESAS

品类:MOSFET

价格:¥0.1740

现货:121,731

品牌:RENESAS

品类:晶体管驱动器

价格:¥12.1593

现货:106,383

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

TFT LCD液晶显示屏/模组定制

可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。

最小起订量: 1000 提交需求>

车规级变压器定制

可定制变压器电压最高4.5KV,高频30MHz;支持平面变压器、平板变压器、OBC变压器、DCDC变压器、PLC信号变压器、3D电源、电流变压器、反激变压器、直流直流变压器、车载充电器变压器、门极驱动变压器等产品定制。

最小起订量: 100000 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

平台客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面