STM32之GPIO
学完了正点原子自带的视频课之后感觉仍然一知半解现在更新一下来自其他版本的STM32学习
GPIO 就是 General Purpose Input Output 中文名叫通用输入输出口
可配置8种输入输出模式
引脚电平 0V~3.3V 部分引脚可容忍5V
输出模式下可控制端口输出高低电平,用以驱动LED,控制蜂鸣器,模拟通信协议输出时序等
输入模式下可读取端口的高低电平或电压,用于读取按键输入,外接模块电平信号输入,ADC电压采集,模拟通信协议接收数据等等
在STM32中,所有的GPIO总线都是挂载在APB2总线上的
GPIO是一个总称
里面的GPIO外设也分 GPIOA GPIOB… 每个GPIO外设都有16个引脚 第0号引脚叫PA0 依次往下 PA1 等等 那么对于GPIOB 就会是PB0 PB1 PB2 一直到PB15
GPIO内部是由寄存器和驱动器共同组成的 寄存器的每一位都对应着驱动器以及后续输出端口的一位
GPIO的内部结构会带上一个施密特触发器
施密特触发器起到了整型波形的作用
施密特触发器会在低于下限变为低,再当高于上限时 立马升为高
对于施密特触发器来说,只有触碰到高于上限和低于下限 这两种情况 才会对电压发生变化
我们通过配置GPIO的端口寄存器,可以将端口设置成8种模式