众所周知,STM32当复位以后,gpio默认是高阻状态,也就是浮空输入。
由STM32切换到LPC1788,发现LPC的IO未初始化时输出高电平,初始化后才能拉低,这样和STM32的设计就不兼容了。
分析
查LPC数据手册后,发现:
复位状态为输入模式,上拉模式。
后面也有具体说明,IO口的默认配置为带上拉的输入模式。由一个弱MOS提供弱上拉能力。
解决
1、既然是内部带了弱上拉,那么可以直接外部加稍微强一点的下拉,把电平拉下来。经过试验外部加5.1K的下拉电阻即可把电平拉到0.3V,可满足我的需求。
2、可以外加反向电路,把默认的高电平变为低电平。