收藏 分销(赏)

单片机_中断函数调用.doc

上传人:s4****5z 文档编号:8728370 上传时间:2025-02-27 格式:DOC 页数:4 大小:47KB
下载 相关 举报
单片机_中断函数调用.doc_第1页
第1页 / 共4页
单片机_中断函数调用.doc_第2页
第2页 / 共4页
点击查看更多>>
资源描述
中断函数的使用:《单片机C语言编程与实例》 中断函数通过使用interrupt关键字和中断编号0-4来实现。 使用该扩展属性的函数声明语法如下: 返回值 函数名 interrupt n N对应中断源的编号 中断编号告诉编译器中断程序的入口地址,它对应者IE寄存器中的使能位,即IE寄存器中的0位对应着的外部中断0,相应的外部中断0的中断编号是0。 中断编号 中断源 入口地址 0 外部中断0 0003H 1 定时器/计数器0溢出 000BH 2 外部中断1 0013H 3 定时器/计数器1溢出 001BH 4 串行口中断 0023H 当正在执行一个特定任务是,可能有更紧急的事情需要CPU处理,这就涉及到终端优先级,搞优先级的中断可以中断正在处理的底有限级中断程序,因而最好给每种优先级分配不同的寄存器组。在c51中可以使用using制定的寄存器组,using后的变量为0-3的长整数,分别表示51单片机内的四个寄存器组。 中断函数的完整语法及实例如下: 返回值 函数名(【参数】)【模式】【重入】interrupt n [using n] Unsigned int interruptent; Unsigned char second; Void time0(void)interrupt 1 using 2 { if(++interruptent==4000) %计数到4000 {second++; % 另一个计数器 Interruptent=0; %计数器清零 } } 要是摸个中断源的申请得到相应,必须保证EA=1和相应的允许位为1 定义中断服务函数的一般形式为:: 函数类型 函数名(形式参数表)[interrupt n][using n] Interrupt 后面的n是中断号,n的取值范围为0-31,编译器从8n+3处产生中断向量。 11.111111 外部中断 例题:通过P1.7口电量发光二极管,然后外部输入一脉冲串,则发光二极管亮、暗交替 #include <REGX51.H> Sbit P1_7=P1^7; Void tnterrupt0()interrupt 0 using 2//定义定时器0 { P1_7=!P1^7;} Void main() { EA=1;//开启总中断 IT0=1;//外部中断0低电平触发 EX0=1; //外部中断0 P1_7=0; Do()while(1); } 2222相套中断 外部中断INT1触发后,启动计数器0,计数达到10次后停止计数,启动定时器1,由定时器1控制定时,由P1.7输出周期为200ms的方波性能号,接受2次中断后关闭方波发生器,P1.7置低。 #include <REGX51.H> #define uchar unsigned char Uchar data a,b,c; Void tnterrupt0()interrupt 2using 1//定义外部中断1 { a++;} Void time0()interrupt 1using 2//定义计数器0 { TL0=0Xff; B++; } Void time1()interrupt 3using 3//定义计时器1 { TH1=0x06; c--; } Sbit P1_7=P1^7; Void main() { P1_7=1; //初始化 TCON=0x01; //外部中断为低电平出触发方式 TMOD=0x27; //启动定时器1和计数器0,工作方式2 IE=0x8B; //开中断 a=0; do{}while(a!=1); //等待外部中断 P1_7=!P1_7;//取反 TL0=0xFF;//初值 TH0=0x06;//初值 b=0; TR0=0; TR1=1; Do { C=0xC8; Do{}while(c!=0); P1_7=!P1_7; }while(a!=3); TR1=0; P1_7=0; EA=0;//关闭总中断 EX0=0; //禁止外部中断 }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 百科休闲 > 社会民生

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服