【经验】如何基于IAR IDE制作智芯的flash_drive_image
在汽车产品应用中,进行OTA升级,大多数车厂都会要求在boot及app程序中不能包含flash的操作函数,主要原因是为避免出现故障,导致对flash进行了误操作。故,若要对App升级时,需要将flash操作的代码通过CAN、LIN等方式,临时写入到RAM的指定地址,然后实现临时对flash擦写的功能(简称flash_driver_image),本文以IAR的IDE为例,说明如何制作智芯的MCU的flash_driver_image。
一、确定接口函数
在对App升级,flash操作主要包括三个部分,验证、擦除、写入。众所周知,如果对未擦除的flash进行写入操作,会出现ECC错误,故验证一个flash是否擦除成功是非常重要的;其次对flash的擦除和写入的接口函数也是必要的。
综上,本文设置了三个对外的接口函数,如下,
1、FLASH_VerifyPhrase用于验证一个flash phrase是否擦除成功;
2、FLASH_EraseSector用于擦除一个flash sector;
3、FLASH_Program对flash memory写入操作。
二、设计flash driver image结构
由于需要将前述的三个对外接口函数放在RAM中,需要指定放在RAM哪个部分,通过查阅智芯MCU的数据手册,可以得出,智芯MCU无论是Z20K11x系列还是Z20K14x系列,在0x20000000地址上都是RAM区域,故本文按照如下图一所示结构,将flash操作函数数组给定在0x20000000地址上。
图1 flash driver image结构
三、修改.icf链接文件
1、创建一个.funcvect段和.validflag段
在链接脚本文件中创建.funcvect段和.validflag段,其中.funcvect段的起始地址为0x20000000,用于存放三个flash操作函数的地址,其后分别存放对三个flash操作函数的实现,故其也是存放在RAM0区域中;.validflag段放在RAM0区域中,用于存放App代码是否是有效标志。如图二所示。
图2 修改.icf链接文件
四、编写flash 操作函数的实现
分别对三个flash 操作函数进行实现,然后定义func_vect[]数组,将其放在.funcvect段中。再将常量valid_flag定义进.validflag段内。分别如图三、图四所示。
图3 三个flash 操作函数的实现
图4 将函数数组变量和常量定义在指定段内
五、配置IAR编译环境
1、在链接配置中,选择No entry symbol,用于不设置入口符号_iar_program_start,即屏蔽掉main函数。如图5所示。
图5 入口符号相关配置
2、配置生成可执行文件
通过在output中选择生成.srec文件,用于可以编译生成srec文件。如图6所示。
图6 配置生成文件格式
六、检查
通过查看编译完成的.map文件,可以查看在0x20000000~0x20000400地址空间中是否是定义的函数和变量。如图7所示。
图7 map文件
七、调试
1、查看变量窗口
通过调试工程同样可以查看func_vect数组的地址为0x20000000,FLASH_EraseSector的函数入口为0x2000033A; FLASH_Program的函数入口为0x200002D8;FLASH_VerifyPhrase的函数入口为0x200002A0;valid_flag地址为0x200003FC。如图8所示。
图8 调试变量窗口
2、查看memory地址
打开Memory窗口查看0x20000000地址内容,如图9所示,在地址0x20000000~0x20000003中存放的数据是FLASH_EraseSector的函数入口地址;地址0x20000004~0x20000007中存放的数据是FLASH_Program的函数入口地址;地址0x20000008~0x2000000B中存放的数据是FLASH_VerifyPhrase的函数入口地址。需要注意的是,此处在内存地址中最低位为1表示此时运行在thumb指令集状态,并不是和上述查看变量窗口分析的不匹配。如图9所示。
图9 查看memory地址
3、和生成文件对比
同理,我们可以调试打开memory窗口,从0x20000000处查看内存值和编译生成的.srec文件对比,如图10(a)、(b)所示。可以看出没有任何不同。同时从图10(b)中可以看出flash driver代码的大小为920B,valid_flag大小为4B。
图10(a) 查看memory地址内容
图10(b) 查看生成文件内容
至此,完成了对flash driver image的制作。
Z20K11x系列MCU:
Z20K118MCMHLT,Z20K118MCMFLT,Z20K118MCMMET,Z20K116MCMHLT,Z20K116MCMFLT,Z20K116MCMMET,Z20K114MCMFLT,Z20K114MCMMET
Z20K14x系列MCU:
Z20K148MCMQLT,Z20K148MCMLLT,Z20K148MCMHLT,Z20K146MCMQLT,Z20K146MCMLLT,Z20K146MCMHLT,Z20K144MCMLLT,Z20K144MCMHLT
- |
- +1 赞 0
- 收藏
- 评论 0
本文由软饭硬吃提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
Sekorm Studio在智芯MCU新建工程使用
目前主流的IDE,如IAR、KEIL等开发工具,均是收费产品,世强基于eclipse框架和GCC交叉编译工具链,设计出sekorm studio完全免费的集成化开发工具,世强鼓励客户使用本工具进行研发。本文基于此作为前提,就如何使用sekorm studio构建智芯MCU的工程进行描述。
【经验】如何配置MCU Z20K148M的Clock常用函数?
Z20K148M 为单核 Cortex M4F 处理器,NVIC模块与处理器核心紧密集成以实现低延迟中断处理。本文分享如何配置MCU Z20K148M的Clock常用函数?
【经验】瑞萨RH850 F1K与RH850 F1L MCU的资源差异及平台迁移的注意事项
随着汽车产品需求越来越复杂,功能也越来越多,有时候就需要对现有产品进行迭代升级,对主控MCU也有了更多要求,为了方便用户对产品的升级,减少用户工作量,瑞萨根据相应需求每个系列推出了多款产品,各款产品间差异较小,这大大减少了用户在做平台迁移时的工作量。本文将主要对F1x系列中RH850 F1K和RH850 F1K的资源差异以及平台迁移时的注意事项做出介绍。
【产品】智芯半导体Z20K114M基于Arm Cortex M0+的增强型微控制器正式量产,满足功能安全ASIL-B
智芯半导体继2021年和2022年先后推出Z20K118M和Z20K116M后,在今年推出Z20K114M系列产品。Z20K114M为基于Arm Cortex M0+的增强型微控制器,符合AEC-Q100 Grade1 (–40 °C to 125 °C)规范,满足功能安全ASIL-B,主要面向汽车车身电子、传感器、执行器等应用领域,如:倒车雷达控制器,开关面板,灯光控制,车窗控制等。
Z20K11XMC数据表
描述- 本资料为Zhixin Semiconductor公司生产的Z20K11xMC系列微控制器的数据手册。手册详细介绍了该系列微控制器的特性、电气特性、I/O参数、外设操作要求与行为、热特性、封装信息等。该系列微控制器具备AEC-Q100 Grade-1认证,适用于汽车电子等领域。
型号- Z20K11XMC SERIES,Z20K116MCMFL,Z20K116MCMHL,Z20K118MCCFL,Z20K118MCCHL,Z20K118MCMFLT,Z20K116MCMMET,Z20K118MCMHLT,Z20K118MCMHL,Z20K116MCMHLT,Z20K114MCMME,Z20K114MCMMETF,Z20K118MCMMET,Z20K116MCMFLT,Z20K118MCMFL,Z20K114MCMFLT,Z20K116MC,Z20K11XMC,Z20K118MC,Z20K118MCMMETF,Z20K116MCMMETF,Z20K114MCMFL,Z20K114M,Z20K116MCMHLTF,Z20K118MCMFLTF,Z20K116MCMME,Z20K118MCMHLTF,Z20K116MCMFLTF,Z20K114MCMFLTF,Z20K114MCMMET
智芯半导体企业介绍
描述- 智芯半导体,成立于2019年,是中国规模最大的汽车芯片设计公司,提供高可靠性汽车电子芯片。公司严格把控汽车芯片全生命周期,涵盖设计、软件、功能安全、质量等环节,满足ISO26262和AEC-Q100标准。产品覆盖车身电子、新能源汽车控制、动力系统、自动驾驶等,包括Z20K11XMC、Z20K14XMC等系列MCU。智芯提供全面的技术支持,包括工具链、软件、算法库等,致力于解决客户痛点。
型号- Z20K11XMC,Z20A8300AMPET,Z20K11XN,Z20K14X,Z20K356,Z20K312,Z20K116MCMMET,Z20K118,Z20K146MCMHLT,Z20A8300A,Z20K118NCVLLT,Z20K146MCMLLT,Z20A148M,Z20K116MCMHLT,Z20K118NCVFLT,Z20K3XX系列,Z20K116MCMFLT,Z20K118NCVHLT,Z20K14XMS 系列,Z20K144MCMLLT,Z20K118M,Z20K14XM,Z20K144MCMHLT,Z20K148MCMQLT,Z20K144MSMLLT,Z20K144MSMFLT,S32K142,Z20K144MSMHLT,Z20K14XM系列,Z20E356,Z20K142MSMMET,Z20K148MCMLLT,Z20K118MCMFLT,Z20K118MCMHLT,Z20K11X,S32K118,Z20K14XMS,Z20K11XM系列,Z20K14X 系列,Z30P4XX,Z20K114MCMFLT,Z20K14XMC 系列,Z20K14XMC,Z20K148,Z20K11XM,Z20K344,Z20K146MCMQLT,Z20K148M,Z20K3XX,Z20K116NCVLLT,Z20K116NCVFLT,Z20K116NCVHLT,Z20K11XMC 系列,Z20K142MSMFLT,Z20K142MSMHLT,Z20K11XN 系列,Z20A8300AMFKT,Z20K142MSMLLT,Z20K114MCMMET
实现车规“芯”业绩突破,世强先进荣膺智芯科技2023优秀代理商奖
凭借优异的推新能力及研发创新技术服务,世强先进获智芯科技颁发2023年度优秀代理商奖。
Z20K118MCMHLT/Z20K116MCMHLT PCN(PCN-00000026)
描述- 合肥智芯半导体有限公司发布产品变更通知,宣布将Z20K118MCMHLT/Z20K116MCMHLT产品迭代为Z20K118MCMHLTF/Z20K116MCMHLTF,封装厂由长电科技转移至通富通科。变更包括maskset升级、性能优化、封装材料变更等,不影响产品形状、尺寸、功能、品质和可靠性。预计变更于2025年5月22日生效。
型号- Z20K116MCMHLTF,Z20K118MCMHLTF,Z20K116MCMHLT,Z20K118MCMHLT
ZHIXIN(智芯)MCU选型表
ZHIXIN提供以下技术参数的MCU选型:主频64~160MHz,RAM8~256KB,GPIO26~125
产品型号
|
品类
|
内核
|
主频(MHz)
|
P-Flash(KB)
|
D-Flash(KB)
|
RAM(KB)
|
CAN-FD
|
UART
LIN
|
SPI
|
IIC
|
IIS
|
SENT
|
定时器
|
电机控制PWM
|
ADC
|
比较器
|
GPIO
|
工作环境温度(℃)
|
封装
|
信息安全
|
功能安全
|
Z20K148MCMQLT
|
MCU
|
M4F
|
160MHz
|
2048KB
|
128KB
|
256KB
|
8
|
6
|
4
|
2
|
2
|
0
|
16b,4x8-ch
|
2x8ch
|
12b,2x20ch
|
1x13
|
125
|
-40℃~125℃
|
LQFP144
|
AES128,TRNG
|
ASIL-B
|
选型表 - ZHIXIN 立即选型
【应用】智芯半导体汽车电子水泵方案支持12V和24V,单电阻采样可节省硬件设计资源,优化成本
搭载Z20K116和Z20A8300芯片,智芯电子水泵产品拥有强大稳定性能,目前已进入应用测试阶段,智芯团队同时也会根据客户需求,提供软硬件开发在内的全方位支持服务。
Z20K118MCMHLT/Z20K116MCMHLT PCN(PCN-00000028)
描述- 合肥智芯半导体有限公司发布PCN(产品变更通知),宣布其产品Z20K118MCMHLT/Z20K116MCMHLT将升级为Z20K118MCMHLTF/Z20K116MCMHLTF,封装厂由长电科技转移至通富通科。原产品将在库存用尽后停产。变更涉及性能优化和供应链稳定,对形状、尺寸、功能、品质、可靠性无影响,预计2025年5月22日生效。
型号- Z20K116MCMHLTF,Z20K118MCMHLTF,Z20K116MCMHLT,Z20K118MCMHLT
【IC】智芯推出中国首款基于中芯国际40nm车规工艺的MCU Z20K11xN系列,总线主频达64MHz
继2021和2022年先后量产车规MCU齐云系列Z20K11xM,天柱系列Z20K14xM后,在今年正式推出中国第一款基于车规40nm全车规国产化供应链Z20K11xN系列产品。Z20K11xN为中国首款基于中芯国际(SMIC)车规40nm的Cortex M0+的增强型微控制器,Z20K11xN产品系列按照基于功能安全ASIL-D硬件设计和软件研发流程开发,符合AEC-Q100 规范。
智芯Z20K144MCMLL车规MCU搭载某国内知名车厂组合仪表成功量产
ZHIXIN在汽车电子领域的最新成就引人注目,其车规MCU Z20K144MCMLL芯片成功应用于某知名Tier 1组合仪表平台,并于今年6月和9月进行量产。这款芯片在组合仪表平台上扮演着电源管理和网络管理等关键角色。
Z20K118MCMET/Z20K116MCMET/Z20K114MCMET PCN(PCN-00000027)
描述- 合肥智芯半导体有限公司发布产品变更通知,宣布将Z20K118MCMMET、Z20K116MCMMET和Z20K114MCMMET产品迭代为Z20K118MCMMETF、Z20K116MCMMETF和Z20K114MCMMETF,基于maskset升级。原产品将在库存用尽后停产。变更涉及性能优化,包括减少上电时间、优化ADC通道过压性能和慢上电模式下的LVD性能。预计变更将于2025年5月22日生效。
型号- Z20K118MCMMETF,Z20K116MCMMETF,Z20K114MCMMETF,Z20K118MCMMET,Z20K116MCMMET,Z20K114MCMMET
电子商城
现货市场
登录 | 立即注册
提交评论