51单片机笔记

1.中断

基础51单片机有5个中断源,增强型52系列增加了一个定时计数器2,共有6个中断源。其中包含两个外部中断源,其余为内部中断源

51单片机中断部分流程如下:

①检测对应中断源标志位

②检测对应中断开关是否打开

③检测总中断是否打开

④查询是否有优先级更高或同优先级中断正在执行

⑤有高优先级或同级,等待其执行完毕进行中断;无高优先级和同级,直接进行中断

中断控制相关寄存器

中断控制主要由两方面:

A: 是否允许中断

B:中断的优先级设置 EA :中断总控开关 : 1-CPU开中断,0-关闭

低电平和下降沿触发的区别

①触发条件不同

低电平触发:低电平触发后一直处于中断状态

下降沿触发:检测到信号有下降沿时就触发开关动作,

②触发次数不同

低电平触发:只要引脚为低电平时间内中断一直有效,就会一直进入中断,直到变为高电平

下降沿触发:下降沿触发只触发一次,只在下次电平发生变化时才重新触发中断

配置外部中断:

1.开启总中断 : EA

2.开启外部中断 : EX0/1

3.设置中断触发方式: IT0

4.编写中断服务程序

2.串口

51单片机的UART

STC89C52有一个UART

STC89C52的UART有四种工作模式:

模式0: 同步移位寄存器

模式1: 8位UART,波特率可变(常用)

模式2:9位UART,波特率固定

模式3:9位UART,波特率可变

模式图

SUBF: 串口数据缓存寄存器,物理上是两个独立的寄存器,但占用相同的地址。 写操作时,写入的是发送寄存器,读操作时,读出的是接收寄存器

常用通信接口比较

UART参数及时序图

串口和中断

串口相关寄存器

SUBF: 串口数据缓存寄存器,物理上是两个独立的寄存器,但占用相同的地址。 写操作时,写入的是发送寄存器,读操作时,读出的是接收寄存器

3.定时器

STC89C52定时器资源

1.定时器个数三个(T0,T1,T2),T0和T1与传统的51单片机兼容,T2是此型号单片机增加的资源

注意:定时器的资源和单片机的型号是关联在一起的,不同的型号可能会有不同的定时器个数和操作方式,但一般来说,T0和T1的操作方式是所有51单片机所共有的。

框图

定时器在单片机内部就像一个小闹钟一样,根据时钟的输出信号每隔"一秒",计数单元的数值就加以,当计数单元数值增加到"设定的闹钟提醒时候"时,计数单元就会向中断系统发出中断申请,产生"响铃提醒",使得程序跳转到中断服务程序

STC89C52的T0和T1均由四种工作模式

模式0:13位定时器/计数器

模式1:16位定时器/计数器(常用)

模式2:8位自动重装载模式

模式3:两个8位计数器

模式一的框图

Sysclk : 系统时钟,即晶振周期,本开发板上的晶振为12MHZ C/T = 0 ->定时器, C/T =1 -> 计数器

定时器相关寄存器

1.寄存器是连接软硬件的媒介 2.在单片机中寄存器就是一段特殊的RAM存储器,一方面,寄存器可以存储和读取数据,另一方面,每一个寄存器背后都连接了一根导线,控制着电路的连接方式。 3.寄存器相当于一个复杂机器的"操作按钮"

中断资源

1.中断源个数: 8个(外部中断0,定时器0中断,外部中断1,定时器1中断,串口中断,外部中断2,外部中断3)

2.优先级个数: 4个

注意: 中断的资源和单片机的型号是关联在一起的,不同的型号可能会有不同的中断资源,例如中断源个数不同,中断优先级个数不同等等。

相关推荐
passer__jw7676 小时前
【51单片机】8. 矩阵LED显示自定义图案、动画
51单片机
Geometry Fu12 小时前
物联网控制技术 知识点总结 第三章 汇编语言 第四章 C51语言
汇编·物联网·51单片机
小狗祈祷诗1 天前
day40- 硬件学习之 51单片机II (中断处理)
51单片机·keil
yifa201604046 天前
STM32、Arduino和51单片机
stm32·学习·51单片机
passer__jw7676 天前
【51单片机】6. 定时器、按键切换流水灯&时钟Demo
单片机·51单片机
passer__jw7678 天前
【51单片机】2. 进阶点灯大师
单片机·51单片机
passer__jw7679 天前
【51单片机】1. 基础点灯大师
单片机·51单片机
SY师弟9 天前
51单片机——计分器
c语言·c++·单片机·嵌入式硬件·51单片机·嵌入式
passer__jw7679 天前
【51单片机】4. 模块化编程与LCD1602Debug
单片机·51单片机
SY师弟10 天前
51单片机基础部分——独立按键检测
单片机·嵌入式硬件·51单片机