驱动器用来增强驱动能力(加强电压)
寄存器是32位的,但是只用到了低16位
GPIO挂载在APB2总线上
保护二极管(用于将电压钳定在一定范围):
I/O引脚当输入电压大于VDD时电流会被上面的二极管引走
当小于VSS时电流会被下面二极管引走
浮空输入、上拉输入、下拉输入控制电路:
当两个开关都断开,就是浮空输入模式,当IO口不输入东西的时候电压不确定
当上面开关闭合下面断开,是上拉输入,当IO口不输入东西的时候默认高电平/高电压输入
当上面开关断开下面闭合,是下拉输入,当IO口不输入东西的时候默认低电平/低电压输入
施密特触发器:
当输入电压到达某一阈值设置为高电平,低于某一阈值设置为低电平(数字信号)
例如:
红线是输入的信号,上面绿线是高电平的阈值,下面绿线是低电平的阈值
因为施密特触发器之前的信号刚好是模拟信号所以:
在施密特触发器之后的信号就是数字信号了
输出模式控制电路:
两个三极管都开启的话就是推挽输出模式(强驱动模式,此时高电平=高电压,低电平=低电压)
上面三极管关闭下面二极管打开的话就是开漏输出模式(一般用于通信接口的输出状态,干扰较少,此时高电平=高阻态,低电平=低电压)
上下两个三极管均关闭的状态就是没有输出只有输入(输出的状态一直是高阻态(高低电平都是高阻态))