GPIO(general purpose I/O ports)意思为通用输入/输出端口,通俗地说,就是一些引脚.
GPxCON寄存器 :它用于配置(configure)---选择引脚的功能。
其中GPACON共23根引脚,当某位被设为0时,相应引脚为输出引脚,此时我们可以在GPADAT相应位写入0或1让此引脚输出低电平或高电平;当某位被设为1时,相应引脚为地址线或者用于地址控制,此时GPADAT无用。一般来说,GPACON通常被设为全1,以便访问外部存储器件。
PORT B-PORT H/J在寄存器操作方面完全相同。GPxCON每两位控制一个引脚:00表示输入,01表示输出,10表示特殊功能,11保留不用。
GPxDAT寄存器:GPxDAT用于读/写引脚:当引脚被设为输入时,读此寄存器可知相应引脚的电平状态是高还是低;当引脚被设为输出时,写此寄存器相应位可令此引脚输出高电平或者低电平;
GPxUP寄存器:某位为1时,相应引脚无内部上拉电阻;某位为1时,相应引脚使用内部上拉电阻;
当GPIO引脚处于第三态(既不是输出高电平,也不是输出低电平,相当于没有接芯片,呈高阻态),它的电平状态由上拉电阻,下拉电阻来决定;
1 LED灯点亮实验:
通过写GPBDAT寄存器的相应位是的这4个引脚输出高电平或者低电平;输出高电平时,相应的LED灯熄灭;输出低电平时,相应的LED灯点亮;
S3C2440的GPBCON,GPBDAT寄存器地址都是0x56000010,0x56000014,
@******************************************************************************
@ File:led_on.S
@ 功能:LED点灯程序,点亮LED1
@****************************************************************************** .text
.global _start
_start: LDR R0,=0x56000050 @ R0设为GPFCON寄存器。此寄存器
@ 用于选择端口B各引脚的功能:
@ 是输出、是输入、还是其他
MOV R1,#0x00000100 STR R1,[R0] @ 设置GPF4为输出口, 位[8:7]=0b01
LDR R0,=0x56000054 @ R0设为GPBDAT寄存器。此寄存器