电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

单片机课程设计投票与计票系统c语言程序

单片机课程设计投票与计票系统c语言程序_第1页
1/4
单片机课程设计投票与计票系统c语言程序_第2页
2/4
单片机课程设计投票与计票系统c语言程序_第3页
3/4
#include"reg52.h"#define uchar unsigned char#define uint unsigned intuchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x8c,0x88,0x92,0xc8};//共阳0~9,pas。uchar code table1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x73,0x77,0x6d,0x37};//共阴0~9,puchar code teble[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};uchar code teble1[]={0x01,0x02,0x04,0x08,0x10,0x20};uchar flg=0,num=0,tflg=0,t,t2=1,bflg=0;sbit InDX0=P3^2;sbit beep=P3^6;void delayms(uint);void display_R();void displaytp(int);void Beep();int deal();void read();void main(){ int i; int flg_d=0; InDX0=1;EA=1; EX0=1;IT0=1;t=deal();//初始检查清票if(t==0){ tflg=1;//未 清 票 指示全屏 p}while(1){ if(t==0) { while(t==0){t=deal();displaytp(tflg);}//检查是否清票,未清票全屏显示 ptflg=0; //清票指示跑马 }if(flg)//检验是否显示票数 display_R();//读票else displaytp(tflg);//跑马t2=deal(); //检验是否清票if(bflg)//检验是否打开蜂鸣器{ for(i=0;i0;j——);}void displaytp(int j)/*显示 P,j 为 0 时跑马,j 为 1时全屏为 P*/{ int i;for(i=0;i<6;i++){ P2=0x8c;//显示问题在此处改 P1,P2 , 0x8c,teble P1=teble1[5-i];if(j==0){ delayms(250);}else{delayms(5);}}}void Beep()/*蜂鸣器*/{ int l; for(l=0;l〈100;l++) { beep=1; delayms(2); beep=0; delayms(2); }}void display_R()/* 左 边 显 示 PASS or NO,最后一个数码管显示票数*/{ int i; if(num〉=4)//num>=4,左边显示 pass{ for(i=0;i〈3;i++){//显示问题在此处改 P1,P2 , table,teble P2=table1[10+i];P1=teble1[i];delayms(5);}P2=table1[9+i];//显示问题在此处改 P1,P2 , table,tebleP1=teble1[i]; delayms(5);}else//num<4,左边显示 no{P2=0xc8;//显示问题在此处改 P1,P2 ,0xc8,0xfe,0xff,0xc0,0xfd,0xffP1=0xfe;delayms(5);P1=0xff;P2=0xc0;P1=0xfd;delayms(5);P1=0xff;}P1=table1[num%10];//最后一个数码管显示票数P2=teble1[5];delayms(5);P2=0xdf;}int deal()//假如没有清票就返回 0,清完票返回 1,同时票数清零,跑马开始{if(P0!=0xff) return 0;// 根 据 P0 端 拨 码 按 键 更 改 假 如 清 票 后 P0=0x00, 改0xffwei0x00num=0;flg=0;return 1;}void read()//读取票数{ int p,i=0,j;p=P0;for(j=0;j<8;j++){ if((p|0xfe)==0xfe)//根据 P0 端拨码按键更改 |0xfe gai &0x01 { i++; } p〉>=1;}num=i;}void InDX_0() interrupt 0{ int i;read();//读票flg=1;//票 shu 显示指示bflg=1;//打开蜂鸣器}

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

单片机课程设计投票与计票系统c语言程序

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部