定时器中断方式控制

中断寄存器中的EA是总控制开关,其他如ET0、EX1控制特定中断。中断有优先级,硬件优先执行高优先级信号。定义中断服务函数如voidTime0Handler()interrupt1,其中interrupt1标识INT1中断,using1指示使用哪个寄存器。中断号对应中断向量,处理器根据向量跳转执行服务函数。
摘要由CSDN通过智能技术生成

中断寄存器:

EA 为 总控制开关

ET0,EX1等为特定一个的开关

中断信号存在优先级,1.1 1.0 0.1 0.0优先级依次递减

硬件会先执行优先级高的信号,执行完后再执行优先级低的信号

使用中断命令,需要定义一个函数

例如函数void Time0Handler() interrupt 1

后面的interrupt1代表控制的是INT1的中断。这个函数可以和main一起执行(类似多线程)

定义中断服务函数

函数类型 函数名 (形式参数) interrupt n [using n]

中断号 中断源 中断向量

0 外部中断0 0003H

1 定时器/计数器0 000BH

2 外部中断1 0013H

3 定时器/计数器1 001BH

4 串行口 0023H

interrupt 关键字是不可缺少的,由它告诉编译器该函数是中断服务函数,并由后面的

n 指明所使用的中断号。n 的取值范围为0-31,但具体的中断号要取决于芯片的型号,像

AT89C51 实际上就使用0-4 号中断。每个中断号都对应一个中断向量,具体地址为8n+3,

中断源响应后处理器会跳转到中断向量所处的地址执行程序,编译器会在这地址上产生一个

无条件跳转语句,转到中断服务函数所在的地址执行程序。

//此处引用至 单片机中断中 void time0() interrupt 1 using 1中的interrupt 1 和 using 1各代表什么意思_武武haha的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值