单片机通电后所有接口都是高电平吗?

在MSP430单片机的手册中,对于端口复位后的状态,是这样描述的:复位后,所有端口处于输入状态。

就这个问题,我们来简单说一下单片机上电复位后端口的状态问题。

“”

首先,单片机上电后尽量避免端口处于输出状态(无论是输出低还是输出高)。

为什么要这样说呢?因为单片机外围电路的动作就是靠单片机端口输出低电平或者高电平来控制的。假如单片机端口一上电就处于输出高或者低电平的状态,那么很容易出现误动作。例如,有一个端口是控制继电器的,在正常状态下,单片机端口输出低电平会使得继电器吸合,输出高电平会断开继电器。平时我们要求继电器处于断开状态,那就要让单片机的这个端口处于输出高电平的状态,但是如果这个单片机的端口在上电复位后是处于输出低电平的状态,这时候就会出问题:即使我们在程序中一开始就把这个端口置为输出高电平,但是在复位期间,这个端口的状态我们是无法控制的,于是就会出现一个瞬间的低电平。虽然这个低电平持续的时间很短,有时候不足以使继电器吸合,但继电器仍会有轻微的吸合动作。这显然是我们不希望看到的。

有些单片机复位后端口默认为输入口的原因

前面我们说了,单片机上电后,如果端口默认为输出口,那么不管是输出低电平还是高电平,都可能会引起误动作,甚至会产生致命后果。

而假如端口上电后默认为输入口呢?我们知道,单片机的输出控制操作一般都是根据输入信号来实现的。这样的话,就会好很多,我们可以根据输入情况做处理,尤其是对于瞬间的输入,我们可以通过软件抗干扰技术来进行过滤,这样我们就能自己掌握主动,不让误操作发生。

单片机复位后端口处于高阻态的原因

单片机复位后端口处于高阻态的原因无外乎降低功耗和安全性的原因。但是在程序中,对于单片机复位后的状态,也要有合理的分配,例如不能让端口一直处于高阻态,这种状态容易引起电流变化(我们在设计中发现,如果端口处于高阻态,会导致静态电流不稳定),当然端口状态的设置要与硬件电路配合,对于不用的端口,建议设置为输出。(MSP430数据手册中介绍:不用的端口,建议设置为输出,至于输出高电平还是低电平,这两者区别不大,因为这些端口没有连接任何外部器件。)

电路中也一样,要根据实际情况设置上拉或者下拉电阻等等。

本文转载自:玩转单片机
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理。

点击这里,获取更多关于应用和技术的有关信息
点击这里,获取更多工程师博客的有关信息

推荐阅读