接触FREESCALE K60系列单片机也有好长一段时间了,记得2011年12月份的时候,当时正在做的项目是“注塑机控制器”的研发设计,正纠结于MCU的选型时,遇到了K60系列单片。曾清楚的记得,当时FREESCALE是市面上推出CORTEX M4核系列单片机最早的一家,想走在设计的前沿点,果断的选择了MK60FN1M0LQ15,于是开始了和FREESCALE的不解之缘,呵~现在正在设计的“智能电网控制器项目”也是用的MK60FN1M0LQ15主控芯片。 在设计的过程中,碰到了一些点滴的小问题,虽然都是很小的问题,但对于一款高可靠性的严谨的设计,还是值得注意的,分享一下。 1,Flexbus外部总线可选引脚没有配置成地址和数据线的其他引脚可以配置成其他功能,比如串口或者GPIO等。 同时,要注意使用Flexbus总线外扩SRAM时,地址线的连接需要考虑外部SRAM的数据位宽,X8 X16 X32位的情况MCU地址线和SRAM地址线的连接是不一样的。
2,Flash Security的设置,以IAR为例,请注意Vector.h里面的如下部分,调试阶段如果不需要设置加密和Flash保护功能的话,不要修改CONFIG_1 – CONFIG_4的值,如果需要修改,请根据参考手册的Flash章节相关描述进行操作。否则芯片可能不能连接仿真器下载程序或者调试。
3,程序调试完成后,最好对Flash里面保存代码的区块设置保护功能,以防止代码被意外擦除和改写。关于Bootloader及应用程序的保护,请参考K60硬件手册Flash Protection相关章节。
4.对于未使用的GPIO引脚,如果悬空的话,请设置为输出为低电平的状态,一般在线路和Layout设计的时候作NC处理即可。对于要做严格ESD/EMC测试的项目,未使用的引脚需要引出做通过电阻上拉/下拉到固定电平的设计。对于单独为输入功能的引脚,需要接串联电阻和旁路电容。K60的GPIO在上电时的默认状态为输入引脚。
5.对于所有引脚功能的初始化设置,请严格结合硬件设计保证芯片引脚设置为输出高电平时不会影响到外部连接的芯片及电路(比如当外部芯片对应引脚状态为输出低电平状态或者外部线路为直接接地状态时)导致短路及大电流的产生;当芯片引脚设置为输出低电平时要保证外部线路或芯片连接至芯片该引脚的电平如果为高时,连接到芯片引脚的线路上要有足够大的串联限流电阻。良好保证这样设计的前提是板上多个芯片上电及复位的流程要严格可控并且适合相互连接芯片的上电默认设置。
6.关于常态输出固定电平的端口,需要周期性的对该端口输出进行刷新,以确保端口一直输出为正确值。
7.建议使能K60芯片的LVD功能,当VDD电压降到一定程度时保证芯片可靠复位。可以参考硬件手册低电压检测相关章节设置相关功能。这样主要为了防止反复上下电过程中出现一些问题。如果外部有硬件低电压检测模块的话,则不需要。
8.例如下面截图所示的串联电阻R282,如果用作限流或者抗干扰设计,推荐470R或者1K及以上的取值,可以根据实际应用是不影响电平的判断和数据的通信为准。
9.例如下图所示的按键的线路连接,首先请确保K60的I/O口没有可能直接连接到地。同时由于按键会进行人为操作而引入静电干扰,因此建议在K60的I/O端口串联1K或更大一些的电阻,具体以不影响I/O口电平的判断为准。
10.多芯片系统中,其他和K60连接的芯片要保证其在上电和复位过程中的默认状态与K60的默认状态和初始化后的状态要能够匹配,即不会出现某个输出为高的引脚直接连接至某个输出为低的引脚导致短路的情况出现。
11.调试的时候,请不要对JTAG口进行热插拔操作,包括目标板断电但J-link带电的插拔也是不允许的。如果实在不能避免,可以在J-link工具上加隔离完全隔离电路同时JTAG相关引脚做静电防护。
12.关于K60芯片的EZP_CS引脚,在上电的过程中最好将其上拉至高电平,这个引脚接如果上电时接低电平的话会导致J-link烧录程序不成功。
13.如果用RMII模式与PHY芯片进行通讯时,一定要保证以太网PHY时钟和K60 CPU的输入时钟同频同相。
14.如果是手工焊接CPU外围电路的时候,务必确保K60 外围晶振电路尽量干净,如果松香等杂志遗留过多,可能会导致晶振不起振,从而影响整机工作。
15.当使用外部无源晶振时,需要为无源晶振设计匹配电容,由于K60内部晶振电路部分可以通过相关寄存器的设置改变负载电容,这就增加了对外部匹配电容和无源晶振选择时的灵活性。
|