较早之前就写过几篇**介绍过飞思卡尔基于5v工艺制造的ARM Cortex-M0+产品Kinetis E系列(业界第一款哦,呵呵),如今距离其产品发布已经过去一年多了,KE系列还是颇受很多国内客户尤其是家电厂商和工业客户欢迎的,对家电厂商来说,考虑成本和可靠性的问题(我觉着主要是成本的问题,呵呵),目前很多家电的控制器仍然是以老的8位机为主(主要是Renesas,Freescale和Microchip等主要几家的产品),工业客户则范围比较广了,但是其老8位机和16位机也是依旧坚守阵地,而这些传统的应用仍然也是主要以5v供电和5v接口为主,随着产品的升级换代,为尽量减少BOM的改动,5v宽电压的ARM还是一个非常不错的选择,因此主打5v宽电压和EMC性能的KE系列自然混的不错了,哈哈。 废话说的有点多,有点植入广告的嫌疑了,哈哈,所以还是赶紧上点硬料,免得受广大博友吐槽。飞思卡尔在KE推出的时候破天荒的为KE系列写了一个非常好用的底层驱动库,不过最近在调试KE02串口通信的时候发现了一个容易被忽视掉的问题,那就是内部时钟TRIM的问题,这个问题只有在我们不使用外部晶振而是选择内部时钟作为FLL锁频环时钟源的时候才会发现,在提出这个问题之前,我们需要知道几个内部时钟相关的问题: 1. KE系列内部有一个动态范围在31.25~39.0625kHz之间RC震荡时钟,具体这个时钟大小可以通过trim来配置,但是这个trim值不同的芯片可能不一样,不过放心,在每一片芯片出厂前,都会被厂家trim到一个统一时钟大小(这个是必然的,不然岂不是不同的芯片我们都需要根据实际时钟大小来单独配置),对KE02来说,其出厂后其内部时钟被统一trim到31.25kHz,如下图:
2. 这个trim后的时钟精度在全温度范围为-1%~0.5%之间(因为其内部时钟为RC震荡时钟,其受温度影响较明显),不过这个精度对一般的串口通信来说是没有问题的,如果用的高速串口(115200bps以上)或者类似USB或者CAN通信等要求比较高的应用,还是强烈建议使用外部无源或者有源晶振的,trim后的精度如下图:
|