[Kinetis] 【YL-KL26Z开发】+GPIO例程详解之时钟

[复制链接]
1379|7
 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:24 | 显示全部楼层 |阅读模式
GPIO很简单,但知其然,也要知其所以然。
从main开始。
时钟SystemCoreClockUpdate();与串口uart0Init(9600,0,0,8,1);设置下回分解。
时钟




 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:25 | 显示全部楼层
找到SIM_SCGC5的定义:
然后是




 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:26 | 显示全部楼层
将0x40047000u转换到结构体 SIM_MemMapPtr

 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:26 | 显示全部楼层
通过结构体 SIM_MemMapPtr,与SIM_BASE_PTR0x40047000u,可以计算出SIM_SCGC5的地址是0x40048038,
再看手册中,


 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:27 | 显示全部楼层
A口时钟使能为SIM_SCGC59位置1;
而SIM_SCGC5_PORTA_MASK的定义在
再看手册
捕6获.PNG (78.52 KB, 下载次数: 0)
下载附件
2015-7-15 08:27 上传




 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:28 | 显示全部楼层
现在知道这个时钟是怎么使能的了。
不过下面还有时钟的问题。
注释很清楚,但它是怎么使能的呢?

先看MKL_PORTB
这里是字符 B 不是16进制,注意!

 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:28 | 显示全部楼层
捕10获.PNG (19.63 KB, 下载次数: 0)
下载附件
2015-7-15 08:31 上传


这个 ##的用法还是第一次看到在实际中使用,结果就是SIM_SCGC5_PORT##A##_MASK=SIM_SCGC5_PORTA_MASK
还是上面的那个

 楼主| 小狗爱吃骨头 发表于 2015-12-27 20:29 | 显示全部楼层
与上面的功能一样。

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

本版积分规则

28

主题

286

帖子

0

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