试题详情
- 简答题在C51中,中断函数与一般函数有什么不同?
-
中断函数在定义时后面带interruptm修饰符,m的取值为0~31,对应的中断情况如下:0——外部中断0,1——定时/计数器T0,2——外部中断1,3——定时/计数器T1,4——串行口中断,5——定时/计数器T2,其他值预留。
编写MCS-51中断函数需要注意如下几点。
(1)中断函数不能进行参数传递,如果中断函数中包含任何参数声明都将导致编译出错。
(2)中断函数没有返回值。
(3)在任何情况下都不能直接调用中断函数
(4)如果在中断函数中调用了其他函数,则被调用函数所使用的寄存器必须与中断函数相同,否则会产生不正确的结果。
(5)C51编译器对中断函数编译时会自动在程序开始和结束处加上相应的内容。
(6)C51编译器从绝对地址8m+3处产生一个中断向量,其中m为中断号,也即interrupt后面的数字。该向量包含一个到中断函数入口地址的绝对跳转。
(7)中断函数最好写在文件的尾部,并且禁止使用extern存储类型说明。防止其他程序调用。 关注下方微信公众号,在线模考后查看
热门试题
- 如果8031单片机的时钟频率为12MHz
- 指令MULAB执行前(A)=43H,(B
- MCS-51单片机片内RAM区中有()个
- MCS-51单片机内部RAM的寄存器区共
- 单片机的CPU从功能上可分为运算器和存储
- 在Keil C中规定使用()个字节表示i
- 当8031单片机配有12MHz晶振时,执
- 当将PINSEL0[3:0]设置成()时
- 已经存在定义”#defineps((un
- 异步串行通信中,一帧数据中必须包含()。
- 共阴LED显示器中发光二极管的负极应接(
- 堆栈操作是按“后进先出”的原则存取数据。
- 指令MOV A,@R0执行前(A)=86
- 简述MCS-51系列单片机的指令格式
- 设以8051为主机,外部扩展EEPROM
- MCS-51单片机的内部RAM共有128
- LED动态显示方式中,将所有的段选线()
- MSC-51单片机的地址总线有()。
- 下列单片机中具有4K-ROM的是()。
- 当8051单片机的RST引脚上出现持续(