GPIO

来源:互联网 发布:上海黄金交易所 知乎 编辑:程序博客网 时间:2024/06/06 00:56
GPIO (General Purpose Input Output )通用输入输出端口,通俗的说,GPIO是一些引脚的集合,

可以通过设置寄存器来确定某个引脚用于输入、输出还是其他特殊功能。

1. 通过寄存器来操作GPIO引脚

       GPxCON用于选择引脚功能,GPxDAT用于读/写引脚数据;另外,GPxUP用于确定是否使用内部上拉电阻。

1.1.1 GPxCON寄存器

       从寄存器的名字可以看出,它用于配置(Configure)-选择引脚功能。

       PORTA与PORTB~PORT H/J在功能选择方面有所不同,GPACON中每一位对应一根引脚(共23根引脚)。当某位被设为0时,相应引脚为输出引脚,此时我们可以在GPADAT 中相应位写入0或是1让此引脚为低电平或高电平;当某位被设为1时,相应引脚为地址线或用于地址控制,此时GPADAT无用。一般而言,GPACON通常 被设为全1,以便访问外部存储器件。

       PORT B~ PORT H/J在寄存器操作方面完全相同。GPxCON中每两位控制一根引脚:00表示输入、01表示输出、10表示特殊功能、11保留不用。

 

2. GPxDAT寄存器

       GPxDAT用于读/写引脚;当引脚被设为输入时,读此寄存器可知相应引脚的电平状态是高还是低;当引脚被设为输出时,写此寄存器相应位可以令此引脚输出高电平或是低电平。

 

3. GPxUP寄存器

       GPxUP:某位为1时,相应引脚无内部上拉电阻;为0时,相应引脚使用内部上拉电阻。

       上拉电阻的作用在于:当GPIO引脚处于第三态(即不是输出高电平,也不是输出低电平,而是呈高阻态,即相当于没接芯片)时,它的电平状态由上拉电阻、下拉电阻确定。

 

0 0