首页 理论教育 嵌入式技术:GPIO控制寄存器解析

嵌入式技术:GPIO控制寄存器解析

时间:2023-11-08 理论教育 版权反馈
【摘要】:S3C2410A的GPIO控制寄存器共分为4类,分别是端口配置寄存器、端口数据寄存器、端口上拉功能寄存器和其他相关功能寄存器。2)GPBCON——端口B的配置寄存器。表4-12为GPDCON的具体描述。表4-17 GPADAT~GPHDAT寄存器的物理地址、可读写状态和复位后的默认值表4-18 端口数据寄存器的具体描述举例说明GPADAT的用法。端口上拉功能寄存器端口的上拉功能寄存器中包括了GPBUP~GPHUP共7个寄存器。

嵌入式技术:GPIO控制寄存器解析

S3C2410A的GPIO控制寄存器共分为4类,分别是端口配置寄存器(Port Configuration Register)、端口数据寄存器(Port Data Register)、端口上拉功能寄存器(Port Pull-Up Re gis- ter)和其他相关功能寄存器。

(1)端口配置寄存器(Port Configuration Register)

端口配置寄存器中包括了GPACON~GPHCON共8个寄存器。

1)GPACON——端口A的配置寄存器。

GPACON在S3C2410A中 的 物 理 地 址 是0x56000000,是 可 读 写(R/W)的,在S3C2410A复位后,GPACON的值为0x7FFFFF。GPACON的长度是23bit。表4-9为GPACON的具体描述。

4-9 GPACON的具体描述

978-7-111-41590-9-Chapter04-10.jpg

说明:这个表的用法是当GPAn的值被配置为逻辑0时,对应该引脚的功能为输出引脚;当GPAn的值被配置为逻辑1时,对应该引脚的功能为相应的特殊功能,这里n的值为22~0。

例如:当GPACON=0x000FFF时,即GPACON=000_0000_0000_1111_1111_1111B(GPACON[22∶12]=0,GPACON[11∶0]=1)时,参照表4-9可知A端口的22脚至12脚(GPA22~GPA12)为输出引脚,11脚至0脚(GPA11~GPA0)为S3C2410A的地址线。

2)GPBCON——端口B的配置寄存器。

GPBCON在S3C2410A中的物理地址是0x56000010,是可读写(R/W)的,在S3C2410A复位后,GPBCON的值为0x0。GPBCON的长度是22bit。表4-10为GPBCON的具体描述。

4-10 GPBCON的具体描述

978-7-111-41590-9-Chapter04-11.jpg

3)GPCCON——端口C的配置寄存器。

GPCCON在S3C2410A中的物理地址是0x56000020,是可读写(R/W)的,在S3C2410A复位后,GPCCON的值为0x0。GPCCON的长度是32bit。表4-11为GPCCON的具体描述。

4-11 GPCCON的具体描述

978-7-111-41590-9-Chapter04-12.jpg

4)GPDCON——端口D的配置寄存器。

GPDCON在S3C2410A中 的 物 理 地 址 是0x56000030,是 可 读 写(R/W)的,在S3C2410A复位后,GPDCON的值为0x0。GPDCON的长度是32bit。表4-12为GPDCON的具体描述。

4-12 GPDCON的具体描述

978-7-111-41590-9-Chapter04-13.jpg

5)GPECON——端口E的配置寄存器。

GPECON在S3C2410A中的物理地址是0x56000040,是可读写(R/W)的,在S3C2410A复位后,GPECON的值为0x0。GPECON的长度是32bit。表4-13为GPECON的具体描述。

4-13 GPECON的具体描述

978-7-111-41590-9-Chapter04-14.jpg

6)GPFCON——端口F的配置寄存器。

GPFCON在S3C2410A中 的 物 理 地 址 是0x56000050,是 可 读 写(R/W)的,在S3C2410A复位后,GPFCON的值为0x0。GPFCON的长度是16bit。表4-14为GPFCON的具体描述。

4-14 GPFCON的具体描述

978-7-111-41590-9-Chapter04-15.jpg

7)GPGCON——端口G的配置寄存器。

GPGCON在S3C2410A中 的 物 理 地 址 是0x56000060,是 可 读 写(R/W)的,在S3C2410A复位后,GPGCON的值为0x0。GPGCON的长度是32bit。表4-15为GPGCON的具体描述。

4-15 GPGCON的具体描述

978-7-111-41590-9-Chapter04-16.jpg

8)GPHCON——端口H的配置寄存器。

GPHCON在S3C2410A中的物理地 址 是0x56000060,是 可 读 写(R/W)的,在S3C2410A复位后,GPHCON的值为0x0。GPHCON的长度是22bit。表4-16为GPHCON的具体描述。

4-16 GPHCON的具体描述

978-7-111-41590-9-Chapter04-17.jpg

(2)端口数据寄存器(Port Data Register)

端口配置寄存器中包括了GPADAT~GPHDAT共8个寄存器。表4-17给出了GPADAT~GPHDAT寄存器的物理地址、可读写状态和复位后的默认值。表4-18给出了端口数据寄存器的具体描述。

4-17 GPADAT~GPHDAT寄存器的物理地址可读写状态和复位后的默认值

978-7-111-41590-9-Chapter04-18.jpg

4-18 端口数据寄存器的具体描述

978-7-111-41590-9-Chapter04-19.jpg

举例说明GPADAT的用法。例如,当GPACON=0x000000时,即根据表4-9,端口A全部为输出端口,如果GPADAT=0x555555,即GPADAT=101_0101_0101_0101_0101_0101B,那么引脚GPA22~GPA0上的输出值与GPADAT的值相同。

举例说明GPBDAT的用法。当端口B被配置为输出端口时,其具体操作与端口A相同。当端口B全部被配置为输入端口时,即GPBCON=0x000000时,如果GPB10~GPB0所连接的外部数据源的数据值为0x766,那么GPBDAT的值就为0x766。剩下几个数据寄存器的使用方法与GPBDAT类似,这里就不再一一说明了。

(3)端口上拉功能寄存器(Port Pull-Up Re gister)

端口的上拉功能寄存器中包括了GPBUP~GPHUP共7个寄存器。表4-19给出了GPBUP~GPHUP寄存器的物理地址、可读写状态和复位后的默认值。表4-20给出了端口数据寄存器的具体描述。

4-19 GPBUP~GPHUP寄存器的物理地址可读写状态和复位后的默认值

978-7-111-41590-9-Chapter04-20.jpg

4-20 端口数据寄存器的具体描述

978-7-111-41590-9-Chapter04-21.jpg

(4)其他相关功能寄存器(www.xing528.com)

1)杂项控制寄存器MISCCR(Misc ellaneous Control Register)。

MISCCR在S3C2410A中 的 物 理 地 址 是0x56000080,是 可 读 写(R/W)的,在S3C2410A复位后,MISCCR的值为0x10330。MISCCR的长度是22bit。表4-21给出了MISC- CR的具体描述。

4-21 MISCCR的具体描述

978-7-111-41590-9-Chapter04-22.jpg

(续)

978-7-111-41590-9-Chapter04-23.jpg

2)DCLK控制寄存器DCLKCON(DCLK Control Register)。

DCLKCON在S3C2410A中的物理地址是0x56000084,是可读写(R/W)的,在S3C2410A复位后,DCLKCON的值为0x0。DCLKCON的长度是28bit。表4-22给出了DCLK- CON的具体描述,这个寄存器定义了DCLKn(n的值为0或1)信号,这个信号是作为外部源时钟使用的。

4-22 DCLKCON的具体描述

978-7-111-41590-9-Chapter04-24.jpg

(续)

978-7-111-41590-9-Chapter04-25.jpg

3)外部中断控制寄存器EXTINTn(External Inte rrupt Control Register)。

外部中断控制寄存器包括3个寄存器,分别是EXTINT0、EXTINT1和EXTINT2,其中EXTINT0的长度为31bit,EXTINT1和EXTINT2的长度为32bit。S3C2410A有24个外部中断可以被许多种信号触发方式所触发。外部中断可以配置为电平触发,也可以配置为沿触发,或者被配置为信号优先触发。为了使S3C2410A能够正确识别电平触发,触发外部中断的逻辑电平由于噪声滤波器的影响至少要维持40ns。

表4-23给出了外部中断寄存器的物理地址、可读写状态和复位后的默认值。表4-24给出了EXTINT0的具体描述,表4-25给出了EXTINT1的具体描述,表4-26给出了EXTINT2的具体描述。

4-23 外部中断寄存器的物理地址可读写状态和复位后的默认值

978-7-111-41590-9-Chapter04-26.jpg

4-24 EXTINT0的具体描述

978-7-111-41590-9-Chapter04-27.jpg

4-25 EXTINT1的具体描述

978-7-111-41590-9-Chapter04-28.jpg

4-26 EXTINT2的具体描述

978-7-111-41590-9-Chapter04-29.jpg

4)外部中断滤波器寄存器EINTFLTn(External Interrupt Filte r Register)。

外部中断滤波器寄存器包括了4个寄存器,分别是EINTFLT0、EINTFLT1、EINTFLT2和EINTFLT3。EINTFLT0和EINTFLT1为保留寄存器,没有具体功能;EINTFLT2和EINT- FLT3长度均为32bit。EINTFLT2和EINTFLT3是用来控制8个外部中断(EINT[23∶16])的滤波器宽度和滤波时钟的。表4-27给出了外部中断滤波器寄存器的物理地址、可读写状态和复位后的默认值。表4-28给出了EINTFLT2的具体描述,表4-29给出了EINTFLT3的具体描述。

4-27 外部中断滤波器寄存器的物理地址可读写状态和复位后的默认值

978-7-111-41590-9-Chapter04-30.jpg

4-28 EINTFLT2的具体描述

978-7-111-41590-9-Chapter04-31.jpg

4-29 EINTFLT3的具体描述

978-7-111-41590-9-Chapter04-32.jpg

5)外部中断屏蔽寄存器EINTMASK(External Inte rrupt Mask Register)。

EINTMASK在S3C2410A中的物理地址是0x560000A4,是可读写(R/W)的,长度为24bit,在系统复位后,该寄存器的默认值为0x00FFFFF0。这个寄存器是用来屏蔽20个外部中断(EINT[23∶4])的。表4-30给出了EINTMASK的具体描述。

4-30 EINTMASK的具体描述

978-7-111-41590-9-Chapter04-33.jpg

6)外部中断挂起寄存器EINTPEND(External Inte rrupt Pending Re gister)。

EINTPEND在S3C2410A中的物理地址是0x560000A8,是可读写(R/W)的,长度为24bit,在系统复位后,该寄存器的默认值为0x0。该寄存器是用来挂起20个外部中断(EINT[23∶4])的。表4-31给出了EINTPEND的具体描述。

4-31 EINTPEND的具体描述

978-7-111-41590-9-Chapter04-34.jpg

7)通用状态寄存器GSTATUSn(Ge neral Sta tus Re gister)。

通用状态寄存器共包括5个寄存器,分别是GSTATUS0~GSTATUS4。GSTATUS0是用来确定外部引脚状态的,GSTATUS1是用来读取S3C2410A芯片的ID,GSTATUS2是和复位状态有关的寄存器,GSTATUS2和GSTATUS3是通知寄存器。表4-32给出了通用状态寄存器的物理地址、可读写状态和复位后的默认值。表4-33给出了GSTATUS0的具体描述,表4-34给出了GSTATUS1的具体描述,表4-35给出了GSTATUS2的具体描述,表4-36给出了GSTATUS3和GSTATUS4的具体描述。

4-32 通用状态寄存器的物理地址可读写状态和复位后的默认值

978-7-111-41590-9-Chapter04-35.jpg

4-33 GSTATUS0的具体描述

978-7-111-41590-9-Chapter04-36.jpg

4-34 GSTATUS1的具体描述

978-7-111-41590-9-Chapter04-37.jpg

4-35 GSTATUS2的具体描述

978-7-111-41590-9-Chapter04-38.jpg

4-36 GSTATUS3GSTATUS4的具体描述

978-7-111-41590-9-Chapter04-39.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈