【STC15 学习笔记】8051 中断号简介
1.【STC15 学习笔记】【转载】51单片机学习教程(简单入门)2.【STC15 学习笔记】Proteus仿真
3.【STC15 学习笔记】8051 中断号简介
4.【STC15 学习笔记】细说STC15单片机I/O口的四种工作模式5.【STC15】单片机中常说的 1T 和 12T 的意思6.【STC15】面向对象的.h/.c程序架构7.【STC15】内部RAM讲解(data/idata/xdata的区别)&全局变量的保存位置的设定8.【STC15】通过硬件PWM调整灯亮度9.【STC15】CCP PCA PWM区别10.【STC15】前后台方式实现按键的长按检测(面向对象)11.【STC15】实现printf()重定向的可能出现的问题的解决12.【STC15】系统低功耗状态机编程(面向对象思想)8051架构是一种经典的微控制器架构,广泛应用于各种嵌入式系统中。在8051架构中,中断是一种重要的机制,用于处理异步事件,如外部设备的输入、定时器的溢出等。每个中断都有一个对应的中断号,用于标识和处理不同的中断源。
以下是8051架构中常见的中断号及其对应的硬件资源:
-
外部中断0 (INT0)
- 中断号: 0
- 描述: 外部中断0,通常连接到P3.2引脚。
-
定时器0中断
- 中断号: 1
- 描述: 定时器0溢出中断。
-
外部中断1 (INT1)
- 中断号: 2
- 描述: 外部中断1,通常连接到P3.3引脚。
-
定时器1中断
- 中断号: 3
- 描述: 定时器1溢出中断。
-
串行通信中断 (UART)
- 中断号: 4
- 描述: 串行通信中断,用于处理UART的接收和发送事件。
-
定时器2中断 (仅在某些8052系列中存在)
- 中断号: 5
- 描述: 定时器2溢出中断。
每个中断号对应一个中断向量地址,CPU在响应中断时会跳转到相应的中断向量地址执行中断服务程序(ISR)。中断向量地址通常是固定的,例如:
- 中断号0的中断向量地址是0x0003。
- 中断号1的中断向量地址是0x000B。
- 中断号2的中断向量地址是0x0013。
- 中断号3的中断向量地址是0x001B。
- 中断号4的中断向量地址是0x0023。
- 中断号5的中断向量地址是0x002B(仅在8052系列中存在)。
在编写中断服务程序时,需要确保ISR的入口地址与中断向量地址一致,并且ISR的执行时间尽可能短,以避免影响其他中断的响应。
例如,一个典型的定时器0中断服务程序可能如下所示:
void Timer0_ISR(void) interrupt 1 {
// 中断服务程序代码
// 清除定时器0中断标志
TF0 = 0;
}
在这个例子中,interrupt 1
表示这是一个定时器0的中断服务程序。TF0 = 0
用于清除定时器0的中断标志,以确保下次中断能正确触发。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2023-08-09 【C语言基础】C语⾔中⼆维数组作为函数参数来传递的三种⽅法
2023-08-09 【Linux 应用开发】信号的产生和处理的设置