单片机中void Timer0_isr(void) interrupt 1 using 1 怎么理解

我知道这是完成中断的,但是不太理解interrupt 1 ?using1?
2024-12-29 03:42:39
推荐回答(5个)
回答1:

1、这个是定时器0的中断函数。


2、从字面上可以看到Timer0——定时器0,interrupt——中断。

3、定时器设置初值并打开后,当计数器计数到你设置的数后,就会产生一个定时器中断,然后无论你当时程序在运行什么代码,都会跳转到IsrTimer0这个函数运行,运行完毕后再跳回去执行之前的代码。


4、void IsrTimer0(void) interrupt 1using 1这个写法不能变,函数名是也要这样写的。



扩展资料


定时器的适用范围及注意事项


适用范围


1、在实行峰谷电价差的地区,可使用大功率电器在低电价阶段自动运行。

2、用于控制需定时开与关的家用电器。如:饮水机、热水器、空调、电饭煲、广告照明等。

3、用于控制通电时间长短。如:电动自行车电池、手机电池、蓄电池的充电。

4、需频繁通断的用电场合。如花圃、草坪的间歇喷灌、鱼缸的周期性增氧过滤、喷泉等。

5、家庭防盗系统的自动控制。

注意事项

1、本产品所接电器功率总和不得超过额定功率,为室内干燥环境中使用。

2、本产品可循环工作,设置的程序可循环使用。

3、不可把本产品直接插入已运行中的电器上。

4、当电器用品接入定时器后,开关状态务必是开启状态。

5、保修期内请勿擅自拆卸定时器,一旦拆卸,将终止保修服务。需维修时请找专业电工或专业人士。


参考资料:百度百科-定时器

回答2:

可以参考下面的理解:

1、这个是定时器0的中断函数。

2、从字面上可以看到Timer0——定时器0,interrupt——中断。

3、定时器设置初值并打开后,当计数器计数到用户设置的数后,就会产生一个定时器中断,然后无论你当时程序在运行什么代码,都会跳转到IsrTimer0这个函数运行,运行完毕后再跳回去执行之前的代码。

4、void IsrTimer0(void) interrupt 1using 1这个写法不能变,函数名是也要这样写的。

扩展资料:

单片机定时器介绍

定时/计数器T0和T1分别是由两个8位的专用寄存器组成,即定时/计数器T0由TH0和TL0组成,T1由TH1和TL1组成。

此外,其内部还有2个8位的特殊功能寄存器TMOD和TCON,TMOD负责控制和确定T0和T1的功能和工作模式,TCON用来控制T0和T1启动或停止计数,同时包含定时/计数器的状态。

TF1:定时器1溢出标志。定时/计数器溢出时由硬件置位。中断处理时由硬件清除。或用软件清除。

TF0:定时器0溢出标志。定时/计数器溢出时由硬件置位。中断处理时由硬件清除,或用软件清除。

参考资料来源:百度百科-单片机

回答3:

interrupt 1这就相当于门牌号,因为51有5个中断源,不同的中断对应的号不一样,1对应的是定时器0中断,外部中断0 对应的是0,外部中断1对应的是2,定时器1对应的是3,串口中断对应的是4,通过不同的号区分不同的中断。至于using1这个可以不用

回答4:

这是按照51单片机的中断向量顺序编的号,也是缺省状态下的优先级。
外部中断0 interrupt 0
定时器0 interrupt 1
外部中断1 interrupt 2
定时器1 interrupt 3
串口中断 interrupt 4
定时器2 interrupt 5
后面的using1 就是在中断服务器里工作寄存器Rn使用第1工作区
工作寄存器共有4个工作区,由PSW中的RS1 RS0决定
RS1 RS0
0 0 工作区0 对应00H~07H
0 1 工作区1 对应08H~0FH
1 0 工作区2 对应10H~17H
1 1 工作区3 对应18H~1FH

回答5:

interrupt 1 就是定时器0的中断处理程序, 后面的1是中断号
interrupt 0 外部中断0
interrupt 2 外部中断1
interrupt 3 定时器1中断
interrupt 4 串口中断

using 1 就是寄存器组切换到第二组, 共4个寄存器组, 都是用R0 ~ R7来使用
00H ~ 07H 第一组
08H ~ 0FH 第二组
10H ~ 17H 第三组
18H ~ 1FH 第四组