欢迎来到天天文库
浏览记录
ID:56100805
大小:70.00 KB
页数:3页
时间:2020-06-19
《基于51单片机的篮球24秒倒计时器.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、基于51单片机的篮球24秒倒计时器#include#defineucharunsignedcharsbitwei0=P1^0;sbitwei1=P1^1;sbitwei2=P1^2;sbitgnd=P2^5;sbitkey2=P2^0;ucharcount;//用于记录发生了多少次中断的计数器ucharsec=240;ucharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//注:
2、用code是把后面的数据存在程序存贮器中,如果不用code,数据就会存在随机存贮器中。voiddelayms(intx){inty,z;for(y=x;y>0;y--)for(z=110;z>0;z--);}voiddisplay(intdat){ucharbai,shi,ge;bai=dat/100;shi=dat%100/10;ge=dat%10;wei0=0;P0=table[bai];delayms(1);wei0=1;wei1=0;P0=table[shi]&0x7f;delayms(1);wei1=1;wei2=0;P0=ta
3、ble[ge];delayms(1);wei2=1;P0=0xff;//这一句和下一句是为了降低数码管亮度,同学们不必写。delayms(20);}voidkeyscan(){if(key2==0){delayms(5);//延时消抖while(!key2);//松手检测TR0=~TR0;}}voidmain(){gnd=0;TMOD=0x01;//启用定时器0的工作方式1TH0=(65536-50000)/256;//装初值TL0=(65536-50000)%256;//装初值EA=1;//打开总中断ET0=1;//打开定时器0;TR0
4、=0;//启动定时器0;while(1){keyscan();/*if(count==2){count=0;sec--;if(sec==0)sec=240;}*/display(sec);}}voidtimer0()interrupt1//定时器0的中断优先等级是1{TH0=(65536-50000)/256;//重新装初值TL0=(65536-50000)%256;//重新装初值count++;if(count==2){count=0;sec--;if(sec==0)sec=240;}//display(sec);}
此文档下载收益归作者所有