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指令返回主程序。
相关推荐
阿ฅ( ̳• ε • ̳)ฅ13 分钟前
esp32C3核心版下载AT固件,等待上电问题
单片机·嵌入式硬件
czhaii5 小时前
TCRT5000漫反射STC15F204EA AD转换
嵌入式硬件·硬件工程
恶魔泡泡糖6 小时前
51单片机-DS18B20温度传感器
单片机·嵌入式硬件·51单片机
隔壁大炮7 小时前
GPIO——4种输出模式
单片机·嵌入式硬件·铁头山羊
阿ฅ( ̳• ε • ̳)ฅ8 小时前
STM32串口打印printf没反应
stm32·单片机·嵌入式硬件
古译汉书8 小时前
串口模拟工具:com0com 介绍、下载、驱动感叹号解决
linux·运维·服务器·stm32·单片机·嵌入式硬件
沐欣工作室_lvyiyi10 小时前
基于单片机的数字调频式立体声收音机
stm32·单片机·嵌入式硬件·毕业设计·收音机·数字调频式
国科安芯10 小时前
中高轨激光通信卫星伺服控制器抗辐照电源模块设计
单片机·嵌入式硬件·架构
嵌入式×边缘AI:打怪升级日志11 小时前
上机实验指南:Bootloader 串口升级与启动验证
单片机·嵌入式硬件
古译汉书11 小时前
【IoT死磕系列】Day 1:IOT物联网各个协议的整体了解
stm32·单片机·嵌入式硬件·物联网·iot