MCS-51单片机
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
口的位结构: (2)P1口的位结构 ) 口的位结构
• P1口作通用I/O口使用,因电路结构上输出驱动部分 P1口作通用I/O口使用, 口作通用I/O口使用 上拉电阻。 一样, 接有上拉电阻 当作输入时, PO一样 接有上拉电阻。当作输入时,同PO一样,要先对该口 写“1”。 。
读锁存器 1 内部总线 写锁存器 Q P1.x 锁存器 CL Q D 2 读引脚 Vcc
内部上拉电阻 P1.x 引脚 T
(b)P1口位结构
(3)P2口的位结构 ) 口的位结构
P2口的位结构比P1多了一个转换控制部分, P2口作通 P2口的位结构比P1多了一个转换控制部分,当P2口作通 口的位结构比P1多了一个转换控制部分 I/O口时 多路开关MUX倒向左; 口时, MUX倒向左 用I/O口时,多路开关MUX倒向左;
作输入口, 用P1.4~P1.7作输入口,采用位操作。 ~ 作输入口 采用位操作。 • 小结: 小结: ORG 0000H L1:MOV C, P1.4端口,即 , • : 、单片机的I/O端口, 1、单片机的 端口 MOV P1.0,C , 可用作输入口, 可用作输入口,也可用 MOV C, , 作输出口; 作输出口; P1.5 MOV P1.1,C , • 2、所有口线均可单独使 、 MOV C, P1.6 , MOV P1.2, , 用与控制; 用与控制; C MOV C, P1.7 , • 3、每个端口均可当做一 、 MOV P1.3,C , 位并行口单独使用。 个8位并行口单独使用。 位并行口单独使用 SJMP L1
MCS-51单片机的并行口 一、MCS-51单片机的并行口
• 1、概述: 概述:
• MCS-51有四个并行双向I/O口: MCS-51有四个并行双向I/O口 有四个并行双向I/O 口和P P0口、P1口、P2口和P3口 • 当作I/O口时,可按字节或位操作 当作I/O口时,可按字节 I/O口时 字节或 • 按位操作时,表示为:P0.0~P0.7 按位操作时 表示为: ~ P1.0~P1.7; P2.0~P2.7 ; P3.0~P3.7 ~ ~ ~ • 按字节操作:表示为P0、P1、P2、P3 按字节操作:表示为 、 、 、
地址/数据 读锁存器 & 1 内部总线 写锁存器 P0.x 锁存器 CL Q MUX 2 读引脚 (a)P0口位结构 D Q 1 T1 P0.x 引脚 T2 控制 Vcc
P0作I/O口使用 P0作I/O口使用
• CPU发控制电平“0”封锁与门,使T1管截止, CPU发控制电平“ 封锁与门, T1管截止, 发控制电平 封锁与门 管截止 同时使MUX开关同下面的触点接通, MUX开关同下面的触点接通 同时使MUX开关同下面的触点接通,使锁存器 /Q与T2栅极接通 栅极接通。 的/Q与T2栅极接通。 当CPU向端口输出数据时,写脉冲加在锁存器 CPU向端口输出数据时, 向端口输出数据时 的 CL上、内部总线的数据经反相,再经T2管 CL上 内部总线的数据经反相,再经T2管 T2 反相,PO口的这一位引脚上出现正好和内部 反相,PO口的这一位引脚上出现正好和内部 总线同相的数据。 总线同相的数据。由于输出驱动级是漏极开 路电路( T1截止 截止) 在作I/O I/O口使用时应外接 路电路(因T1截止),在作I/O口使用时应外接 上拉电阻。 上拉电阻。
3 4
T
(d)P3口位结构
P3口的第二功能 口的第二功能
• • • • • • • • P3.0----RXD P3.1----TXD P3.2----INT0 P3.3----INT1 P3.4----T0 P3.5----T1 P3.6----WR P3.7----RD
串行口 外部中断 计数器外部脉冲输入引脚
并行口小结: 并行口小结:
• 归纳四个并行口使用的注意事项如下: 归纳四个并行口使用的注意事项如下: • 1、如果单片机内部有程序存贮器,不需要扩 如果单片机内部有程序存贮器, 展外部存贮器和I/O接口,单片机的4 I/O接口 展外部存贮器和I/O接口,单片机的4个口均 可作I/O口用。 I/O口用 可作I/O口用。 • 2、4个口在作输入口使用时,均应先对其写 个口在作输入口使用时, “1”,以避免误读。 ,以避免误读。 • 3、P0口作I/O口使用时应外接上拉电阻,其 P0口作I/O口使用时应外接上拉电阻 口作I/O口使用时应外接上拉电阻, 它口则可不必。 它口则可不必。 • 4、P2的某几根线作地址使用时,剩下的口线 P2的某几根线作地址使用时 的某几根线作地址使用时, 不能作I/O口线使用。 I/O口线使用 不能作I/O口线使用。 • 5、P3口的某些口线作第二功能时,剩下的口 P3口的某些口线作第二功能时 口的某些口线作第二功能时, 线可以单独作I/O口线使用。 I/O口线使用 线可以单独作I/O口线使用。
研究与思考:采用字节操作的现象。 研究与思考:采用字节操作的现象。
• 你会发现什么问题? 你会发现什么问题? • 运行过程中出现什么 现象? 现象? • 如何解决? 如何解决? • 解决此问题,只能通过 解决此问题, 单片机并行口的内部结 构特点及工作原理来解 决。
L1:MOV : SWAP MOV SJMP
为输出口, 例1: P1.0~P1.3为输出口, P3.0~P3.3 为输入 : ~ 为输出口 ~ 灯显示开关的状态。 口,使LED灯显示开关的状态 灯显示开关的状态
采用字节操作。 采用字节操作。
用读端口方式
L1:MOV A , P3 : MOV P1,A , SJMP L1 L1:MOV P1 , P3 : SJMP L1 L1:MOV : SWAP MOV SJMP A , P3 A P1,A , L1
• “读-修改-写”CPU读口锁存器 修改CPU读口锁存器 而不读引脚, 而不读引脚,是为了避免错读引 脚的电平信号。 脚的电平信号。 • 究竟是读引脚还是读锁存器, 究竟是读引脚还是读锁存器, CPU内部会自行判断是发读引脚 CPU内部会自行判断是发读引脚 脉冲还是读锁存器脉冲, 脉冲还是读锁存器脉冲,用户不 必在意。 必在意。 • 应注意,当作输入端口使用时, 应注意,当作输入端口使用时, 应先对该口写入“ 使场效应管 应先对该口写入“1”使场效应管 T2截止 再进行读入操作, 截止, T2截止,再进行读入操作,以防 场效应管处于导通状态, 场效应管处于导通状态,使引脚 箝位到零,而引起误读。 箝位到零,而引起误读。
1.P0口 P0口的输出驱动电路由上拉场效应管 口的输出驱动电路由上拉场效应管T1 1.P0口 P0口的输出驱动电路由上拉场效应管T1 (1)P0口的位结构 ) T2组成 口的位结构 和驱动场效应T2组成,控制电路包括一个与门, 和驱动场效应T2组成,控制电路包括一个与门, 一个非门和一个模拟开关MUX MUX。 一个非门和一个模拟开关MUX。
片外RAM、I/O读写信号 、 读写信号 片外
P3口的特点 P3口的特点
• 当作为普通I/O口使用时,CPU自动使第二输出 当作为普通I/O口使用时,CPU自动使第二输出 I/O口使用时 功能端保持“ ,打开与非门3 用法同P1 P1口 功能端保持“1”,打开与非门3,用法同P1口。 • 当作第二功能输出时,向口锁存器写“1”打开 当作第二功能输出时,向口锁存器写“ 打开 与非门3 第二功能内容通过与非门3 与非门3,第二功能内容通过与非门3和T送至 引脚。 引脚。 • 第二功能输入时,引脚的第二功能信号通过三 第二功能输入时, 态缓冲器4进入第二输入功能端。 态缓冲器4进入第二输入功能端。两种功能的 引脚输入都应使T截止, 引脚输入都应使T截止,此时第二输出功能端 和锁存器输出端Q均为高电平。 和锁存器输出端Q均为高电平。 • P3的各位如不设定为第二功能则自动处于第一 P3的各位如不设定为第二功能则自动处于第一 功能,在更多情况下,根据需要, 功能,在更多情况下,根据需要,把几条口线 设为第二功能,剩下的口线可作第一功能(I/O) 设为第二功能,剩下的口线可作第一功能(I/O) 使用,此时,宜采用位操作形式 。 使用,此时,
读锁存器 1 内部总线 写锁存器 Q P2.x 锁存器 CL 2 读引脚
(c) P2口位结构
地址
控制
Vcc 内部上拉电阻
D
P2.x 引脚 MUX 1 T
P2口使用特点 P2口使用特点
• 当扩展片外存贮器时,MUX开关打向右, 当扩展片外存贮器时,MUX开关打向右, 开关打向右 P2口作高八位地址线输出高八位地址信 P2口作高八位地址线输出高八位地址信 号。 • 其MUX的的倒向是受CPU内部控制的。 MUX的的倒向是受CPU内部控制的 的的倒向是受CPU内部控制的。 • 应当注意:当P2口的使用某几位作地址 应当注意: P2口的使用某几位作地址 线时,剩下的P2口线不能作I/O P2口线不能作I/O口线使 线时,剩下的P2口线不能作I/O口线使 用。
为输出口, 例1: P1.0~P1.3为输出口, P3.0~P3.3 为输入 : ~ 为输出口 ~ 灯显示开关的状态。 口,使LED灯显示开关的状态 灯显示开关的状态 • 采用位操作: 采用位操作:
ORG 0000H L1:MOV C, P3.0 : , MOV P1.0,C , MOV C, P3.1 , MOV P1.1,C , MOV C, P3.2 , MOV P1.2,C , MOV C, P3.3 , MOV P1.3,C , SJMP L1
第4章 MCS-51单片机硬件资 章 单片机硬件资 源的使用
MCS-51单片机的硬件资源包括: MCS-51单片机的硬件资源包括 单片机的硬件资源包括
单片机的并行口 一、 MCS-51单片机的并行口 单片机的 单片机的中断系统 二、 MCS-51单片机的中断系统 单片机的 单片机的定时器 三、 MCS-51单片机的定时器 计数器 单片机的定时器/计数器 单片机的串行接口 四、 MCS-51单片机的串行接口 单片机的
• 当PO口作地址/数据线使用时,CPU PO口作地址/数据线使用时, 口作地址 及内部控制信号为“ , 及内部控制信号为“1”,转换开关 MUX打向上面的触点, 使反相器的 MUX打向上面的触点, 打向上面的触点 输出端和T2管栅极接通, T2管栅极接通 输出端和T2管栅极接通,输出的地 址或数据信号通过与门驱动T1管, 址或数据信号通过与门驱动T1管 T1 同时通过反相器驱动T2 T2管完成信息 同时通过反相器驱动T2管完成信息 传送,数据输入时,通过缓冲器进 传送,数据输入时, 入内部总线。 入内部总线。
(3)P3口的位结构 ) 口的位结构
P3口为双功能I/O口 P3口为双功能I/O口,内部结构中增加了第二输 口为双功能I/O 输出功能。使用第二功能时, 入/输出功能。使用第二功能时,应先向口锁存 器写“ 。 器写“1”。
读锁存器 1 内部总线 写锁存器 D Q P3.x 锁存器 CL 2 读引脚 第二输入功能 第二输出功能 Vcc 内部上拉电阻 P3.x 引脚
•
• 当作输入口进行输入操作时,端口中两个三态 当作输入口进行输入操作时, 缓冲器用于读操作。缓冲器2 缓冲器用于读操作。缓冲器2用于读端口引脚 的数据。当执行端口读指令时,读引脚脉冲打 的数据。当执行端口读指令时, 开三态缓冲器2 开三态缓冲器2,于是端口引脚数据经三态缓 冲器2送到内部总线。 冲器2送到内部总线。 • 为保证端口引脚信号输入正确,必须先向口锁 为保证端口引脚信号输入正确,必须先向口锁 存器写“ , T2管截止 管截止。 存器写“1”,使T2管截止。 • 缓冲器1用于读取锁存器Q端的数据。当执行 缓冲器1用于读取锁存器Q端的数据。 修改指令(即读端口信息, “读-修改-写”指令(即读端口信息,在片内 加以运算修改后,再输出到该端口的某些指令。 加以运算修改后,再输出到该端口的某些指令。 P0, 指令) 即是读的锁存器Q 如:ANL P0,A指令),即是读的锁存器Q的数 据。
A , P1 A P1,A , L1
~P3口作 口时为:准双向 口; 口作I/O口时为 、 ~ 口作 口时为:准双向I/O口 • 作输入口时须先向端口锁存器写“1”; 作输入口时须先向端口锁存器写“ ; 先向端口锁存器写 作输出口时, 口为漏极开路结构 口为漏极开路结构, 作输出口时,P0口为漏极开路结构,需外 加上拉电阻, 口内部具有上拉电阻。 加上拉电阻,而P1 ~P3口内部具有上拉电阻。 口内部具有上拉电阻 • 2、P3口具有第二功能,使用第二功能时,需 口具有第二功能, 、 口具有第二功能 使用第二功能时, 须先向端口锁存器写“ ; 须先向端口锁存器写“1”; • 3、P0、P2口又可作为为单片机的总线口。 口又可作为为单片机的总线口。 、 、 口又可作为为单片机的总线口