首先做个总结,然后在分析原理
GPIO分为输入引脚与输出引脚
1.输出引脚: 写值给寄存器1--->引脚输出高电平
2.输入引脚: 外部输入高电平-->寄存器置1
下图为分析原理图,此图仅供参考,并非实际电路,但是原理相通
另外,在网上找到一段话
GPIO做输出使用时要加上拉电阻,因为默认的是漏极开路,高阻态,无法输出高电平。
而在输入时要根据外围电路选择是否设置上拉电阻:
在外接电路能提供高低电平时可不加上拉电阻,比如作为第二功能的ADC输入,或作为地址总线时;
而且作为ADC输入时若加上上拉电阻,还会影响ADC的测量(这句话不是很理解,等以后做到了在说,这里猜测可能是影响电流或者电压的值)。
当外接电路能不能提供高和低电平时加上拉电阻,比如作为按键输入时,如不加上拉电阻,只能输入低电平,无法输入高电平。