文档详情

外部中断应用程序设计.ppt

发布:2020-04-27约1.26千字共11页下载文档
文本预览下载声明
单片机原理与接口技术;;;(1)中断控制寄存器;(2)中断的程序的初始化步骤;(3)中断和查询结合的方法扩展多个外中断源;#include reg51.h sbit P1_0=P1^0; sbit P1_1=P1^1; sbit P1_2=P1^2; sbit P1_3=P1^3; sbit P1_4=P1^4; sbit P1_5=P1^5; sbit P1_6=P1^6; sbit P1_7=P1^7; void main( ) {P1=0x00; IT0=1; EX0=1; EA=1; while(1); } ;例 出租车计价器计程方法是车轮每运转一圈产生一个负脉冲,从外中断(INT0 P3.2)引脚输入,行驶里程=轮胎周长×运转圈数,设轮胎周长为2m,试实时计算出租车行驶里程(单位:m),数据存于 32H、31H、30H中。 ; ORG 0000H ;复位地址 LJMP STAT ;转初始化 ORG 0003H ;中断入口地址 LJMP INT ;转中断服务程序 ORG 0100H ;初始化程序首地址 STAT: SETB IT0 ;置边沿触发方式 MOV IE,#81H ;开中断 MOV IP,#01H ;置高优先级 MOV 30H,#0 ;里程计数器清零 MOV 31H,#0 MOV 32H,#0 SJMP $ ; 等待中断 ; ORG 0200H ;中断服务子程序首地址 INT: MOV A, 30H ;读低8位里程计数器 ADD A, #2 ;低8位里程计数器加2m MOV 30H, A ;回存 CLR A ADDC A, 31H ;中8位里程计数器加进位 MOV 31H, A ;回存 CLR A ADDC A, 32H ;高8位里程计数器加进位 MOV 32H, A ;回存 RETI ;中断返回 END;感谢专家批评、指正!
显示全部
相似文档