四 GPIO输入与输出
TTL肖特基触发器:电信号转变为数字信号
N-Mos管:输入为1时打开,0时截止
P-Mos管:输入为1时截止,0时打开
输出控制前有一个反向器
模式简介
输入模式:模拟输入模式,浮空输入模式(不使用上拉下拉电阻),上拉/下拉输入模式
输出模式:通用推挽输出,通用开漏输出 ,复用推挽输出,复用开漏输出
推挽输出:使用两个Mos管,输出为1——经反相器为0——P-Mos导通——最后输出1
输出为0——经反相器为1——N-Mos管开——最后输出0
开漏输出:只使用N-Mos。输出为0——经反相器为1——N-Mos导通——最后输出0
输出为1——经反相器为0——N-Mos截止——相当于高阻抗断路(什么都没 输出)
输入输出配置流程:
1 打开相应端口时钟
void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState)
2 初始化端口(配置输入输出模式,端口引脚,输出速度)
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct)
3读取IDR寄存器(输入寄存器)以及设置读取ODR(输出寄存器)
uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef*