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

[复制链接]
860|4
 楼主| lovecat2015 发表于 2015-12-19 19:55 | 显示全部楼层 |阅读模式
GPIO很简单,但知其然,也要知其所以然。
从main开始。
时钟SystemCoreClockUpdate();与串口uart0Init(9600,0,0,8,1);设置下回分解。
时钟
找到SIM_SCGC5的定义:

 楼主| lovecat2015 发表于 2015-12-19 19:56 | 显示全部楼层
将0x40047000u转换到结构体 SIM_MemMapPtr


 楼主| lovecat2015 发表于 2015-12-19 19:57 | 显示全部楼层
通过结构体 SIM_MemMapPtr,与SIM_BASE_PTR0x40047000u,可以计算出SIM_SCGC5的地址是0x40048038,
再看手册中,
A口时钟使能为SIM_SCGC59位置1;
而SIM_SCGC5_PORTA_MASK的定义在


 楼主| lovecat2015 发表于 2015-12-19 19:59 | 显示全部楼层
再看手册
现在知道这个时钟是怎么使能的了。
不过下面还有时钟的问题。
注释很清楚,但它是怎么使能的呢?

 楼主| lovecat2015 发表于 2015-12-19 20:00 | 显示全部楼层
先看MKL_PORTB
这里是字符 B 不是16进制,注意!
这个 ##的用法还是第一次看到在实际中使用,结果就是SIM_SCGC5_PORT##A##_MASK=SIM_SCGC5_PORTA_MASK
还是上面的那个
与上面的功能一样。

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

本版积分规则

80

主题

816

帖子

0

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