问题现象
在使用jflash 给新的NXP s32k118烧写程序的时候,会弹出如下的提示,导致不能烧写: 查过相关的资料,这个的原因是,nxp的MCU会在flash的0x400开始,设置16个字节的校验码,这个和MCU中的寄存器一一对应。而新片子的flash中,因为都是默认的0xFF,所以不行。
从网上搜索的关于s32k芯片解锁的方法,有的提到使用 j commander这个软件进行解锁(输入unlock kitnets)。但经过实测之后,发现在提示程序的情况下,也不好用(不知道官方的j-link能不能成功解锁)。所以还得老老实实的用s32ds调试一次,就解锁了。至于所用的仿真器,无所谓,可以直接用j-link就行。
所需要的软件:
S32 Design Studio for Arm Version 2018.R1
步骤如下:
-
安装S32DS,(如已安装,请忽略步骤1~2)安装时需要的license,activation code 可自行在nxp的官网申请。免费的。 -
安装升级包,如下所示: -
安装成功后,选择新建一个示例工程。
过程比较慢,需要等待一下,之后会弹出对话框,如下图所示。选择一个s32K118的示例工程,比如下图所示的”hello_world_s32k118”,之后点击finish。
- 之后会在project Explorer中出现该工程
之后在此文件名右键,
5、弹出调试器的配置项,按照如下图所示顺序进行配置: 6、执行上图所示的步骤④后,该程序将自动编译和下载,请在此之前确保正确用j-link连接电脑和样机,并且样机正常供电。在程序下载完成后,如下图所示的红框内的图标将会显示其本来的颜色。此时程序已经正常下载进去了。之后点击红色的方块断开连接即可
7、完成以上步骤后,MCU的flash就完成解锁了。之后就可用j flash软件进行烧写程序了。 解锁完成一个样机后,再解锁其他样机,可直接点击下图所示的 小虫 图标即可。就不用重新执行步骤3~6了。
注: 1、如果上述不成功,可以从第3步重新开始,新建一个其他类型的工程,比如选择 csec_flash_part_s32k118进行尝试。
总结:上述流程真的是傻瓜操作。。仅仅适用于平时没做过NXP的MCU的软件开发、没用过s32ds的同学使用。毕竟如果是MCU开发,那指定是先用s32DS,也就不存在这个问题了。
对了,声明一下,该文章是我原创,但是用到了nxp的产品,所以有侵权,还请及时通知,我随时删除,感谢
|