文章目录
KEA系列使用注意事项
KEA系列单片机推出来已经有很长时间了,由于其成本低,在一些不需要复杂控制的汽车电子应用场合非常合适。近期有好几个客户在使用KEA系列芯片时都遇到了一些问题,简单总结下分享给大家。
1.上电时序问题
1.1问题描述:
某车灯客户在转向灯项目上使用S9KEAZN8AMTG进行流水效果的控制,实车测试时发现有时转向灯无法点亮。经过测量发现,当发生异常情况时,VDD引脚正常拉高,而RESET_b引脚一直低电平(该客户RESET_b引脚未接上拉电阻),如下图所示(VDD为绿色线,RESET_b为橙色线):
1.2问题分析:
KEA8的芯片数据手册有一个Tramp数值,表示的该MCU推荐的上电斜率,如下图:
测量异常发生时的VDD波形的斜率(不要用带软起动的电源,最好接蓄电池),在90V/ms左右,超过了数据手册的最大值,引起单片机无法正常复位。
1.3解决措施:
让客户在VDD端并联一个4.7uf电容,同时测量芯片的上电斜率大约在50v/ms左右,实车测试,之前异常的现象不复现。如下是KEAdemo原理图,可以看到在VDD输入端相比于LDO的推荐原理图多并联了一个4.7uf电容,应该也是基于上电斜率的考虑。
- Tips:4.7uf的容值只是一个推荐值,最终要结合LDO应用电路图以及实际测试效果进行调整。
2.NMI引脚注意事项
2.1问题描述:
客户某个真空泵控制器项目的主控为S9KEAZN8AMTG,第一版样机可以正常调试MCU,后面为了降低功耗,将未使用的GPIO引脚加下拉电阻,发现更改后的样机无法下载程序。
2.2问题分析:
KEA系列的PTB4引脚默认是NMI_b,如下图所示:
如果将这个引脚拉低,就会使得MCU进入不可屏蔽中断,如下图所示:
2.3解决措施:
虽然PTB4为NMI功能时内部带上拉,但只是弱上拉,建议PTB4引脚外部接一个4.7K的上拉电阻。同时,如果用不到NMI功能,也可以通过设置SIM_SOPT寄存器的NMIE为0关闭NMI功能,如下图所示:
- Tips:因为芯片POR时PTB4默认为NMI功能,只有跳入main函数时才可以通过操作寄存器修改PTB4引脚的功能,所以在程序执行关闭NMI功能之前,PTB4引脚不能拉低。
3.Flash保护注意事项
3.1问题描述:
客户的空调产品在做完盐雾实验之后无法正常工作,使用j-link读取主控S9KEAZ128AMLH的内部程序,对比烧录文件发现程序丢失了一部分。
3.2问题分析:
KEA芯片有flash保护功能,如果芯片应用环境比较恶劣,推荐客户使用flash保护功能
3.3解决措施:
1.阅参考手册的flash保护相关部分,有说到:复位时,FPROT寄存器会加载flash configuration区域的全局地址为0x40D的字节。如下图所示:
2.flash configuration区域的数据默认为0xFF,可以在启动汇编文件看到,如下图所示:
3.关于flash configuration区域的地址范围以及各自的作用可以参考链接文件和参考手册,如下图所示:
4.对照参考书册的表格(如下图),按需求设置寄存器相应bit的值,然后将这个值填入到启动文件的flash configuration区域0x40D处。稍后也可以通过查看编译生成的烧录文件查看0x40D地址的数据确认是否正确设置。
5.将程序烧录进去之后,通过j-link读取/擦除受保护的扇区区域会提示失败,说明flash保护完成了。
- Tips:如果想要flash被保护的MCU恢复正常,需要使用j-link进行解锁。
4.芯片解锁
4.1问题描述:
客户在使用j-link调试KEA系列或者S32K系列时有时会发生仿真器突然连不上的情况,断电重启之后还是一样的情况,只能无奈的换个芯片。
4.2问题分析:
发生这种情况一般都是MCU锁住了,即lockup,导致芯片lockup的原因有很多,主要是以下四种原因:
1. 市面上的盗版Jlink大部分都省略了一部分电路,导致MCU供电部分异常,电压不稳地或者供电电流不足;
2. MCU的I/O引脚外部电路先于MCU VDD上电,且I/O引脚电平超出其允许的工作电压范围,导致MCU复位失败;
3. MCU的GND和VSS/REFL引脚悬空,MCU供电异常;
4. 对MCU内部的flash进行了保护设置。
4.3解决措施:
对于这种问题,推荐两种方法:
1. 使用正版的j-link或者u-multilink进行调试;
2. 打开J-link commander,输入connect,然后按照提示输入芯片型号(参照J-flash中的型号),接着选择调试接口和速度,最后输入unlock kinetis,解锁成功后会有提示。
- Tips:如果无法解锁成功,请将MCU的reset引脚和j-link的reset引脚相连再进行解锁操作。