单片机 51系列单片机的功能

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二功能:
P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0
RD WR T1 T0 INT1 INT0 TXD RXD
4.1.2.3 P3口的操作
P3口的某一位作为第一功能输出时,第二输出功能 线总是高电平,使该位引脚输出电平仅取决于口锁 存器的状态。
P3口的某一位作为第二功能输出时,要求该位的锁 存器状态应置位,使与非门对于第二输出功能是畅 通的。
P1口能驱动4个LSTTL负载。
4.1.1.3 P1口的操作
对P1口的操作,可以采用位操作,也可以采用 字节操作。
例:试编写一段子程序,将P1.4~P1.7的状态 值分别赋给P1.0~P1.3。
方法一:按位操作
方法二:按字节操作WECZ: MOV C, P1.4 ; (P1.4)→CY MOV P1.0, C ; (P1.4)→ (P1.0)
第4章 51系列单片机的功能模块及其应用
本章学习目标: 掌握89C52的并行口结构及其应用。 了解定时器/计数器的一般结构并熟练掌
握其应用。 掌握串行口的工作原理及应用。
4.1 并行口及其应用
MCS-51系列单片机有四个8位准双向的并行 I/O口,共占32根引脚。每个端口都包含一个锁 存器、一个输出驱动器和两个三态输入缓冲器。 我们把这四个端口称为P0~P3,它们在特殊功 能寄存器SFR中占四个单元。这四个端口的功能 各不相同:在无片外扩展存储器的系统中,这四 个端口的每一位都可以作为双向I/O端口使用; 在具有片外扩展存储器的系统中,由P2送出高8 位地址,P0分时工作,先送出低8位地址,然后 可用作数据双向总线;P1只能作为通用并行I/O 口;P3是双功能口,除作为I/O口使用外,每位 还独立定义了第二I/O功能。
P1.4-P1.7的状态值不变。
RET 错误指令:MOV P1.3,P1.7 ;位变量的传送必须经过
4.1.2.1 P3口某位的结构
与P1.n口相比,多了一个“与非门”和一个三态输 入缓冲器。
4.1.2.2 P3口的功能特性
8位准双向I/O口,在MCS-51系列单片机中, 这8个引脚以及P1.0和P1.1口还用于专门功 能,是复用双功能口。P3口能驱动4个 LSTTL负载。
无论作为通用输入口或专用(第二功能)输入口, 相应的输出锁存器和第二输出功能端都应置位,以 确保下拉场效应管(FET)截止,从而可实现口线 信号的读入。
4.1.3.1 P2口某位的结构
P2的位结构比P1口多了一个转换控制部分。
4.1.3.2 P2口的功能特性
8位准双向口I/O口。在访问外部存储器, 可以作为扩展高8位地址总线输出高8位地址。 在对EPROM编程和程序验证期间,它接收 高8位地址。P2口可以驱动4个LSTTL负载。
ZJCZ: MOV A, P1
MOV C, P1.5
SWAP A
MOV P1.1, C ;(P1.5)→ (P1.1)
MOV P1, A
MOV C, P1.6
RET
MOV P1.2, C ;(P1.6)→ (P1.2)
注P1意.4:-P此1.7种的方状法态虽值然。将请P学1.4生-P课1下.7设的计状一态段值MM子分OO程别VV序赋CP,给1, .要PP311,求..0C7既-P能1.3实;,(现P但1上与.7述此)百度文库功同能(时P,1改.又3变)保了持
4.1.5 并行口的应用
BEEP:MOV R7,#5
BEEPL:CLR P1.0
LCALL DEL5
SETB P1.0
DEL10
LCALL
R7,BEEPL
DJNZ
RET
此子程序中,DEL5和DEL10分 别为延时0.5s和1s的子程序。
4.1.5 并行口的应用
4.1.5 并行口的应用
分析下述程序的功能
4.1.1.1 P1口某位的结构
图中给出了P1口的某位P1.n(n=0~7)的结构图,它由一个输出锁存 器,两个三态输入缓冲器和一个输出驱动电路组成。
4.1.1.2 P1口的功能特性
89C52的P1.0、P1.1为多功能准双向口 (第二功能为定时器T2的输入、输出脉冲 线),P1.2~P1.7为单一功能准双向口。 P1口为8位准双向I/O口,由于这种接口输 出没有高阻状态,故为准双向口,不是真正 的双向I/O口。
4.1.4.2 P0口的功能特性
三态双向8位I/O口。P0是一个复用口在单 片机不需要扩展时,可作为一般的I/O口使 用。在外接存储器时,与地址总线的低8位 及数据总线复用,能驱动8个LSTTL负载。
4.1.4.3 P0口的使用方法
当用作一般输入/输出口时,一般接10KΩ左右的拉 高电阻。
对于内部没有程序存贮器的单片机(如8031), P0口只能作为地址/数据总线口使用。当输出驱动 器转接至地址/数据时,P0口作为地址/数据总线口 使用,分时输出外部存贮器的低8位地址A0~A7和 传送数据D0~D7.低8位地址由地址允许锁存信号 ALE锁存到外部地址锁存器中,接着P0口便输入/ 输出数据信息。P0口输出的低8位地址来源于PCL 或DPL或R0或R1等。
对于64K(216)字节的大规模扩展系统,P2口不能作为I/O 口使用,对外部RAM/IO操作则可以用P2R0、P2R1、DPTR 三个16位地址指针。(参看教材例4.6)
练习:将内部数据存储器中30H开始,长度为10H的数据块传 送到3000H开始的存储区。
4.1.4.1 P0口某位的结构
由一个输出锁存器,两个三态输入缓冲器和一个输 出驱动电路及控制电路组成。
4.1.3.3 P2口的操作
对于内部有程序存贮器的89C52单片机所构成的系统,既不扩 展程序存贮器,又不扩展RAM/IO口,这时P2口作为I/O口使 用,和P1口一样,是一个准双向口,对P2口操作可以采用字节 操作,也可以采用位操作。(参看教材例4.4)
对于只扩展少量外部RAM/IO的紧凑系统,若其地址范围在 0~255之间,P2口也可以作为I/O口使用,但对外部RAM/IO 口操作,只能使用R0或R1作地址指针(8位),不能用DPTR 作地址指针。(参看教材例4.5)
相关文档
最新文档