STC/Ai8051U 中断列表

中断表格-查询📖

中断号 中断向量 中断类型
0 0003 H INT0
1 000B H 定时器0
2 0013 H INT1
3 001B H 定时器1
4 0023 H 串口1
5 002B H ADC
6 0033 H LVD
8 0043 H 串口2
9 004B H SPI
10 0053 H INT2
11 005B H INT3
12 0063 H 定时器2
13 006B H NULL
14 0073 H 系统内部中断
15 007B H 系统内部中断
16 0083 H INT4
17 008B H 串口3
18 0093 H 串口4
19 009B H 定时器3
20 00A3 H 定时器4
21 00AB H 比较器
24 00C3 H I2C
25 00CB H USB
26 00D3 H PWMA
27 00DB H PWMB
28 00E3 H CAN1
29 00EB H CAN2
30 00F3 H LIN
36 0123 H RTC
37 012B H P0口中断
38 0133 H P1口中断
39 013B H P2口中断
40 0143 H P3口中断
41 014B H P4口中断
42 0153 H P5口中断
43 015B H P6口中断
44 0163 H P7口中断
45 016B H P8口中断
46 0173 H P9口中断
47 017BH M2M DMA中断
48 0183H ADC DMA中断
49 018BH SPI DMA中断
50 0193H URIIT DMA中断
51 019BH URIR DMA中断
52 01A3H UR2T DMA中断
53 01ABH UR2R DMA中断
54 01B3H UR3T DMA中断
55 01BBH UR3R DMA中断
56 01C3H UR4T DMA中断
57 01CBH UR4R DMA中断
58 01D3H TFT彩屏DMA中断
59 01DBH TFT彩屏中断
60 01E3H I2CT DMA中断
61 01EBH I2CR DMA中断
62 01F3H I2S中断
63 01FBH I2ST DMA中断
64 0203H I2SR DMA中断

如果中断超出31以后需要如下操作(Keil4/5)!

这个方法的核心是借用13号保留中断向量,解决中断号不匹配的报错,以下是完整流程和对应的文件内容:

一、操作流程

  1. 修改中断服务函数的中断号:将原中断号改为"13"(13号是保留中断,可借用);
  2. 添加汇编文件重定向中断向量:新建汇编文件,将目标中断的入口地址(如PWM5中断的0103H)跳转到13号中断的入口地址(006BH);
  3. 编译验证:Keil会自动将13号中断映射到实际中断服务函数,完成中断响应。

二、对应文件内容

1. C文件(如Demo.c

c 复制代码
#include <Ai8051U.h>
#include <intrins.h>

#define FOSC 42000000UL
#define BAUD 65536 - FOSC/115200/4  // 波特率计算

// 将中断服务函数的中断号改为13
void PWM5_ISR(void) __interrupt 13  
{
    // 此处写PWM5中断的处理逻辑
}

void main(void)
{
    P_SW2 = 0xe80;
    WTST = 0x00;
    CCOCON = 0x00;
    // 其他初始化代码...
    while(1);
}

2. 汇编文件(如Isr.asm

asm 复制代码
        CSBG    AT  0103H   ; 定位到PWM5中断的入口地址0103H
        LJMP    006BH      ; 跳转到13号中断的入口地址006BH
        END

三、原理说明

  • 硬件触发PWM5中断时,会自动跳转到0103H地址;
  • 汇编文件中LJMP 006BH会将执行流跳转到13号中断的入口地址006BH
  • Keil编译后,006BH处会自动生成LJMP PWM5_ISR,最终跳转到实际的中断服务函数;
  • 中断执行完成后,通过RETI指令返回主程序。
相关推荐
REDcker15 分钟前
嵌入式MCU内存布局详解 Flash SRAM Keil MAP与启动分散加载实践
单片机·嵌入式硬件
qdprobot30 分钟前
【无标题】
人工智能·单片机·嵌入式硬件·51单片机·硬件工程·iot·mixly
Hello:CodeWorld1 小时前
μC/OS vs FreeRTOS:嵌入式实时操作系统深度对比
c语言·开发语言·单片机
振南的单片机世界1 小时前
电机反电动势:断电瞬间的“高压反击”,续流二极管挡驾
单片机·嵌入式硬件
平凡灵感码头1 小时前
MCU 组成原理详解—— 从硬件框图透视微控制器的完整架构
单片机·嵌入式硬件·架构
山木嵌入式1 小时前
【STM32进阶】中断体系全解析:从核心原理到实战(含面试高频考点)
stm32·嵌入式硬件·面试·中断·nvic
puamac2 小时前
c#打开cmd然后输入claude
stm32·单片机·c#
搁浅小泽2 小时前
电子行业常用仪器设备介绍
嵌入式硬件·可靠性工程师
zd8451015002 小时前
[嘉立创EDA]导出BOM设置
嵌入式硬件