在线时间18 小时
UID395757
注册时间2012-10-19
NXP金币0
该用户从未签到
中级会员
 
- 积分
- 233
- 最后登录
- 1970-1-1
|
发表于 2016-7-5 15:48:56
|
显示全部楼层
SDK2.0 , FRDM_KL02 默认的sysClk是47.972352 M , bus/flash clock = 9.59M (至于为什么把BUS 设这么低, 谁知道。。。)
然后经过I2C_MasterInit(), 算出 ICR = 2 , MULT = 0 ;
注意!!!
手册里写的很清楚:
For some cases on some devices, the SCL divider value may
vary by +/-2 or +/-4 when ICR’s value ranges from 00h to 0Fh.
所以 波特率是 9.59M / (24-4) ~ 9.59M/(24+4) , 也就是 479K ~ 342 K
所以代码与实测现象是相符的。
另外, 对于几百K的频率,无论代码写的冗余,不至于影响这么大。 |
|