首页 51单片机INTO、INT1中断计数c语言源程序

51单片机INTO、INT1中断计数c语言源程序

举报
开通vip

51单片机INTO、INT1中断计数c语言源程序单片机C语言程序设计:INT0中断计数来源:HYPERLINK"http://www.21ic.com/"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"21ic 作者:关键字:HYPERLINK"http://www.21ic.com/tags/INT0"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"INT0   HYPERLINK"h...

51单片机INTO、INT1中断计数c语言源程序
单片机C语言程序设计:INT0中断计数来源:HYPERLINK"http://www.21ic.com/"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"21ic 作者:关键字:HYPERLINK"http://www.21ic.com/tags/INT0"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"INT0   HYPERLINK"http://www.21ic.com/tags/%B5%A5%C6%AC%BB%FA"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"单片机   HYPERLINK"http://www.21ic.com/tags/C%D3%EF%D1%D4"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"C语言   HYPERLINK"http://www.21ic.com/tags/%B3%CC%D0%F2%C9%E8%BC%C6"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"程序设计   HYPERLINK"http://www.21ic.com/tags/"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"   /*  名称:INT0 中断计数说明:每次按下计数键时触发INT0 中断,中断程序累加计数,计数值显示在 3 只数码管上,按下清零键时数码管清零*/#include#define uchar unsigned char#define uint unsigned int//0~9 的段码uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};//计数值分解后各个待显示的数位uchar DSY_Buffer[]={0,0,0}; uchar Count=0;sbit Clear_Key=P3^6;//数码管上显示计数值void Show_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_Buffer[2]];}//主程序void main(){P0=0x00;P1=0x00;P2=0x00;IE=0x81; //允许 INT0 中断IT0=1;         //下降沿触发while(1){if(Clear_Key==0) Count=0; //清 0Show_Count_ON_DSY();     }}//INT0 中断函数void EX_INT0() interrupt 0 {Count++; 计数值递增}单片机C语言程序设计:INT0及INT1中断计数来源:HYPERLINK"http://www.21ic.com/"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"21ic 作者:关键字:HYPERLINK"http://www.21ic.com/tags/INT0"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"INT0   HYPERLINK"http://www.21ic.com/tags/INT1"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"INT1   HYPERLINK"http://www.21ic.com/tags/%B5%A5%C6%AC%BB%FA"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"单片机   HYPERLINK"http://www.21ic.com/tags/C%D3%EF%D1%D4"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"C语言   HYPERLINK"http://www.21ic.com/tags/"\t"http://www.21ic.com/jichuzhishi/mcu/program/2013-06-27/_blank"   /*  名称:INT0 及 INT1 中断计数说明:每次按下第 1 个计数键时,第 1 组计数值累加并显示在右边 3 只数码管上, 每次按下第 2 个计数键时,第2 组计数值累加并显示在左边 3 只数码管上,后两个按键分别清零。*/#include#define uchar unsigned char#define uint unsigned intsbit K3=P3^4; //2 个清零键sbit K4=P3^5; //数码管段码与位码uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};uchar code DSY_Scan_Bits[]={0x20,0x10,0x08,0x04,0x02,0x01};//2 组计数的显示缓冲,前 3 位一组,后 3 位一组uchar data Buffer_Counts[]={0,0,0,0,0,0};uint Count_A,Count_B=0; //延时void DelayMS(uint x){uchar t;while(x--) for(t=0;t<120;t++);}//数据显示void Show_Counts(){uchar i;Buffer_Counts[2]=Count_A/100;Buffer_Counts[1]=Count_A%100/10;Buffer_Counts[0]=Count_A%10;{if( Buffer_Counts[2]==0)Buffer_Counts[2]=0x0a;if( Buffer_Counts[1]==0)}Buffer_Counts[1]=0x0a;Buffer_Counts[5]=Count_B/100;Buffer_Counts[4]=Count_B%100/10;Buffer_Counts[3]=Count_B%10;if( Buffer_Counts[5]==0){Buffer_Counts[5]=0x0a;if( Buffer_Counts[4]==0)Buffer_Counts[4]=0x0a;}for(i=0;i<6;i++){P2=DSY_Scan_Bits[i];P1=DSY_CODE[Buffer_Counts[i]];DelayMS(1);   }}//主程序void main(){IE=0x85;PX0=1;中断优先IT0=1;IT1=1;while(1){if(K3==0) Count_A=0;if(K4==0) Count_B=0;Show_Counts();}}//INT0 中断函数void EX_INT0() interrupt 0 {Count_A++;}//INT1 中断函数void EX_INT1() interrupt 2 {Count_B++;}
本文档为【51单片机INTO、INT1中断计数c语言源程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
剪刀石头布
暂无简介~
格式:doc
大小:159KB
软件:Word
页数:5
分类:
上传时间:2022-01-14
浏览量:2