产品概述

单片机的i 详解单片机的IO接口

小编 2024-10-06 产品概述 23 0

详解单片机的IO接口

MCS-51系列单片机有4组I/O接口:P0、P1、P2和P3。前面简单介绍了一下各个端口,要学好单片机技术,非常有必要详细了解这些端口的内部结构及工作原理。

P0端口

P0 端口有 P0.0~P0.7 共 8 个引脚,这些引脚除了可作 I/O 引脚外,在外接存储器时,还可作地址 / 数据总线引脚。 P0端口每个引脚的内部电路结构都相同,其内部电路结构如图2-6所示。

图2-6 P0端口内部电路结构

(1)当P0端口用作输出端口时

如果要将P0端口用作输出端口,单片机内部的CPU会发出一个“0”到与门的控制端。控制端的“0”一方面关闭与门(即与门的一端为“0”时,不管另一端输入何种信号,输出都为“0”),使地址/数据总线送来的信号无法通过与门;另一方面控制电子开关,让电子开关与锁存器的Q端接通。

此时若给锁存器的写锁存器端送写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q和Q端输出,如D端输入“1”,则Q端输出“0”(Q端输出“1”),该“0”经电子开关送到场效应管VT2的栅极,VT2截止,从P0端口输出“1”。

也就是说,当给P0端口内部的与门控制端送“0”,同时给写锁存器端送写脉冲信号时,单片机内部总线的信号就可以通过接口电路从P0端口输出。

(2)当P0端口用作输入端口时

当将P0端口用作输入端口时,P0端口的信号既送到三态门,又送到VT2的漏极。如果锁存器之前锁存的为“0”,即Q=0、Q=1,其中Q=1会使VT2导通,P0端口被钳在“0”电平上,“1 ”将无法送入P0端口。

解决的方法是:在将数据输入P0端口前,先通过内部总线向锁存器写“1”,即让Q=0,VT2截止,P0端口输入的“1”就可以送到三态门的输入端,此时再给三态门的读引脚送一个读控制信号,“1”就可以通过三态门送到内部总线。

也就是说,要将P0端口作为输入端口,先要将P0端口的锁存器写“1”,然后再给输入三态门送读控制信号,P0端口的数据就可以通过接口电路,送到单片机内部的总线上。

(3)当P0端口用作地址/数据总线引脚时

如果要将P0端口用作地址/数据总线引脚,先要给与门的控制端送“1”,于是与门打开,同时电子开关和非门输出端接通。当地址/数据总线为“1”时,“1”一方面通过与门送到VT1的栅极,VT1导通,另一方面送到非门,经反相变为“0”,再经电子开关送到VT2的栅极,VT2截止,VT1导通,VT2截止使P0端口输出为“1”;当地址/数据总线为“0”时,VT1导通,VT2也导通,P0端口输出为“0”。

也就是说,当给与门的控制端送“1”时,内部地址/数据总线上的信号就可以从P0端口输出,P0端口就可当作地址/数据总线引脚使用。

P1端口

P1 端口有 P1.0~P1.7 共 8 个引脚,这些引脚可作 I/O 引脚。 P1端口每个引脚的内部电路结构都相同,其内部电路结构如图2-7所示。

图2-7 P1端口内部电路结构

从图2-7中可以看出,P1端口的结构较P0端口简单很多,由于P1端口内部采用了一只场效应管,并且与电源之间接了一只上拉电阻,所以不需要在P1端口的外部接上拉电阻。

(1)当P1端口用作输出端口时

如果要将P1端口用作输出端口,应给锁存器的写锁存器CL端送写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q和Q端输出,如D端输入“1”,则Q端输出“0”(Q端输出“1”),该“0”送到场效应管的栅极,场效应管截止,从P1端口输出“1”。

(2)当P1端口用作输入端口时

当将P1端口用作输入端口时,如果锁存器以前锁存的为“0”,即Q=0、Q=1,其中Q=1会使场效应管导通,P1端口被钳在“0”电平上,“1”将无法送入P1端口。所以与P0端口一样,在将数据输入P1端口前,先要通过内部总线向锁存器写“1”,让Q=0,场效应管截止,P1端口输入的“ 1”就可以送到输入三态门的输入端,此时再给三态门的读引脚送一个读控制信号,“1”就可以通过输入三态门送到内部总线。

P2端口

P2端口有P2.0~P2.7共8个引脚,P2端口每个引脚的内部电路结构都相同,其内部电路结构如图2-8所示。

图2-8 P2端口内部电路结构

从图2-8中可以看出,P2端口的内部结构与P0端口很相似。P2 端口也可作 I/O 引脚,在外接存储器时,还可以作为地址总线引脚。

(1)当P2端口用作地址总线引脚时

如果要将P2端口用作地址总线引脚,单片机内部的CPU会发出一个控制信号到电子开关的控制端,让电子开关与内部地址总线接通,地址总线上的信号就可以在通过电子开关、非门和场效应管后从P2端口引脚输出。

(2)当P2端口用作I/O接口时

如果要将P2端口用作I/O接口,单片机内部的CPU会发出一个控制信号到电子开关的控制端,让电子开关与锁存器接通。

当将P2端口用作输出端口时,给锁存器的CL端送写脉冲信号,内部总线上的数据就被锁存进锁存器并从Q端输出,再通过电子开关、非门和场效应管从P2端口引脚输出。

当将P2端口用作输入端口时,如果锁存器以前锁存的为“0”,即Q=0,经非门反相后会使场效应管导通,P2端口被钳在“0”电平上,“1”将无法送入P2端口。所以与P0、P1端口一样,在将数据输入P2端口前,先通过内部总线向锁存器写“1”,让Q=1,场效应管截止,P2端口输入的“1 ”就可以送到输入三态门的输入端,此时再给读引脚送一个读控制信号,“1”就可以通过三态门送到内部总线。

P3端口

P3 端口有 P3.0~P3.7 共 8 个引脚, P3 端口可作为 I/O 接口,还可以用于其他方面。P3端口每个引脚的内部电路结构都相同,其内部电路结构如图2-9所示。

图2-9 P3端口内部电路结构

(1)当P3端口用作I/O接口时

如果要将P3端口用作I/O接口,应让与非门的选择输出功能端为“1”,以开通与非门。

当将P3端口用作输出端口时,给锁存器的CL端送写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q端输出,再通过与非门和场效应管从P3端口引脚输出。

当将P3端口用作输入端口时,应先通过内部总线向锁存器写“1”,让Q=1,场效应管截止,P3端口输入的信号就可以通过缓冲器、输入三态门送到内部总线。

(2)当P3端口用作第二功能时

P3端口用作第二功能(又称复用功能)时,实际上也是在该端口输入或输出信号,只不过输入、输出的是一些特殊功能的信号。所以当P3端口用作第二功能时,其内部电路的工作原理与用作I/O接口时是一样的,在用作输入功能时,端口的锁存器同样要先置“1”。

P3端口8个引脚的第二功能详见表2-1。例如P3.2引脚用作第二功能时,该端口可输入由外部设备送到的中断请求信号,该信号通过缓冲器、输入三态门送到内部总线。

P3端口除了可以接收外界的输入信号外,还可以接收内部的替代输入功能端送来的信号,该信号通过输入三态门送到内部总线。

总之,P0、P1、P2 和 P3 端口的功能是:都可以作输入或输出端口; P0、P2、P3 端口具有第二功能,各种端口的第二功能见表2-1。例如,表中说明P0端口的第二功能可以用作低8位地址总线/ 数据总线,P2端口可用作高8位地址总线,P3.0端口可用作串行数据接收端。

表2-1 MCS-51系列单片机各端口的第二功能

单片机的组成以及分类和指标

(此处已添加圈子卡片,请到今日头条客户端查看)

单片机的组成

单片机又称单片微控制器,它把一个计算机系统集成到一块芯片上,主要包括微处理器(CPU)、存储器(随机访问存储器RAM、只读存储器ROM)和各种输入/输出接口(包括定时器/计数器、并行I/O接口、串行口、A/D转换器以及脉冲宽度调制(PWM)等,如图1-1所示。

▲图1-1 单片机组成框图

程序存储器(ROM)

ROM用来存放用户程序,分为EPROM、Mask ROM、OTP ROM和Flash ROM等。

EPROM型存储器编程(把程序代码通过一种算法写入程序存储器的操作)后,其内容可用紫外线擦除,用户可反复使用,故特别适用于开发阶段,但EPROM型单片机价格很高。

Mask ROM型单片机价格最低,适用于批量生产。由于Mask ROM型单片机的代码只能由生产厂商在制造芯片时写入,故用户更改程序代码十分不便,在产品未成熟时选用此型单片机风险较高。

OTP ROM型(一次可编程)单片机价格介于EPROM和MaskROM型单片机之间,它允许用户对其编程,但只能写入一次。

Flash ROM型单片机可采用电擦除的方法修改其内容,允许用户使用编程工具或在系统中快速修改程序代码,且可反复使用,故一推出就受到广大用户的欢迎。Flash ROM型单片机既可用于开发阶段,也可用于批量生产,随着制造工艺的改进,价格不断下降,使用越来越普遍,已成为现代单片机的发展趋势。

中央处理器(CPU)

CPU是单片机的核心单元,通常由算术逻辑运算部件(ALU)和控制部件构成。CPU就像人的大脑一样,决定了单片机的运算能力和处理速度。

随机存储器(RAM)

RAM用来存放程序运行时的工作变量和数据,由于RAM的制作工艺复杂,价格比ROM高得多,所以单片机的内部RAM非常宝贵,通常仅有几十到几百字节。RAM的内容具有易失性(也称为易挥发性),掉电后数据会丢失。最近出现了EEPROM 或Flash ROM 型的数据存储器,方便用户存放不经常改变的数据及其他重要信息。单片机通常还有特殊寄存器和通用寄存器,也属于RAM空间,但它们存取数据速度很快,特殊寄存器还用于充分发挥单片机各种资源的功效,但这部分存储器占用存储空间更小。

并行输入/输出(I/O)接口

通常为独立的双向I/O接口,既可以用作输入方式,又可以用作输出方式,通过软件编程设定。现代单片机的I/O接口也有不同的功能,有的内部具有上拉或下拉电阻,有的是漏极开路输出,有的能提供足够的电流可以直接驱动外部设备。I/O接口是单片机的重要资源,也是衡量单片机功能的重要指标之一。

串口输入/输出口

用于单片机和串行设备或其他单片机的通信。串行通信有同步和异步之分,这可以用硬件或通用串行收发器件实现。不同的单片机可能提供不同标准的串行通信接口,如 UART、SPI、I2C、MicroWire等。

定时器/针数器(T/C)

用于单片机内部精确定时或对外部事件(输入信号如脉冲等)进行计数,通常单片机内部有2个或2个以上的定时/计数器。

系统时钟

通常需要外接石英晶体或其他振荡源提供时钟信号输入,有的也使用内部RC振荡器。系统时钟相当于PC微机中的主频。

以上只是单片机的基本构成,现代的单片机又加入了许多新的功能部件,如模拟/数字转换器(A/D)、数字/模拟转换器(D/A)、温度传感器、液晶(LCD)驱动电路、电压监控、看门狗(WDT)电路、低压检测(LVD)电路等。此时的单片机才是真正单片化。内部的RAM和ROM的容量也越来越大,ROM 寻址空间甚至可达 64KB,可以说,单片机发展到了一个全新的阶段,应用领域也更为广泛,许多家用电器均走向利用单片机控制的智能化发展道路。

单片机的分类和指标

单片机从用途上可分成专用型单片机和通用型单片机两大类。专用型单片机是为某种专门用途而设计的,如DVD控制器和数码摄像机控制器芯片等。在用量不大的情况下,设计和制造这样的专用芯片成本很高,而且设计和制造的周期也很长。我们常用的都是通用型单片机,通用型单片机把所有资源(如 ROM、I/O 等)全部提供给用户使用。当今通用型单片机的生产厂家已不下几十家,种类有几百种之多。

下面对单片机的几个重要指标进行介绍。

(1)位数:是单片机能够一次处理的数据的宽度,有 1 位机(如 PD7502)、4 位机(如MSM64155A)、8位机(如MCS-51)、16位机(如MCS-96)、32位机(如IMST414)等。

(2)存储器:包括程序存储器和数据存储器,程序存储器空间较大,字节数一般从几KB到几十KB,另外还有不同的类型,如ROM、EPROM、E2PROM、Flash ROM和OTP ROM型。数据存储器的字节数则通常为几十字节到几百字节之间。程序存储器的编程方式也是用户考虑的一个重要因素,有的是串行编程,有的是并行编程,新一代的单片机有的还具有在系统编程(ISP, In-System-Programmable)或在应用再编程(IAP,In-Application re-Programmable)功能;有的还有专用的ISP编程接口JTAG口。

(3)I/O接口:即输入/输出接口,一般有几个到几十个,用户可以根据需要进行选择。

(4)速度:指的是 CPU 的处理速度,以每秒执行多少条指令来衡量,常用单位是 MIPS(百万条指令每秒),目前最快的单片机可达到100MIPS。单片机的速度通常是和系统时钟(相当于PC的主频)相联系的,但并不是频率高的处理速度就一定快,但对于同一种型号的单片机来说,采用频率高的时钟一般比频率低的速度要快。

(5)工作电压:通常工作电压是5V,范围是±5%或±10%;也有3V/3.3V电压的产品;更低的可在1.25V工作。现代单片机又出现了宽电压范围型,在2.5V~6.5V内都可正常工作。

(6)功耗:低功耗是现代单片机所追求的一个目标,目前低功耗单片机的静态电流可以低至μA或nA级。有的单片机还具有等待、关断、睡眠等多种工作模式,以此来降低功耗。

(7)温度:单片机根据工作温度可分为民用级(商业级)、工业级和军用级3种。民用级的温度范围是 0℃~70℃,工业级是-40℃~85℃,军用级是-55℃~125℃(不同厂家的划分标准可能不同)。

(8)附加功能:有的单片机有更多的功能,用户可根据需要选择适合自己的产品。比如有的单片机内部有A/D、D/A、串口、LCD驱动等,使用这种单片机可减少外部器件,提高系统的可靠性。

(此处已添加圈子卡片,请到今日头条客户端查看)

相关问答

单片机 IO口上电之后默认的电平是高是低?-ZOL问答

ION讨论回答(5)51单片机的默认输入输出电平是指其P0口具有高阻特性,即P0口处于高电平状态。这种设计是为了减少外部元件的数量和复杂性,并且方便用户进行编程...

单片机 ,请看详细描述?

单片机的区别主要是资源多少,位宽和主频差别也很大。单片机DIO可以程序设置方向和电平高低。单片机DIO驱动能力很低,一般要加驱动电路。单片机开发语言KEIL...

三位共阳极数码管的最小驱动电压是多大啊?它和 单片机的i /o口...

[最佳回答]数码管由发光二极管组成,是二极管的一种.电流与电压的关系是指数关系.普通发光二极管的导通电压约1.8V,高亮度蓝色和白色约3.1V.一般用过串接的限流...

单片机 中的P是什么?

单片机中单独的P指的是奇偶标标志位,是程序状态字PSW中的最低位。P1口和P2口以及P3口都可以做普通的I/O使用!其中P3口具有第二功能:P3.0RXD(串行输入口)...

1.在MCS-51 单片机 外部扩展功能中,它可以提供地址线为()根,数...

[最佳回答]MCS-51单片机外部扩展功能中,它可以提供地址线为(16)根,数据线为(16)根,可寻址的外部数据存储器容量为(64k),可寻址的外部程序存储器容量为...

什么叫 单片机 ? 单片机 与一般微型计算机相比,具有哪些特点?

1、单片机是在一块集成电路上把CPU、存储器、定时器/计数器及多种形式的I/O接口集成在一起而构成的微型计算机。2、单片机就一个集成芯片,外加辅助电路构成一...

请问 单片机 输出的信号是什么类型的? - 184****0283 的回答 -...

单片机的I/O口的输出信号是数字信号,0-2.3V是低电平;3.2-5V是高电平。虽说是数字信号,但实则是高速的模拟信号,因此0V-5V之间是有上升时间的;同样5V...

单片机 缩写是什么?

SCM(SingleChipMicyoco缩写),是单片微型计算机的简称,从广义上讲单片机是微型计算机的一种,是集成在一个芯片上的,专门用于检测控制领域上的微型计算机。...

单片机 用一个IO口采集多个按键信号,如何实现?

在设计中如果用到IO口不够用,我们肯定第一时间想到的就是通过电阻分压,根据按下不同按键,来让不同阻值的电阻接到分压电路中,然后ADC模块做电压数据读取分析...

为什么 单片机 LED灯有p1口和p2口?

单片机LED灯有P1口和P2口是因为单片机的I/O口有限,为了连接多个LED灯,需要使用多个I/O口。P1口和P2口是8051单片机中常用的两个8位I/O口,它们可以分别控制8个L...

猜你喜欢