问题描述:测试
最近碰到一个问题,stm32用485输出,可是只有输出,输入的数据stm32接收不到:it
测试描述:数据
测试485的dir口是 3.3v,悬空的话通常引脚电平是0或1电平;dir接的stm32的PC6,PC6用GPIO_ResetBits()设置的低电平di
然而接上去以后呢,测量的是3.3v,所以板子只能发送,不能接收时间
解决方案:解决方案
检查了以后发现PC6-9没有初始化,怎么办呢,因此我就初始化推挽输出,也叫下拉输出,开漏输出是上拉输出,
推挽输出:内部给个0,至关于接GND,给个1至关于接VCC
开漏输出:内部给0,接GND,给1的话须要外接上拉电阻才能为1
而后就这样解决了,可是有个问题是输出的少了一个字节,而后我就延迟一个字节时间吧dir置0;
its over,其实不少问题想一想就知道怎么回事了,多动动脑子,和聪明人玩玩,这样就会变得更加聪明。