淘豆网
1/10
下载文档
文档分类:通信/电子 > 电子设计

基于C单片机的篮球计分器设计.doc


下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表
0/100
您的浏览器不支持进度条
更多>>该用户其他文档
下载所得到的文件列表
基于C单片机的篮球计分器设计.doc
文档介绍:
基于C单片机的篮球计分器设计————————————————————————————————作者:————————————————————————————————日期: 基于C51单片机的篮球计分器设计题目要求:1.设计一款能够显示篮球比分的记分牌;2.通过加分按钮可以给A队,或B队加分;3.设计对调功能,更换场地后,AB队分数互换;仿真截图:完整源代码:#include<reg51.h>codeunsignedseg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; // 分别对应数码管显示字形0-9intm=15,n=00,x=0,y=0,jie=2,bujin=1,zanting=0,chuzanting=0; //初始化,m、n为分、秒计时 x、y为A、B两队分数,其余为中间变量sbitA_add=P3^0; // A队加分按钮sbitB_add=P3^1; // B队加分按钮sbitTime_add=P3^2; // 时间加按钮sbitTime_sub=P3^3; // 时间减按钮sbitA_sub=P3^4; // A队减分按钮sbitB_sub=P3^5; // B队减分按钮sbitpause=P3^6; // 暂停、启动按钮sbitchange=P3^7; //换场地按钮voidkeyScan(); //按键扫描函数voiddelay(intt) //延时子程序,通过参数t,可以调整暂停时间{ while(t--) { unsignedinti; for(i=0;i<200;i++); //设置变量i的变化范围,能调整延时的单位时间长度,i越小,延时单位时间越短,精度越高 }}voiddisplay(intm,intn,intx,inty)//数码管动态刷新显示程序{ if(jie==1&&bujin!=2)//中间变量jie=1时,为上半场,对p1赋值 P1=0xbf; //p1=0xbf,即p1=1011111B,点亮上半场对应指示灯 P2=0xfe; //数码管动态刷新显示程序p2=11111110,i为分钟 P0=seg[m/10]; //刷新显示时间显示分钟十位,调用延时程序 delay(1); //延时数码管的点亮 P2=0xff; P0=0; P2=0xfd; //同理,分钟个位并延时点亮 P0=seg[m%10]; delay(1); P2=0xff; P0=0; P2=0xfb;//秒钟十位 P0=seg[n/10]; delay(1); P0=0; P2=0xff; P2=0xf7; //秒钟个位 P0=seg[n%10]; delay(1); P0=0; P2=0xff; P2=0xef; //A队分数十位 P0=seg[x/10]; delay(1); P2=0xff; P0=0; P2=0xdf; //A队分数个位 P0=seg[x%10]; delay(10); P2=0xff; P0=0; P2=0xbf; //B队分数十位 P0=seg[y/10]; delay(1); P0=0; P2=0xff; P2=0x7f; //B队分数个位 P0=seg[y%10]; delay(1); P0=0; P2=0xff;}voidt0(void)inte 内容来自淘豆网www.taodocs.com转载请标明出处.