×
单片机 > 单片机程序设计 > 详情

51单片机的IO口操作基础知识介绍

发布时间:2024-05-25 发布时间:
|

以我们常用的STC单片机为例:STC单片机所有IO口均可由软件配置成4种工作类型。4种类型分别为:准双向口/弱上拉(标准8051输出模式)、强推挽输出/强上拉、仅为输入(高阻)或开漏输出功能。每个口有2个寄存器中的相应位控制每个引脚的工作类型。上电复位后的工作模式为准双向/弱上拉模式。2V以上为高电平,0.8V以下为低电平,每个I/O口驱动能力可以达到20mA。


那么我们通过配置哪两个寄存器来设定I/O口的工作模式呢:这两个寄存器就是PxM1和PxM0,P0口对应的就是P0M1和P0M0,P1口对应的就是P0M1和P0M0,P2口对应的就是P0M1和P0M0,P3口对应的就是P0M1和P0M0。以P0口的设置为例:

如果有P0M1为10100000;P0M0为11000000,我们对照上表可以知道:P0.7管脚为开漏输出;P0.6为强推挽输出;P0.5为输入(高阻);P0.4到P0.0为准双向口。


单片机I/O控制电路典型接法:

1、典型三极管控制电路

如果用弱上拉控制,建议加上拉电阻R1(3.3K - 10K),如果不加上拉电阻R1,建议R2的阻值在15K以上,或用强推挽输出。


2、典型发光二极管控制电路

采用准双向口模式,用灌电流驱动发光二极管限流电阻尽量大于1K,最小不要小于470Ω。

推挽/强上拉口模式,用拉电流驱动发光二极管,限流电阻一般为1K。

3、混合电压供电系统3V/5V器件I/O口互连

STC单片机如果供电是5V,当它连接3.3V器件时,为防止3.3V器件承受不了5V,可将相应的5V单片机I/O口先串一个330Ω的限流电阻到3.3V器件I/O口,程序初始化时将5V器件的I/O口设置成开漏配置,断开内部上拉电阻,相应的3.3V器件I/O口外部加10K上拉电阻到3.3V器件的VCC,这样高电平是3.3V,低电平是0V,输入输出一切正常。


4、当I/O口作为PWM输出I/O口时,需要设置成强推挽输出/强上拉输出,同时加输出限流电阻10K即可。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
用PIC16F627制作的可调倒计时提醒器