基于PE环境搭建及调试S32K312

张开发
2026/5/17 17:31:49 15 分钟阅读
基于PE环境搭建及调试S32K312
0、简介本文基于S32K312 介绍PE的使用流程主要是记录开发流程MCUNXP S32k312-100pin编辑器S32 Design Studio for S32 Platform 3.5仿真器PE USB Multilink Universal REV-EPE和jlink不一样使用debug的时候就会擦flash所以调试app的时候要对boot做保护可以同时存在需要烧boot的时候勾掉保护单烧app的时候勾选保护1、硬件连接在用户使用手册中可以查找到支持ARM的端口在本项目选择port B手册中出现了这么一句话The USB Multilink Universal and Universal FX interfaces will work with targets whose processor power supply is in the range of1.8V to 5V.所以我们需要把multilink的TVCC接到S32K312开发板的3.3V如不接就会导致下载失败。(对比Jlink时是可以不接的)。2、上电流程连接USB后蓝灯亮起。如匹配供电接线正确multilink的右上角的小黄灯会亮起。3、Erase Program ReadPE相关的上位机需要购买。在本项目中我无需单独烧录/擦除。https://www.pemicro.com/products/product_viewDetails.cfm?product_id15320181productTab50534、Debug配置项目已经安装AB_Swap的HSE。因为HSE的内存段受到保护故此时JLINK/JFLASH已无法通过常规手段擦写FLASH。回顾HSE保护的区域因为我没有手段ERASE Flash。故需要将Boot和App一同写入芯片。PE在Program之前会依照所选策略Erase未被保护的内存。这里我将ABOOT和AAPP同时烧写进S32K312。同理ABOOT、ABOOT和AAPP同时烧写进S32K312。(图中所示)同理ABOOT、ABOOT和AAPP、BAPP同时烧写进S32K312。(图中所示)选择需要下载的芯片通过硬件易知我使用的SWD接口。下载策略根据是否安装hse做区分S32K3 内嵌 HSE_B 硬件安全加密模块安全加密等级支持到 ISO21434。芯片出厂默认是没有装 HSE FW 的FW 的安装需要客户自己完成。NXP 提供两种类型的HSE_FW分别是 HSE_FULL_MEM 和 HSE_AB_SWAP。前者是不支持 OTA 的而后者是支持硬件 OTA 的。安装了HSE_FW后Secure Flash对应的区域会被Lock住编程器是不能对这些区域进行檫除编程操作的。S32DS PE提供了三种编程算法分别针对没有安装HSE_FW安装了HSE_FULL_MEM FW及装了HSE_AB_SWP FW的情况。调试软件时要跟具FW的安装情况选择对应的.arp.没有安装HSE FW要选择hse_disabled.arp安装了full_mem的固件要选择hse_enabled.arp安装了ab_swap的固件要选择ab_swap.arp.编程算法选择不正确会报flash檫除失败错误。同时我对AB分区的BOOT做了保护。对EEPROM区做了保护。需要注意的是易知保护的区域如果和烧写文件的地址重叠会有问题这里我没有尝试建议烧写过boot之后再勾选保护。5、Debug6、注意点1、PE的DEBUG是会Erase PFlash和DFlash的。这是和JLink不同的地方。故需要保护Boot。2、勾选保护的区域如果和烧写文件的地址重叠会有问题这里我没有尝试。建议烧写过boot之后每次调试APP勾选保护。图省事就不勾选保护每次烧写的时候都重新烧boot。3、pe是从app起始地址开始仿真但是0x00400000处如果没有bootreset按键是没法用的会跑飞。4、和lauterbach一样PE调试器会在出现exception时进行catch这在SAF/SCST的错误注入时会进入断点建议去掉。5、PE可以进行attach操作但是全速跑没办法调试初始化除非通过改变量在main中设置断点个人没启用volatileuint8_ttest_debug0;while(0test_debug){};test_debug0;

更多文章