1、寄存器总结

1.1 常用 SFR 汇总表格

在这里插入图片描述
我们来列举一下考试所需SFR寄存器的总类型,分别如下:
外部中断:IP(中断优先级控制寄存器)、IE(中断允许控制寄存器)、SCON(串行口控制寄存器)、TCON(定/计控制寄存器)。

定时器/计数器中断:TCON(定/计控制寄存器)、TMOD(定/计方式控制寄存器)、
T0:TH0(定/计低8位)、TL1(定/计低8位) T1: TH1(定/计高8位)、TL0(定/计高8位)。

串行口中断:SCON(串行口控制寄存器)、PCON(电源控制寄存器)、IP(中断优先级控制寄存器)、IE(中断允许控制寄存器)。

基本并行寄存器:P0-P3(4个I/O端口)。

1.2 TCON(定时器控制寄存器)

地址:88H
作用:1.控制定时器启动/停止 2.外部中断的触发与响应
在这里插入图片描述
重要标志位:
TR0:定时器/计数器0运行控制位。TR0=0,停止工作;TR0=1启动工作。由软件置位与复位。
TR1:定时器/计数器1运行控制位。TR01=0,停止工作;TR1=1启动工作。由软件置位与复位。
IT0:外部中断请求0位边沿触发或电平触发。0,电平触发,1位边沿触发。
IT1:外部中断请求1位边沿触发或电平触发。0,电平触发,1位边沿触发。
TF0:计数器/定时器0溢出标志位。中断方式硬件清0,查询方式由程序查询和清0。
TF1:计数器/定时器1溢出标志位。中断方式硬件清0,查询方式由程序查询和清0。

1.3 TMOD(定时器方式控制寄存器)

地址:89H
作用:提供四种工作方式。T1与T0分别代表高4位与低4位。
在这里插入图片描述
GATE:门控位
C/T:计数器/定时器的模式选择,1计数器工作方式,0定时器工作方式。
M1、M0:工作方式选择位,提供4种工作方式(1和2最重要)。方式2是自动重载。常用于计算晶振操作,这里需要各自找题练习即可。
在这里插入图片描述

1.4 IE(中断允许控制寄存器)

地址:A8H
作用:控制中断是否开放。
在这里插入图片描述
EA:总中断,EA=0,禁止所有中断,EA=1,开放中断。相当于看门狗。
ET0:允许或禁止定时器/计数器0溢出中断,0禁止,1允许。
ET1:允许或禁止定时器/计数器1溢出中断,0禁止,1允许。
EX0:允许或禁止外部中断0(INT0)中断,0禁止,1允许。
EX1:允许或禁止外部中断1(INT1)中断,0禁止,1允许。

1.5 IP(中断优先级控制寄存器)

作用:设置中断源优先级。
在这里插入图片描述
中断优先级判断
1.中断申请源的中断优先级的高低,由中断优先级控制寄存器IP的各位控制,IP的各位由用户指令来设定。
2.复位操作后IP=××000000B,即各中断源均设为低优先级中断。
3.若多个中断源同时申请中断,则级别高的优先级先服务
4.若同时收到几个同一级别的中断请求,中断服务取决于系统内部辅助优先顺序。

1.5 SCON(串行口控制寄存器)

在这里插入图片描述
SM1、SM0:这里与TCON的M0、M1正好相反,但又很相似。这里要高分可以研究。
在这里插入图片描述
REN:允许串行接受位。软件置1为允许,软件清0为禁止。
TI:发送中断标志位,方式0发送完8位后,由硬件置位1,其他方式在发送前必须清0,发送完成后置1.
RI:接收中断标志位,方式0接收完8位后,由硬件置位1,其他方式在接收停止时必须清0。

2、中断总结

2.1 外部中断

概念补充:
中断:单片机的CPU执行时,外部有一些事件变化,如数据采集结束、电平变化、定时器/计数器溢出等,要求CPU处理。CPU停止当前程序去处理中断请求;处理后再回到原来所执行程序的地址,继续执行原来的程序。
中断源:发出中断请求信号的设备。引起中断的原因。
中断请求:要求中断处理发出的标志信号。
中断处理程序(中断服务):中断后转向执行的程序。
断点:主程序被断开的地址。
中断系统:实现中断功能的硬件系统与软件系统。
中断嵌套与多级中断系统:最多两次中断(细节点)
在这里插入图片描述
中断的作用:消除CPU在查询方式中的等待现象,大大提高CPU工作效率,改善计算机性能。
剩下要点在书籍P114中详细列举。

51系列单片机有5个中断源
在这里插入图片描述
外部中断相关寄存器如下:TCON、SCON、IE、IP四种。
外部中断相关寄存器
TCON(定时器控制寄存器):外部中断典型标志位有:IT0、IT1、IE0、IE1、TR0、TR1。
SCON(串行口控制寄存器):TI(串行口发送中断标志位)、RI(串行口接收中断标志位)。
IE(中断允许控制寄存器):EA、ES、ET0、ET1、EX0、EX1。
IP(中断优先级控制寄存器):PS、PT0、PT1、PX0、PX1。不常用,了解即可。

我们知道中断优先级是由IP寄存器的各位控制,于是就有了以下优先级顺序。
在这里插入图片描述
中断顺序注意
1.低优先级中断可以被高级中断系统中断,反之不能。
2.当多个中断源同时发出申请时,级别高的先服务;先按高低优先级区分,再按辅助优先级区分。

2.2 定时器/计数器中断

第一种方式
定时器/计数寄存器T0、T1:这里我们记住即可。
T0:TL0(低8位)与TH0(高8位)
T1:TL1(低8位)与TH1(高8位)

第二种方式
利用TMOD确定定时器/计数器的工作方式,再根据TCON控制T0、T1的启动与停止计数,以及中断申请,同时锁存T0、T1的状态。
定时器/计数器寄存器
TMOD(定时器方式控制寄存器):整个寄存器最重要的就是M1、M0对应的工作方式,上面提及过,可以回看。
TCON(定时器控制寄存器):与定时器相关的位有TF0,TF1,TR0,TR1记住即可,了解作用即可,可回上方回看。

2.3 串行口中断:51单片机为全双工异步通信

通信方式分类
CPU与外界信息交换称为通信。通常分为串行与并行两种方式,下面列举各自优缺点(51单片机为串行):

串行通信:传输速率低、成本低、抗干扰能力强、传输距离远。
并行通信:传输速率高、成本高、抗干扰能力弱、传输距离短。
串行通信中每秒传输的数据位称为波特率波特率衡量数据传输速率。

串行通信分为以下三种传输方式(51单片机为全双工):
单工:仅仅沿一个方向传输,不可反向传输。如广播。
半双工:数据可以沿两个方向传输,但需要分时进行。如对讲机。
全双工:数据可以同时双向传输,同时发送和接收数据。如电话、手机。

异步通信与同步通信的区别(51单片机为异步通信):
异步通信:无独立时钟线,依靠约定波特率配合起止位实现同步,数据可间断发送。发送与接收各自频率。
同步通信:配有专门时钟线,按统一时钟节拍连续传输数据,无额外帧位。相同时钟信号。

串行口中断寄存器
SCON(串行口控制寄存器)、PCON(电源管理寄存器)、IE、IP。
在这里插入图片描述SCON(串行口控制寄存器)
在这里插入图片描述
SM1、SM0:这里与TCON的M0、M1正好相反,但又很相似。这里要高分可以研究。
在这里插入图片描述
REN:允许串行接受位。软件置1为允许,软件清0为禁止。
TI:发送中断标志位,方式0发送完8位后,由硬件置位1,其他方式在发送前必须清0,发送完成后置1.
RI:接收中断标志位,方式0接收完8位后,由硬件置位1,其他方式在接收停止时必须清0。
这里我们引入一段程序题来解惑使用场景。
主程序如下:
在这里插入图片描述
题目中我们需要补充5个空。
首先允许串行口=>REN=1;
一般我们是使用方式1=>SM0=0; SM1=01;
后面的if判断语句明显是要去判断是否收到数据,于是引入RI位。
if(RI)//判断是否接收到数据
RI==0;手动清0接收标志位
这里就是整个使用过程,建议多试试同类程序。

PCON(电源管理寄存器)
在这里插入图片描述
这里我们只需要了解主要的一位即可:
SMOD:为0时,波特率不倍增,为1时,波特率提高一倍。

2.4 中断经典案例

下面我们配合一段程序实战加深记忆:
此题晶振为:11.0592MHz,定时时间为50ms。
在这里插入图片描述
TMOD这里0x01对应了定时器0的工作方式一,此时M=65536
由于晶振是11.0592MHz=机器周期1.09us。由50ms=50000us/1.09us推导=45872个,于是推出下面两行代码。
第二行代码:高八位
第三行代码:低八位
EA是总中断开关,属于IE寄存器。这里代表允许中断。
ET0是允许或禁止定时器/计数器0溢出中断,为了对应定时器0而引入。属于IE寄存器,这里是允许。
TR0是定时器/计数器运行控制位,也是对应定时器0,这里是允许运行。属于TCON寄存器。

3、IO端口总结

3.1 I/O概述

单片机通过I/O端口实现对外部控制与信息交换。
51单片机有4个8位的并行I/O端口,属于特殊寄存器,按字节或寻址输入/输出,便于实现位控功能。我们先跟据图片对4个端口有个大致分类了解,便于区分思想。
在这里插入图片描述
我们先看51单片机把1与3端口放在左边,0与2端口在右边。只需要记得即可。
P0-P3端口地址:80H、90H、A0H、B0H。正好相差16位。各自地址占0-7。
图片中发现P3口对应了很多中断引脚,这代表P3功能最为广袤,需要引起重视,还是以第一性原理下手,理解会应用即可。

3.2 P0位与P2概述

P0口(32-39):双向8位三态I/O口,地址位80H,位地址范围80H-87H。双功能口。输出低8位地址
功能一:是作为单片机系统的复用地址/数据总线使用
功能二:外接上拉电阻,支持输入输出,实现真正双向。
P2口(21-28):双功能口,地址为A0H,位地址范围A0H-A7H。输出高8位地址
功能一:作为通用I/O口使用。
功能二:作地址总线。输出高8位配合P0输出的低8位一起构成16位地址线。

3.3 P1位与P3概述

P1口(1-8):准双向口,地址90H,位地址为90H-97H。作为I/O口使用,可读引脚与读锁存器。输入时先写入FFH。由一个数据输出锁存器、两个数据输入缓冲器和输出驱动电路组成。
工作原理
作为输出口时:CPU输出1,输出高电平,CPU输出0,输出低电平。
作为输入口时:分为读锁存器与读引脚。读锁存器时,想锁存器写1

P3口(10-17):地址为B0H,位地址范围B0H-B7H。
功能一:了解即可,是逻辑电路的拓展思维。
功能二:了解引脚功能即可。
在这里插入图片描述
51 单片机的 P3 口采用引脚复用设计,前 6 个功能(串口收发、外部中断、定时器计数)是工程开发中最常用的外设接口,使用时不仅要对应物理引脚,还需要配置对应的控制寄存器来启用功能、设置模式。这种复用设计是早期引脚资源受限下的折中方案,也体现了 51 架构的资源局限性,因此在高需求场景下,才催生了外设更丰富、性能更强的 STM32 等单片机。

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐