uboot-step 6 点亮指路灯

uboot-step 6 点亮指路灯

led原理图

现在我们已经做了一些基本的初始化,终于可以来点亮我们的led了,首先得先看下我们的原理图:


uboot-step 6 点亮指路灯_第1张图片
led.png

这里采用的tinys3c6410的开发板,led相关的引脚如图中所示,我们的led所用到的处理器引脚为GPK4,5,6,7四个引脚,led另一端接到了vcc端,因此只要我们将这几个引脚配置为低电平就可以点亮了

引脚的控制

如何控制这几个引脚呢,从s3c6410的芯片手册中可以看到如下描述:

  • GPKCON0,1为引脚控制寄存器,可以用来配置引脚的功能,每四位控制一个引脚,可以配置为输入,输出,功能复用等。
  • GPKDAT为数据寄存器,当配置为输入时,可以从中读出引脚上的状态,配置为输出时,通过向其写入值来控制引脚的输出
  • GPKPUD 引脚上下拉配置寄存器,可以根据需要对引脚的上下拉进行配置

8.1.png

uboot-step 6 点亮指路灯_第2张图片
8.2.png

uboot-step 6 点亮指路灯_第3张图片
8.3.png

代码实现

#define GPKCON 0x7f008800
#define GPKDAT 0x7f008808
light_led:
ldr r0, =GPKCON
ldr r1, =0x11110000  @配置GPK4,5,6,7为输出模式
str r1, [r0]

ldr r0, =GPKDAT
ldr r1, =0xa0 @0x1010 0000 4,5,6,7 亮暗相间
str r1, [r0]
mov pc, lr

此去经年
[email protected]
August 2, 2016

你可能感兴趣的:(uboot-step 6 点亮指路灯)