[Kinetis] KL系列UART例程1指南疑问

[复制链接]
1385|7
 楼主| andy_yao 发表于 2015-1-12 16:44 | 显示全部楼层 |阅读模式
一;PORT_PCR_ISF_MASK;明明是1为何程序的注解确是:清除该脚中断标志?
二;MCGFLLCLK应为48M,为何在计算波特率是变成了20971520?
FSL_TICS_ZJJ 发表于 2015-1-13 17:30 | 显示全部楼层
回答你的两个问题:
1, PORT_PCR_ISF这个位是W1C,意思就是如果该位置位,则需要写1清除。
2,不知道你看的是不是KL25的UART代码,如果是,那么你可以看看KL25的代码,在sysint.c中有如下代码:
49.jpg
其中 mcg_clk_hz = 640 * (FLL_DRST_DRS + 1) * FLL_REF_FREQ;
  #define FLL_REF_FREQ 32768
  #define FLL_DRST_DRS    0
那么算出来的mcg_clk_hz  = 20971520hz,这个时钟就是FLL的输出时钟。

评分

参与人数 1威望 +3 收起 理由
andy_yao + 3

查看全部评分

 楼主| andy_yao 发表于 2015-1-14 09:26 | 显示全部楼层
一;我是在看KL25 UART例程,因为KLQRUG.pdf和飞思卡尔KL系列UART例程指南1中UART0_C4的值不一样,在KLQRUG中C4=0x0f,而在指南1中是0x06,而波特率都是115200,所以有此疑问。
二;为何飞思卡尔不是ST一样搞一个底层库,这样省去很多时间。
 楼主| andy_yao 发表于 2015-1-14 09:39 | 显示全部楼层
本帖最后由 andy_yao 于 2015-1-14 09:41 编辑

E:\https://bbs.21ic.com/forum.php?mod=attachment&aid=Mzk0MzcxfGI4YTAwMjA2fDE3NjA5NjAwMDJ8MHw%3D
QQ图片20150114093742.jpg
 楼主| andy_yao 发表于 2015-1-14 09:42 | 显示全部楼层
同样是KL25官方例程为何不一样?
FSL_TICS_ZJJ 发表于 2015-1-14 11:39 | 显示全部楼层
andy_yao 发表于 2015-1-14 09:26
一;我是在看KL25 UART例程,因为KLQRUG.pdf和飞思卡尔KL系列UART例程指南1中UART0_C4的值不一样,在KLQRUG ...

快速指南上讲的的确有些不一样,因为选择的输入时钟不一样。
你自己也可以修改的。
关于底层驱动,现在新的芯片我们就会推出驱动库SDK, 老的芯片也会慢慢加进来。

评分

参与人数 1威望 +3 收起 理由
andy_yao + 3

查看全部评分

FSL_TICS_ZJJ 发表于 2015-1-14 11:42 | 显示全部楼层
andy_yao 发表于 2015-1-14 09:42
同样是KL25官方例程为何不一样?

你这个例程是什么版本的呢?
其实主要就是时钟配置的区别,你也可以把MCG配置为48Mhz的。

评分

参与人数 1威望 +3 收起 理由
andy_yao + 3

查看全部评分

Thefantasy 发表于 2015-1-25 20:42 | 显示全部楼层
学习了解一下

评分

参与人数 1威望 +3 收起 理由
andy_yao + 3

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

98

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部