我用一款芯片的一个推挽输出的IO口接stm32的IO口,stm32的IO口设置为输入上拉。推挽口给stm32的IO口一个由低到高的信号,但stm32却无法识别中断。后来我接上示波器测试,结果中断可以了。我就根据示波器探头的原理,接上一个1M的弱下拉电阻,结果就可以了。问题是解决了,但原理还是没搞懂。
一下是我的分析:
1、上升沿时间问题?但我测量了有无弱下拉电阻的上升沿时间,差不多都是12个ns左右
2、会不会是stm32对电平翻转的电流有一定的要求?因为推挽输出的电流过大?但我在datasheet上没有找到这方面的资料
3、其他。。。
如果分析出了真正原因,可否用软件来解决? |