并行口单片机_第1页
并行口单片机_第2页
并行口单片机_第3页
并行口单片机_第4页
并行口单片机_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、CPU输入输出端口外部设备内总线MCS-51 并行I/O端口是实现单片机与外部进行并行数据交换的通道。2.4 并行并行I/O口口 MCS-51单片机的并行端口具备三种工作方式1.通用I/O方式:直接与外部设备连接,实现数据的并行交换。常用于“最小系统”模式的设计;2.总线方式:当系统要与外部ROM、RAM或ADC等器件进行连接时,采用类似于微机系统的三总线结构进行设计,部分端口承担总线的功能。此时系统称为“扩展系统”;3.第二功能方式:由于引脚的限制,内部信号无法正常输入输出。因此借用I/O端口引脚作为内部信号通道也是一种不得已的方法。当端口作为总线或第二功能时,就不能再做I/O。1. P0口

2、【特点】具有两种工作方式1. “通用数据I/O双向端口”;2. “地址、数据复用总线” 。P0口的位结构图D Q 锁存器CL /QP0.x引脚Vcc地址/数据1/0控制(=0时)读锁存器读锁存器读引脚内部总线写锁存器MUX (控制=0时)Vcc硬件组成:1,一个输出锁存器(D型触发器);2,二个三态门(控制读引脚或读锁存器);3,与门和MUX等元件组成的输出控制电路;4,一对场效应晶体管FET构成的输出电路。P0口的工作原理1. 普通I/O模式下的输出与输入原理;2. 扩展(总线)方式下的工作原理。1. P0口的I/O操作(通用I/O端口)在P0口作为通用I/O端口时,控制电路中的“控制”端为

3、“0”电平:1.此时多路开关MUX接入下方的锁存器的/Q端。2.因与门的一个输入端为“0”,所以它使上端的FET截止。这就是P0口在做I/O口时输出为“漏极开路” 结构的原因。输出时输出时: D端端=1/Q=0V1截止截止P0.n=1 D端端=0/Q/=1V1导通导通P0.n=0读引脚时读引脚时:P0.n读引脚三态门读引脚三态门1内部总线内部总线读锁存器时读锁存器时:Q端端读锁存器三态门读锁存器三态门2内部总线内部总线 数据经内总线送到锁存器的“D”端,经“/Q”端送场效管应输出极。总线送“0”时:锁存器的/Q=1,使下端的FET导通(上面的FET截止),端口呈现“0”电平;总线送“1”时:锁

4、存器/Q=“0”,使下端的FET截止,输出极的两个FET全部截止。在这种情况下,必须通过上拉电阻的作用使端口为高电平。(一)输出操作:(一)输出操作: MOV P0,A 输入操作实际上有两种读引脚:用于真正的外部数据输入的通道; 读锁存器:在端口作输出时常使用的操作。a.读引脚:当外部信号通过端口引脚输入时,读引脚上的电平实现信号的输入。如指令: MOV A,P0 ; AP0 此时,单片机控制“读引脚”的三态门,使引脚处的外部电平经三态门送入内部总线。(二)输入操作 MOV A,P0注意:注意:读引脚操作前要事先向该端口写读引脚操作前要事先向该端口写“1”请注意下面的一段程序: MOV P0,

5、#0FFH ;0FFH送P0( “写1”) MOV A , P0 ;从P0口引脚输入数据到A你能正确的分析出指令的操作吗?上述指令执行后 P0=?b,读锁存器:端口作输出时的一种操作 在这种情况下, 读入的数据不是来自引脚,而是端口内部的锁存器的内容。 P0.X单片机的引脚设计为输出时 当端口输出时(MOV P0,A) ,往往要再将前面输入的状态取回来,进行再处理然后重新输出。如:ORL P0,A将将P0口前次输出的数据与累加器口前次输出的数据与累加器A的内容相的内容相“或或”后在送回后在送回P0口(输出)。此时口(输出)。此时P0口的数据是从锁口的数据是从锁存器中读回的,而不是从引脚输入。存

6、器中读回的,而不是从引脚输入。 上述的过程也称之谓“读修改写”操作。为什么端口作输出时还要读入操作? 凡是这种“读修改写”操作,读到的数据都是锁存器的数据而不是读引脚数据。 这种“读修改写”的操作有:ORL 、XRL 、JBC 、CPL 、INC 、DEC 、DJNZ 、MOV Px ,y 、 CLR Px ,y和SET Px ,y。 而真正读引脚的指令只有 MOV A,P0为什么要读锁存器而不去读引脚? 为什么“读修改写”操作不是从引脚回取信号?因为:1.引脚信号与外部设备连接,易受外界干扰;2.引脚上的电平往往不能正确反映前次的输出结果。负载Vcc2,P0口的口的地址地址/数据分时复用方式

7、数据分时复用方式(控制端控制端=1)“地址地址/数据数据” 端无条件输入端无条件输入/输出,是严格意义上输出,是严格意义上的的双向口双向口由于上部由于上部FET管不再被管不再被“控制控制”信号关闭,所以信号关闭,所以此时口线可以输出高电平,即不用外加上拉电阻。此时口线可以输出高电平,即不用外加上拉电阻。 只要CPU执行MOVX、MOVC(外ROM)指令,P0、P2口就自动变为数据/地址总线。 在进行硬件系统的设计中,如果使用了外部存储器时,P0口成为整个系统的地址/数据复用总线。换句话,P0口不能再作为通用的I/O端口。1.做通用数据I/O端口并与MOS器件连接时,必须外接“上拉电阻”,否则不

8、能正确的输出高电平;2.在输入操作前, 必须先向端口“写1;3.“读引脚”与“读锁存器”是不同的两个数据通道;4.在总线方式时,P0口不能再做通用的I/O端口。它分时输出地址、数据总线的信息(此时引脚不用外接上拉电阻)。P0口特点小结:单纯的通用单纯的通用I/O端口端口输出时输出时: D端端=1/Q=0V截止截止P1.n=1 D端端=0/Q=1V导通导通P1.n=0V21读引脚时读引脚时:P1.n读引脚三态门读引脚三态门1内部总线内部总线读锁存器时读锁存器时:Q端端读锁存器三态门读锁存器三态门2内部总线内部总线2. P1口口 3. P3口口 P3.n = 1个锁存器个锁存器 + 2个三态缓冲器

9、个三态缓冲器 + 1个第二个第二功能控制单元功能控制单元 + 1个输出驱动单元个输出驱动单元3412第二输入功能第二输入功能VP3口具有通用口具有通用IO口工作方式口工作方式 + 第二功能方式第二功能方式输出时输出时: D端端=1Q=1V截止截止P1.n=1 D端端=0Q=0V导通导通P1.n=0读引脚时读引脚时:P1.n读引脚三态门读引脚三态门1内部总线内部总线(需先写(需先写1)读锁存器时读锁存器时: Q端端读锁存器三态门读锁存器三态门2内部内部总线总线3412第二输入功能第二输入功能V第二输第二输出功能出功能 = “1”(与非与非门开锁门开锁)P3口的第二功能方式:口的第二功能方式: 输

10、出时输出时:第二输出功能:第二输出功能 = 1与非门输出与非门输出0V截止截止P3.n=1 第二输出功能第二输出功能 = 0与非门输出与非门输出1V导通导通P3.n=0输入时输入时:P3.n驱动门驱动门4第二输入功能(也需先第二输入功能(也需先使使V截至)截至)D端端 写写 “1”(与非门与非门开锁开锁)3412第二输入功能第二输入功能V P3口第二功能定义口第二功能定义 引脚引脚名称名称第二功能定义第二功能定义P3.0RXD串行通信数据接收端串行通信数据接收端输入输入P3.1TXD串行通信数据发送端串行通信数据发送端输出输出P3.2外部中断外部中断0请求端口请求端口输入输入P3.3外部中断外

11、部中断1请求端口请求端口输入输入P3.4T0定时器定时器/计数器计数器0外部计数输入端外部计数输入端口口输入输入P3.5T1定时器定时器/计数器计数器1外部计数输入端外部计数输入端口口输入输入P3.6片外数据存储器写选通片外数据存储器写选通输出输出P3.7片外数据存储器读选通片外数据存储器读选通输入输入INT0WRINT1RD4. P2口口 P2.n = 1个锁存器个锁存器 + 2个三态缓冲器个三态缓冲器 + 1个输出控个输出控制单元制单元 + 1个输出驱动单元个输出驱动单元VP2口可以实现通用口可以实现通用I/O口和地址输出口两种功能口和地址输出口两种功能输出时输出时: D端端=1Q端端=1

12、V截止截止P2.n=1 D端端=0Q端端=0V导通导通P2.n=0读引脚时读引脚时:P2.n读引脚三态门读引脚三态门内部总线(需要先写内部总线(需要先写“1”)读锁存器读锁存器: Q端端读锁存器三态门读锁存器三态门内部总线内部总线P2作为作为通用通用I/O口口时(时(控制端控制端=0,MUX-Q)V输出时输出时:地址端:地址端=1V截止截止P2.n=1 地址端地址端=0V导通导通P2.n=0P2作为作为地址输出口地址输出口时(时(控制端控制端=1,MUX-地址地址)V1. 直接做输出口直接做输出口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.780C51+5V例例1:用:用80

13、C51的的P1口驱动口驱动8个发光个发光二极管,使二极管,使8个发个发光二极管由左向光二极管由左向右轮流点亮。右轮流点亮。P0 P3并行口的基本用途并行口的基本用途 P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.780C51+5V例例2:用用80C51的的P1口驱动口驱动1个数码个数码管,制成管,制成1位秒表位秒表.abcdefgDpabcdefgDp2. 直接做输入口直接做输入口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.780C51+5V例例1:用:用80C51的的P1口传送口传送8个开关状态,用个开关状态,用P2口显口显示示8个开关状态。个开关状态。P2

14、.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7+5V80C51+5V例例2:用:用80C51的的P1口驱动口驱动8个发光二极管,个发光二极管,P3.4接一个开关接一个开关K1,当开关按下时,当开关按下时,8个发光二极管由左向右轮流点亮;开关个发光二极管由左向右轮流点亮;开关断开时,断开时,8个发光二极管不亮。个发光二极管不亮。P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5VP3.43、可作为串行通信通道、可作为串行通信通道(例如,双机通讯的连接(例如,双机通讯的连接通道)通道)4、可作为外部设备的连接通道、可作为外部设备的连接通道(例如,存储器扩展(例如,存

15、储器扩展通道)通道)P0P3小结小结1. 结构结构2. 功能功能B0HA0H 90H80H SFR地址地址 第二功能第二功能 总线端口总线端口准双向准双向IO口口P3P2P1P0内部上拉电阻内部上拉电阻输出控制输出控制MUX开关开关D锁存器锁存器P3P2P1P0端口小结端口小结P0口:8位,漏极开路的双向I/O口当外扩存储器及外扩存储器及I/O接口芯片时接口芯片时,作低8位地址总线地址总线及数据总线数据总线的分时复用分时复用端口。作通用的通用的I/O口口时时,需加上拉电阻需加上拉电阻。作为通用I/O输入,应先向端口写入1。P0口大多作为地址口大多作为地址/数据复用口使用,就不能再作为通数据复用口使用,就不能再作为通用用I/O口使用。口使用。P1口、P2口、P3口均为准双向口。注意:准双向口与双向口的差别准双

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论