day05 51单片机-外部中断、定时器

news/2024/10/18 16:55:39/

1 外部中断——按键控制LED亮灭

1.1 需求描述

本案例通过检测SW3触发的外部中断实现P00对应LED的亮灭。

1.2 硬件设计

1.2.1 中断简介

单片机中断是一种重要的计算机编程概念,用于处理在程序执行过程中突然发生的事件或条件。这些事件可以是外部硬件触发的,如按下按钮、传感器数据到达或定时器溢出等,也可以是软件内部条件满足时触发的,如某个特定的计算结果或状态变化,如图所示:

在这里插入图片描述

中断的作用在于允许单片机暂时中止当前执行的程序,跳转到事先定义好的中断服务程序,以处理特定事件,然后再返回到原来的程序流程。这种机制使单片机能够实时响应外部事件,提高了系统的灵活性和响应能力。

查看手册可知,我们用的STC89C52共有8个中断,所有中断均可设置4个优先级,高优先级的中断可以打断低优先级的中断;当两个中断平级时,将按照查询顺序来决定哪一个先被响应。

(1)单片机中断系统结构如下

在这里插入图片描述

(2)所有8个中断按照查询顺序列表如下

在这里插入图片描述

(3)中断触发条件

在这里插入图片描述

(4)上表中涉及的寄存器

在这里插入图片描述

1.2.2 中断初始化

在这里插入图片描述

1.2.3 软件设计

#include <STC89C5xRC.H> //包含STC89C52的头文件#define LED0 P00void Init_INT0()
{// 打开中断总开关EA = 1;// 打开外部中断0开关EX0 = 1;// 配置外部中断为下降沿触发IT0 = 1;
}void main()
{Init_INT0();while (1);
}/*** @brief 中断函数中打开LED0,代表当触发中断时,LED0会打开。*        根据我们之前的设置,当按下SW3时,P32为低电平,此时LED0打开。**        interrupt 0表示0号中断触发时执行该函数的逻辑*        如果用C语言编程,中断查询次序就是中断号*/
void INT0_Func() interrupt 0
{// 中断中打开LED0LED0 = ~LED0;
}

2 定时器中断——闪烁LED

2.1 需求描述

本案例通过时钟中断实现P00对应的LED 0,1秒1次闪烁。

2.2


http://www.ppmy.cn/news/1430989.html

相关文章

基于SpringBoot的宠物领养网站管理系统

基于SpringBootVue的宠物领养网站管理系统的设计与实现~ 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBootMyBatis工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 主页 宠物领养 宠物救助站 宠物论坛 登录界面 管理员界面 摘要 基于Spr…

Jmeter实现参数化的四种方法

目录 一、CSV Data Set Config/CSV数据文件设置 二、函数助手 1、Random函数 2、RandomString随机字符串 3、CSVRead 4、time 5、UUID 三、计数器&#xff08;Counter&#xff09; 参数化&#xff1a;自动化测试脚本的一种常用技巧&#xff0c;事先准备好数据&#xff…

路由引入、路由策略、路由过滤实验

实验拓扑 实验思路 配置ip地址&#xff0c;配置RIP,OSPF;在R2上分别在RIP下引入OSPF&#xff0c;在OSPF下引入RIP;在R2上配置acl 2000,拒绝R4的业务网段&#xff0c;同时允许其他网段访问&#xff08;acl 2000 默认拒绝网段&#xff09;&#xff1b;通过配置路由过滤router-…

聚类与分类的区别

聚类和分类是机器学习中的两个基本概念&#xff0c;两者的主要区别在于用于分类的数据已经预先标记好类别&#xff0c;而用于聚类的数据则没有预先标记的类别。以下是详细介绍&#xff1a; 目的不同。聚类的目的是发现数据中的自然分组&#xff0c;将相似或相关的对象组织在一…

路由过滤,策略实验

1配置ip [r1]int g0/0/0 [r1-GigabitEthernet0/0/0]ip add 100.1.1.1 24 [r1-GigabitEthernet0/0/0]int l0 [r1-LoopBack0]ip add 192.168.0.1 32 [r1-LoopBack0]int l1 [r1-LoopBack1]ip add 192.168.1.1 32 [r2]int g0/0/0 [r2-GigabitEthernet0/0/0]ip add 100.1.1.2 24 [r…

mysql面试题八(SQL语句)

目录 1.SQL 基本组成部分 常用操作示例 创建表 插入数据 查询数据 更新数据 删除数据 创建索引 授予用户权限 2.常见的聚合查询 1. 计数&#xff08;COUNT&#xff09; 2. 求和&#xff08;SUM&#xff09; 3. 平均值&#xff08;AVG&#xff09; 4. 最大值&…

汽车IVI中控开发入门及进阶(十六):carplay认证

现在有些中控采用高通的芯片如8155、8295等,实现多屏互动等,但是也有一些车型走低成本方案,比如能够实现HiCar、CarLife或者苹果Apple的Carplay等能进行手机投屏就好了。 能实现CarPlay功能通过Carplay认证,也就成了一些必须的过程,国产车规级中控芯片里,开阳有一款ARK1…

Linux部署Coturn以及关于打洞的思考

目录 Coturn介绍部署架构图 2.1 局域网——无NAT映射 2.2 NAT网Corturn安装步骤验证 4.1 局域网——无NAT映射 4.2 NAT网 4.2.1 Cywin安装步骤 4.2.2 Coturn安装步骤 4.2.3 验证引言 下文部署架构图为Corturn为解决互联网NAT环境下“找朋友”的部署架构,也是Coturn发挥其价值…