欢迎来到天天文库
浏览记录
ID:47914937
大小:276.00 KB
页数:2页
时间:2019-10-25
《INT0 中断计数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、24INT0中断计数/*名称:INT0中断计数说明:每次按下计数键时触发INT0中断,中断程序累加计数,计数值显示在3只数码管上,按下清零键时数码管清零*/#include#defineucharunsignedchar#defineuintunsignedint//0~9的段码ucharcodeDSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};//计数值分解后各个待显示的数位ucharDSY_Buffer[]={0,0,0};ucharCount=0;sbitClear_Key=P3
2、^6;//数码管上显示计数值voidShow_Count_ON_DSY(){DSY_Buffer[2]=Count/100;//获取3个数DSY_Buffer[1]=Count%100/10;DSY_Buffer[0]=Count%10;if(DSY_Buffer[2]==0)//高位为0时不显示{DSY_Buffer[2]=0x0a;if(DSY_Buffer[1]==0)//高位为0,若第二位为0同样不显示DSY_Buffer[1]=0x0a;}P0=DSY_CODE[DSY_Buffer[0]];P1=DSY_CODE[DSY_Buffer[1]];P2=DSY_CODE[DSY_
3、Buffer[2]];}//主程序voidmain(){P0=0x00;P1=0x00;P2=0x00;IE=0x81;//允许INT0中断IT0=1;//下降沿触发while(1){if(Clear_Key==0)Count=0;//清0Show_Count_ON_DSY();}}//INT0中断函数voidEX_INT0()interrupt0{Count++;//计数值递增}
此文档下载收益归作者所有