打印

STC 51 单片机 IO初始化后IO输出逻辑不确定?

[复制链接]
1932|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xmar|  楼主 | 2015-6-1 16:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我们用的STC90C58RD上电初始化后,偶尔IO输出改变逻辑。比如初始化0,偶尔变成1,或相反;重新关电、加电故障依旧。只有重新烧写程序后,故障消失,也有加大上电复位时间故障消失的。这个问题困扰我们很久了。如何解决?

相关帖子

沙发
ningling_21| | 2015-6-1 16:53 | 只看该作者
端口输出的状态复位过后就会受程序的控制,首先看看程序和复位电路

使用特权

评论回复
板凳
ayb_ice| | 2015-6-1 16:54 | 只看该作者
应该不可能吧,
一个GPIO都能有问题,
仔细看手册

使用特权

评论回复
地板
xmar|  楼主 | 2015-6-1 17:23 | 只看该作者
ningling_21 发表于 2015-6-1 16:53
端口输出的状态复位过后就会受程序的控制,首先看看程序和复位电路

复位电路由电阻电容改为MAX810后,好像没有出现这个故障了。不能完全肯定是因为这个故障需要更长的时间、更多测试样本才能确定。

使用特权

评论回复
5
xmar|  楼主 | 2015-6-2 09:17 | 只看该作者
ayb_ice 发表于 2015-6-1 16:54
应该不可能吧,
一个GPIO都能有问题,
仔细看手册

看STC手册哪些内容?请教。

使用特权

评论回复
6
ayb_ice| | 2015-6-2 10:37 | 只看该作者
xmar 发表于 2015-6-2 09:17
看STC手册哪些内容?请教。

没有用过这个芯片,只是感觉一个芯片的GPIO不可能有问题的

当然是看相关部分了

使用特权

评论回复
7
NE5532| | 2015-6-2 13:15 | 只看该作者
找软硬件相关问题,正常设计下不可能出现。

使用特权

评论回复
8
wxw5766| | 2015-6-2 14:57 | 只看该作者
原理图贴出来,很有可能电路问题。

使用特权

评论回复
9
ningling_21| | 2015-6-2 17:15 | 只看该作者
xmar 发表于 2015-6-1 17:23
复位电路由电阻电容改为MAX810后,好像没有出现这个故障了。不能完全肯定是因为这个故障需要更长的时间、 ...

这说明:复位完成之前的状态不确定,而不是初始化之后的状态不确定

使用特权

评论回复
10
xmar|  楼主 | 2015-6-3 10:27 | 只看该作者
ningling_21 发表于 2015-6-2 17:15
这说明:复位完成之前的状态不确定,而不是初始化之后的状态不确定

如果仅仅是复位完成之前的状态不确定,但最终IO输出电平总是由MCU内部代码初始化IO口为输出口高或低决定的才对。而且出错后输出电平不会再改变,除非重新烧写程序。非常奇怪。很像IO输出硬件坏掉了。我们一台设备要用15~16只STC 51系列单片机,并非每个单片机都会发生这个故障,只是偶尔某台设备的某(并不固定)一个单片机出这个故障。结果设备故障表现各异,有设备无法通讯的、有泵不转动的、有电磁阀不能正确开关的。。。等等不一而足。好多设备是到了用户手中才出现,在家测试一点问题没有。

使用特权

评论回复
11
ningling_21| | 2015-6-3 10:40 | 只看该作者
xmar 发表于 2015-6-3 10:27
如果仅仅是复位完成之前的状态不确定,但最终IO输出电平总是由MCU内部代码初始化IO口为输出口高或低决定 ...

管脚坏掉也有可能,只能换其它厂家的芯片试试,看是否有通样的问题存在

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

168

主题

5752

帖子

71

粉丝