GPIO简介
GPIO(通用输入/输出端口)是相对于芯片而言的,如果在对应的芯片存在GPIO引脚则可以通过读这些引脚来获取引脚的变化(即:引脚的高低电平的变化)。
通过寄存器来访问引脚:
在S3C2410芯片中存在117个I/O端口,共分为A~H共8组分别为GPA~~GPH,在S3C2440中存在130个I/O端口,共分为A~J 9组名分别为GPA~GPJ,配置这些端口相应的寄存器(GPXCON, x=A~H/J),设置引脚是用于输入/输出,或者是用于特殊功能。控制s3c2440的GPIO端口的寄存器有3类,分别是GPxCON、GPxDAT、GPxUP (x=A ~ J):
GPxCON:GPIO控制寄存器,可以设置选定GPIO口的输入输出方式和功能。GPA组的23个端口比较特殊,只能是输出方式。GPACON的每一位对应一个引脚,当某位为0时,对应引脚为输出端口,否则为复用功能。
GPXCON寄存器:
GPXCON(x=A~~H/J)寄存器用于设置相应引脚的功能是输入/输出,还是特殊功能或保留不用。
在功能配置方面PORTA 与 PORTB~PORTH/J 有所不同,GPACON寄存器中每一位对应一个引脚(共23位),当某位被设置为0时,对应该位引脚被设置为输出引脚(可以用于写入),此时我们可以对GPADAT寄存器(用于写引脚)进行写操作,当某位被设置为1时(相应引脚为地址线/或用于控制),此时GONADAT无用.
PORTB~PORTH/J对寄存器操作完全相同,GPXCON每2位对应一个引脚&#x
GPIO(通用输入/输出端口)是相对于芯片而言的,如果在对应的芯片存在GPIO引脚则可以通过读这些引脚来获取引脚的变化(即:引脚的高低电平的变化)。
通过寄存器来访问引脚:
在S3C2410芯片中存在117个I/O端口,共分为A~H共8组分别为GPA~~GPH,在S3C2440中存在130个I/O端口,共分为A~J 9组名分别为GPA~GPJ,配置这些端口相应的寄存器(GPXCON, x=A~H/J),设置引脚是用于输入/输出,或者是用于特殊功能。控制s3c2440的GPIO端口的寄存器有3类,分别是GPxCON、GPxDAT、GPxUP (x=A ~ J):
GPxCON:GPIO控制寄存器,可以设置选定GPIO口的输入输出方式和功能。GPA组的23个端口比较特殊,只能是输出方式。GPACON的每一位对应一个引脚,当某位为0时,对应引脚为输出端口,否则为复用功能。
GPXCON寄存器:
GPXCON(x=A~~H/J)寄存器用于设置相应引脚的功能是输入/输出,还是特殊功能或保留不用。
在功能配置方面PORTA 与 PORTB~PORTH/J 有所不同,GPACON寄存器中每一位对应一个引脚(共23位),当某位被设置为0时,对应该位引脚被设置为输出引脚(可以用于写入),此时我们可以对GPADAT寄存器(用于写引脚)进行写操作,当某位被设置为1时(相应引脚为地址线/或用于控制),此时GONADAT无用.
PORTB~PORTH/J对寄存器操作完全相同,GPXCON每2位对应一个引脚&#x