得帮小赵
每个通用 I/O 端口包括 4 个 32 位配置寄存器(GPIOx_MODER、GPIOx_OTYPER、GPIOx_OSPEEDR 和 GPIOx_PUPDR)、2 个 32 位数据寄存器(GPIOx_IDR 和GPIOx_ODR)、1 个 32 位置位/复位寄存器 (GPIOx_BSRR)、1 个 32 位锁定寄存器(GPIOx_LCKR) 和 2 个 32 位复用功能选择寄存器(GPIOx_AFRH 和 GPIOx_AFRL)。二、GPIO主要特性●受控 I/O 多达 16 个● 输出状态:推挽或开漏 + 上拉/下拉● 从输出数据寄存器 (GPIOx_ODR) 或外设(复用功能输出)输出数据● 可为每个 I/O 选择不同的速度● 输入状态:浮空、上拉/下拉、模拟● 将数据输入到输入数据寄存器 (GPIOx_IDR) 或外设(复用功能输入)● 置位和复位寄存器 (GPIOx_BSRR),对 GPIOx_ODR 具有按位写权限● 锁定机制 (GPIOx_LCKR),可冻结 I/O 配置● 模拟功能● 复用功能输入/输出选择寄存器(一个 I/O 最多可具有 16 个复用功能)● 快速翻转,每次翻转最快只需要两个时钟周期● 引脚复用非常灵活,允许将 I/O 引脚用作 GPIO 或多种外设功能中的一种三、GPIO 8种功能模式● 输入浮空 ● 输入上拉 ● 输入下拉 ● 模拟功能● 具有上拉或下拉功能的开漏输出 ● 具有上拉或下拉功能的推挽输出● 具有上拉或下拉功能的复用功能推挽 ● 具有上拉或下拉功能的复用功能开漏四、GPIO寄存器配置寄存器GPIOx_MODER 寄存器用于选择 I/O 方向(输入、输出、AF、模拟)GPIOx_OTYPER 选择输出类型(推挽或开漏)GPIOx_OSPEEDR 选择速度 (无论采用哪种 I/O 方向,都会直接将 I/O 速度引 脚连接到相应的 GPIOx_OSPEEDR 寄存器位)GPIOx_PUPDR 无论采用哪种 I/O 方向,GPIOx_PUPDR都用于选择上拉/下拉。数据寄存器GPIOx_ODR 用于存储待输出数据,可对其进行读/写访问。GPIOx_IDR 通过 I/O 输入的数据存储到输入数据寄存器GPIOx_IDR中,它是一个只读寄存器。数据位操作GPIOx_BSRR 32 位寄存器,允许应用程序在输出数据寄存器(GPIOx_ODR) 中对各个单独的数据位执行置位和复位操作。在 GPIOx_BSRR 中向任何位写入 0 都不会对 GPIOx_ODR 中的对应位产生任何影响。如果在 GPIOx_BSRR 中同时尝试对某个位执行置位和清零操作,则置位操作优先。当对GPIOx_BSRR低16位置1时相应的ODR置1当对高16位置1时清零相应的ODR位锁定寄存器GPIOx_LCKR GPIOx_LCKR 寄存器,可以冻结 GPIO 控制寄存器。冻结的寄存器包括 GPIOx_MODER、GPIOx_OTYPER、GPIOx_OSPEEDR、GPIOx_PUPDR、GPIOx_AFRL 和 GPIOx_AFRH。复用寄存器GPIOx_AFRL 和 GPIOx_AFRH 复用功能寄存器在每个 GPIO 上复用多个可用的外设功能。这样一来,应用程序可为每个 I/O 选择任何一个可用功能。由于 AF 选择信号由复用功能输入和复用功能输出共用,所以只需为每个 I/O 的复用功能输入/输出选择一个通道即可。
卡布奇诺有点
Copyright © 1999-2020, CSDN.NET, All Rights Reserved打开APP摆渡沧桑关注数字电路基础知识—— IO外设之GPIO介绍 原创2019-08-06 17:07:09 5点赞摆渡沧桑 码龄5年关注数字电路基础知识—— IO外设之GPIO介绍一、GPIO 原理GPIO,英文全称为 General-Purpose IO ports,也就是 通用IO口。嵌入式系统中常常有数量众多,但是结构却比较简单的外部设备/电路,对这些设备/电路有的需要CPU为之提供控制手段,有的则需要被CPU用作输入信号。而且,许多这样的设备/电路只要求一位,即只要有开/关两种状态就够了,比如灯亮与灭。对这些设备/电路的控制,使用传统的串行口或并行口都不合适。所以在微控制器芯片上一般都会提供一个“通用可编程IO接口”,即GPIO。接口至少有两个寄存器,即 “通用IO控制寄存器” 与 “通用IO数据寄存器”。一个是做控制的通用IO端口控制寄存器,另外一个是存放数据的通用IO端口数据寄存器。即数据寄存器的各位都直接引到芯片外部,与GPIO引脚一一对应,而对这种寄存器中每一位的作用,即每一位的信号传递方向,则可以通过控制寄存器中对应位独立的加以设置。这样,有无GPIO接口也就成为微控制器区别于微处理器的一个特征。二、GPIO相关的寄存器1)GPxCON寄存器它用于配置引脚的功能,GPACON中每一位对应一根引脚当某位为0时,对应引脚为输出,此时在GPADAT中相应位写入0或1,让此引脚输出低电平或高电平;当某位被设为1时,对应引脚为地址线或用于地址控制,此时GPADAT保留不用。2)GPxDAT寄存器GPxDAT用于存储引脚值(读和写)。当引脚被设为输入时,读此寄存器得到对应引脚的电平状态是高还是低;当引脚被设为输出时,写此寄存器相应位可令此引脚输出高低电平。
伊可grace
LED的亮与灭,或者继电器之类的开和关,设备串口里输入 gpio -i 13 可以查看状态 0表示断开 1表示闭合 gpio -i 13 -o 0 关闭,gpio -i 13 -o 1 闭合
有前有钱
gpio什么时候是数字寄存器什么时候是外设寄存器?回答如下:在寄存器电路稳定的时候外设数字寄存器更加合理,解决问题的方案合理,问题的期望值高,网友的认可度高,感谢采纳!
tianyaguke1968
GPIO,通用I/O端口。
在嵌入式系统中,经常需要控制许多结构简单的外部设备或者电路,这些设备有的需要通过CPU控制,有的需要CPU提供输入信号。
对设备的控制,使用传统的串口或者并口就显得比较复杂,所以,在嵌入式微处理器上通常提供了一种“通用可编程I/O端口”,也就是GPIO。
一个GPIO端口至少需要两个寄存器,一个做控制用的“通用IO端口控制寄存器”,还有一个是存放数据的“通用I/O端口数据寄存器”。
数据寄存器的每一位是和GPIO的硬件引脚对应的,而数据的传递方向是通过控制寄存器设置的,通过控制寄存器可以设置每一位引脚的数据流向。
GPIO的优点(端口扩展器):
1、低功耗:GPIO具有更低的功率损耗(大约1μA,μC的工作电流则为100μA)。
2、集成IIC从机接口:GPIO内置IIC从机接口,即使在待机模式下也能够全速工作。
3、小封装:GPIO器件提供最小的封装尺寸 ― 3mm x 3mm QFN!
4、低成本:您不用为没有使用的功能买单。
5、快速上市:不需要编写额外的代码、文档,不需要任何维护工作。
6、灵活的灯光控制:内置多路高分辨率的PWM输出。
7、可预先确定响应时间:缩短或确定外部事件与中断之间的响应时间。
8、更好的灯光效果:匹配的电流输出确保均匀的显示亮度。
9、布线简单:仅需使用2条就可以组成IIC总线或3条组成SPI总线。
10、与ARM 的几组GPIO引脚,功能相似,GPxCON 控制引脚功能,GPxDAT用于读写引脚数据。另外,GPxUP用于确定是否使用上拉电阻。 x为A,B,,H/J。
11、GPAUP 没有上拉电阻。
百度百科-gpio
优质英语培训问答知识库