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的具体描述
说明:这个表的用法是当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的具体描述
3)GPCCON——端口C的配置寄存器。
GPCCON在S3C2410A中的物理地址是0x56000020,是可读写(R/W)的,在S3C2410A复位后,GPCCON的值为0x0。GPCCON的长度是32bit。表4-11为GPCCON的具体描述。
表4-11 GPCCON的具体描述
4)GPDCON——端口D的配置寄存器。
GPDCON在S3C2410A中 的 物 理 地 址 是0x56000030,是 可 读 写(R/W)的,在S3C2410A复位后,GPDCON的值为0x0。GPDCON的长度是32bit。表4-12为GPDCON的具体描述。
表4-12 GPDCON的具体描述
5)GPECON——端口E的配置寄存器。
GPECON在S3C2410A中的物理地址是0x56000040,是可读写(R/W)的,在S3C2410A复位后,GPECON的值为0x0。GPECON的长度是32bit。表4-13为GPECON的具体描述。
表4-13 GPECON的具体描述
6)GPFCON——端口F的配置寄存器。
GPFCON在S3C2410A中 的 物 理 地 址 是0x56000050,是 可 读 写(R/W)的,在S3C2410A复位后,GPFCON的值为0x0。GPFCON的长度是16bit。表4-14为GPFCON的具体描述。
表4-14 GPFCON的具体描述
7)GPGCON——端口G的配置寄存器。
GPGCON在S3C2410A中 的 物 理 地 址 是0x56000060,是 可 读 写(R/W)的,在S3C2410A复位后,GPGCON的值为0x0。GPGCON的长度是32bit。表4-15为GPGCON的具体描述。
表4-15 GPGCON的具体描述
8)GPHCON——端口H的配置寄存器。
GPHCON在S3C2410A中的物理地 址 是0x56000060,是 可 读 写(R/W)的,在S3C2410A复位后,GPHCON的值为0x0。GPHCON的长度是22bit。表4-16为GPHCON的具体描述。
表4-16 GPHCON的具体描述
(2)端口数据寄存器(Port Data Register)
端口配置寄存器中包括了GPADAT~GPHDAT共8个寄存器。表4-17给出了GPADAT~GPHDAT寄存器的物理地址、可读写状态和复位后的默认值。表4-18给出了端口数据寄存器的具体描述。
表4-17 GPADAT~GPHDAT寄存器的物理地址、可读写状态和复位后的默认值
表4-18 端口数据寄存器的具体描述
举例说明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寄存器的物理地址、可读写状态和复位后的默认值
表4-20 端口数据寄存器的具体描述
(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的具体描述
(续)
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的具体描述
(续)
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 外部中断寄存器的物理地址、可读写状态和复位后的默认值
表4-24 EXTINT0的具体描述
表4-25 EXTINT1的具体描述
表4-26 EXTINT2的具体描述
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 外部中断滤波器寄存器的物理地址、可读写状态和复位后的默认值
表4-28 EINTFLT2的具体描述
表4-29 EINTFLT3的具体描述
5)外部中断屏蔽寄存器EINTMASK(External Inte rrupt Mask Register)。
EINTMASK在S3C2410A中的物理地址是0x560000A4,是可读写(R/W)的,长度为24bit,在系统复位后,该寄存器的默认值为0x00FFFFF0。这个寄存器是用来屏蔽20个外部中断(EINT[23∶4])的。表4-30给出了EINTMASK的具体描述。
表4-30 EINTMASK的具体描述
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的具体描述
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 通用状态寄存器的物理地址、可读写状态和复位后的默认值
表4-33 GSTATUS0的具体描述
表4-34 GSTATUS1的具体描述
表4-35 GSTATUS2的具体描述
表4-36 GSTATUS3和GSTATUS4的具体描述
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。