普通8051单片机上电复位时普通I/O口因有上拉电阻,输出高电平。但在实际应用中往往要求上电复位时某些I/O为低电平,否则控制系统的继电器、电机等就会动作。这时介绍两种行之有效而且简单的方法:
很多增强型单片机产I/O有四种配置:准双向口,开漏输出,推挽输出和高阻配置,而默认为准双向口配置,也就是标准8051的I/O口,这种配置的输出电流为200uA左右,如果将这个I/O能过一电阻连接到地,如下图。
从图中可以看出I/O的最大输出电压为:U=200uA×1K=0.2V,这个值在大多数单片机中属逻辑低电平,同时这个值也不能驱动硅NPN型三极管。等初始化完成后,可以将I/O配置为推挽输出,这个配置可输出20mA的电流,如果电源为5V,这个电阻也只吸收5mA的电流,所以输出为高,可以驱动三极管,继电器等器件。这个电阻的阻值可适当调整,多个I/O时可用排阻。
如果为普通8051单片机,也就是不能配置I/O,这时就可以通过拉低I/O来使复位I/O为你电平,如下图。
因为上电进所在I/O均为高电平,所以通过8050驱动,可将I/O拉低,多个I/O时,R1可用排阻。