已解决
嵌入式开发笔记:STM32的外设GPIO知识学习
来自网友在路上 198898提问 提问时间:2023-09-24 06:56:14阅读次数: 98
最佳答案 问答题库988位专家为你答疑解惑
GPIO简介:
• GPIO ( General Purpose Input Output )通用输入输出口• 可配置为 8 种输入输出模式• 引脚电平: 0V~3.3V ,部分引脚可容忍 5V (如舵机和驱动直流电机)• 输出模式下可控制端口输出高低电平,用以驱动 LED 、控制蜂鸣器、模拟通信协议输出时序等• 输入模式下可读取端口的高低电平或电压,用于读取按键输入、外接模块电平信号输入、 ADC 电压采集、模拟通信协议接收数据等
GPIO基本结构:
GPIO位结构:
GPIO模式:
提示:
通过配置GPIO的端口配置寄存器,端口可以配置成以下8种模式
模式名称
性质
特征
浮空输入
数字输入
可读取引脚电平,若引脚悬空,则电平不确定
上拉输入
数字输入
可读取引脚电平,内部连接上拉电阻,悬空时默认高电平
下拉输入
数字输入
可读取引脚电平,内部连接下拉电阻,悬空时默认低电平
模拟输入
模拟输入
GPIO无效,引脚直接接入内部ADC
开漏输出
数字输出
可输出引脚电平,高电平为高阻态,低电平接VSS
推挽输出
数字输出
可输出引脚电平,高电平接VDD,低电平接VSS
复用开漏输出
数字输出
由片上外设控制,高电平为高阻态,低电平接VSS
复用推挽输出
数字输出
由片上外设控制,高电平接VDD,低电平接VSS
浮空/上拉/下拉输入:
模拟输入:
开漏/推挽输出 :
复用开漏/推挽输出
GPIO库函数 :
函数名
描述
GPIO_DeInit
将外设 GPIOx 寄存器重设为缺省值
GPIO_AFIODeInit
将复用功能(重映射事件控制和 EXTI 设置)重设为缺省值
GPIO_Init
根据 GPIO_InitStruct 中指定的参数初始化外设 GPIOx 寄存器
GPIO_StructInit
把 GPIO_InitStruct 中的每一个参数按缺省值填入
GPIO_ReadInputDataBit
读取指定端口管脚的输入
GPIO_ReadInputData
读取指定的 GPIO 端口输入
GPIO_ReadOutputDataBit
读取指定端口管脚的输出
GPIO_ReadOutputData
读取指定的 GPIO 端口输出
GPIO_SetBits
设置指定的数据端口位
GPIO_ResetBits
清除指定的数据端口位
GPIO_WriteBit
设置或者清除指定的数据端口位
GPIO_Write
向指定 GPIO 数据端口写入数据
GPIO_PinLockConfig
锁定 GPIO 管脚设置寄存器
GPIO_EventOutputConfig
选择 GPIO 管脚用作事件输出
GPIO_EventOutputCmd
使能或者失能事件输出
GPIO_PinRemapConfig
改变指定管脚的映射
GPIO_EXTILineConfig
选择 GPIO 管脚用作外部中断线路
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"嵌入式开发笔记:STM32的外设GPIO知识学习":http://eshow365.cn/6-12591-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!