STM32芯片IO口状态设置错误一定会影响程序功能吗?
STM32芯片IO口状态设置错误不一定会影响程序功能。具体原理我不懂,但是我确实遇到了这种情况,给大家分享一下吧。用STM32F103芯片去驱动墨水屏,总共就用到了6个IO口,分别作为SCL,SDA,CS,REST,DC,BUSY使用,用20P的灰色排线将这6个IO口连接到墨水屏驱动板上面。
出现问题:
前期一直都是STM32芯片驱1个屏幕时没有任何问题,但是最近需要投RA测试了,需要将5个屏幕及其周边电路并联驱动。并联驱动时就出问题了,当灰色排线缩短(约5cm)可以正常驱动,增长后(约15cm)就无法正常显示,会刷一个画面然后漏掉几个画面。
硬件测试:
所有点位的电流、电压及信号时序,单独和5个并联的是一模一样。
最后没有办法只能让软件找下程序方面的原因,但由于这个项目更新了几代了,程序员也更换了好几个,所以这个程序并不完全是他写的,他前前后后也看了一天,没有发现任何问题。并且他的依据是之前从没有这种问题,所以还是偏向硬件的原因。
最后结局:
最后部门经理知道了这事,他直觉也是软件这边有问题。把代码一行一行撸完后,才发现有一个cs信号(片选信号,高电平有效),程序设置为上拉输入状态!!乍一看是不是没问题??但是STM32是主机,对于STM32来说应该是输出才对!
更改该IO口状态设置后测试,果然不再出现异常。
疑问:MCU的IO口设置状态错误,为什么1V1的时候从来没发现问题,1V5的时候确实100%异常?希望有懂的大佬给解惑一二。 看你的描述,应该是被设为开漏输出带上拉了吧?弱上拉1V1输出时勉强能应付,1V多时上拉驱动力不足,上升沿延迟导致异常。 1V1的时候可能拉力是够的。 IO配置成输入,正常来说应该是不能控制输出,这里可能是内部电路的问题。 dalarang 发表于 2023-5-12 14:35
看你的描述,应该是被设为开漏输出带上拉了吧?弱上拉1V1输出时勉强能应付,1V多时上拉驱动力不足,上升沿 ...
看他描述好像是输入上拉,所以感觉是有点问题的。 那个CS脚配置为输入的话,对外就相当于断路了【高阻态】。
此时跟CS脚相连处的电平由那个上拉和外部电路决定。 另外,你说的1.1v 1.5V是怎么回事,哪里来的。 输出带上拉了? 这个不一定,关键还是看接的什么外设。 要看外设吧,有时候上拉下拉配置错也没事情
电阻属于一个普通的元件
并且考虑到TVS相同的尺寸
板与板(或空板)之间用邮票孔连接
当异常过压消失,恢复至高阻态
微控制器、数字信号控制器和处理器都具有内部的ESD钳位二极管
ESD电压一般超过导通电压
模块电源选购灌封材料的时候,需要注意导热系数要能达到电子部件散热的需求,不过粘接能力不太强
可能击穿开关器件,
如果想要让它正常工作且不会损坏
变压器副边同时对负载供电。
页:
[1]