一、通用IO的定义
GPIO(General-Purpose IO ports),通用的IO口。一般的微控制芯片都提供通用的可编程接口。按照它们的功能分成:
l 通用IO控制寄存器
l 通过IO数据寄存器
很多MCU的GPIO接口出去了标准的寄存器必须外,还会提供上拉寄存器,可以设置IO的输出模式为高阻。
二、S3C2410A的通用IO寄存器
S3C2410A共有117个复用的输入/输出端口,分别是端口A~H,共8组。按照其位数不同不同可分为:
l 端口A(GPA),23位输出口
l 端口B(GPB),11位输出口
l 端口C(GPC),16位输出口
l 端口D(GPD),16位输出口
l 端口E(GPE),16位输出口
l 端口F(GPF),8位输出口
l 端口G(GPG),16位输出口
l 端口H(GPH),11位输出口
为了满足不同设计要求,每个IO口可以设置成不同的工作模式,其中又可以将IO口分成如下3类:
l 端口控制寄存器(GPACON~CPHCON)
设置引脚工作模式,例如:输入、输出、外部中断和保留。
l 端口数据寄存器(GPADAT~CPHDAT)
当端口被设置成输入模式,可以向GPxDAT的相应位写入数据;当端口被设置成输出模式,可以从GPxDAT的相应位读出数据
l 端口上拉寄存器(GPAUP~CPHUP)
控制某一端口的响应位的上拉电阻状态(允许/禁止)。
0 – 响应的上拉电阻被允许
1 – 响应的上拉电阻被禁止
参看S3C2410A数据手册
三 编程实例
(1)
编程目的
控制和S3C2410A芯片IO连接的几个LED有规律的点亮。