day40- 硬件学习之 51单片机II (中断处理)

一、独立按键的使用

main.c


key.c


key.h

二、中断处理

2.1 定义

中断系统是为使CPU具有对外界紧急事件的实时处理能力而设置的。


当CPU正在处理某件事的时候外界发生了紧急事件请求,要求CPU暂停当前的工作,转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称为 ++中断 ;++


实现这种功能的部件称为++中断系统++


请示CPU中断的请求源称为++中断源++
51单片机中嵌套优先级最多两层;

若中断优先级相同,中断号越小,越先响应;


中断执行流程:

  1. 中断源发出中断请求;
  2. CPU检查是否响应中断及该中断源是否屏蔽;
  3. 检查中断优先级;
  4. 保护现场;
  5. 执行中断服务函数;
  6. 恢复现场;
    中断向量表:

一个指针的数组,其中保存中断服务函数的入口地址;

51中的中断向量:

中断设置:中断方式、中断允许;

中断和轮询之间的区别

  1. 中断时,设备会通知CPU引起注意;而在轮询中,CPU会稳定地检查设备是否需要注意。
  2. 中断不是协议,而是一种硬件机制;轮询反之。
  3. 在中断中,该设备由中断处理程序提供服务;轮询时,该设备由CPU维修。
  4. 中断可以随时发生;轮询时,CPU会以固定的间隔稳定地对设备进行投票。
  5. 在中断中,中断请求线用作指示设备需要维修的指示;在轮询时,命令就绪位用作指示,表明设备需要维修。
  6. 在中断中,一旦任何设备将其中断,处理器就会受到干扰;在轮询中,处理器通过重复检查每个设备的命令就绪位来浪费无数的处理器周期。

2.2 外部中断使用方法

2.2.1 IE寄存器

2.2.2 IPH与IP寄存器

2.2.3 TCON寄存器

下降沿触发:从高电平到低电平的过程;

低电平触发:电平一直为低电平;

三、定时器/计数器

定时器的工作原理:

定时器的原理是一个加法器,通过晶振分之一开始加,直到溢出,发生中断;

定时器的功能:

LED点亮、数码管显示及模拟PWM功能

3.1 TCON寄存器

3.2 TMOD寄存器

四、PWM(脉冲宽度调制)及 蜂鸣器

PWM:一种通过数字信号控制模拟电路的技术;

指标:占空比、周期
蜂鸣器:分为有源和无源,源不是指电源而是指震荡源


通过按键实现蜂鸣器发出响声:

main.c :

相关推荐
泛凡(Linyongui)15 小时前
PY32F002B实践之四--宠物腹背理疗仪项目踩坑及项目总结复盘
c语言·keil·32位单片机·腹背理疗仪项目实践·普苒py32
智者知已应修善业1 天前
【51单片机单按键切换广告屏】2023-5-17
c++·经验分享·笔记·算法·51单片机
泛凡(Linyongui)1 天前
PY32F002B实践之二--宠物腹背理疗仪项目介绍及头文件解析
c语言·keil·py32·32位单片机·腹背理疗仪项目实践
泛凡(Linyongui)2 天前
PY32F002B实践之三--宠物腹背理疗仪项目功能代码分析说明
c语言·keil·32位单片机·腹背理疗仪项目实践·普苒py32
智者知已应修善业2 天前
【51单片机独立按键控制数码管动态显示和LED间隔闪烁并清零】2023-5-28
c语言·经验分享·笔记·算法·51单片机
普中科技2 天前
【普中 51-Ai8051 开发攻略】-- 第 9 章 按键控制实验
单片机·嵌入式硬件·开发板·keil·按键·普中科技·ai8051u
zd8451015003 天前
51单片机-矩阵按键程序代码
矩阵·51单片机
智者知已应修善业3 天前
【51单片机1,左边4个LED灯先闪烁2次后,右边4个LED灯再闪烁2次:2,接着所用灯一起闪烁3次,接着重复步骤1,如此循环。】2023-5-19
c++·经验分享·笔记·算法·51单片机
zd8451015003 天前
51单片机-串口程序代码
单片机·嵌入式硬件·51单片机
4caf13 天前
作业2:6位数码管静态显示
嵌入式硬件·51单片机