中级会员
- 积分
- 216
- 金钱
- 216
- 注册时间
- 2016-2-29
- 在线时间
- 62 小时
|
1金钱
在I.MX6U 嵌入式 x Linux 驱动开发指南 V1.1 的 第八章 汇编 LED 灯 灯 实验中例程是
1
2 .global _start /* 全局标号 */
3
4 /*
5 * 描述: _start 函数,程序从此函数开始执行此函数完成时钟使能、
6 * GPIO 初始化、最终控制 GPIO 输出低电平来点亮 LED 灯。
7 */
8 _start:
9 /* 例程代码 */
10 /* 1、使能所有时钟 */
11 ldr r0, =0X020C4068 /* 寄存器 CCGR0 */
12 ldr r1, =0XFFFFFFFF
13 str r1, [r0]
14
15 ldr r0, =0X020C406C /* 寄存器 CCGR1 */
16 str r1, [r0]
17
。。。。
0X020C406C 是CCGR1 ,设置成0XFFFFFFFF,是把CCGR1 里代表的时钟都开启。其中bit[27 26]是gpio1的时钟
这个示例是正常可用的。
但是如果直接设置成CCGR1 = 0x0c00 0000的话,示例是不正常的。
后来,我试了,发现CCGR1 = 0x0c0c 0000的话,就正常了。但是参考手册上提到CCGR1 的bit[19 18] 表示的是“sim_s clock”, 这个时钟和GPIO有关吗?
|
|