一个cpu,在复位信号有效时候(上电时候电路正常都设计为先复位),IO状态肯定是确定的。因为复位的一个重要作用,就是置各个寄存器为初始状态,以便从已知状态开始执行代码。
51单片机复位时候,IO口都自动为输入状态。因为51机IO是准输入口,所以被设置成电平1。一般人习惯采用正逻辑,输出1时候就是置继电器为吸合,所以会有上电时候继电器吸合一下的动作。即使程序一开始就将输出口设置成0,但是在复位阶段,这时候程序还没有被执行,所以肯定还会有继电器吸合动作。
解决的办法就是用输出0来驱动继电器。这样即使在cpu复位阶段,IO=1,继电器驱动也是无效,就不会有误动作了。
这个问题其实很简单,但是回复的贴子大多莫名其妙,说明还是没有掌握要领。 |