银行排队系统的设计51单片机.doc

银行排队系统的设计51单片机.doc

ID:55278959

大小:98.00 KB

页数:12页

时间:2020-05-08

银行排队系统的设计51单片机.doc_第1页
银行排队系统的设计51单片机.doc_第2页
银行排队系统的设计51单片机.doc_第3页
银行排队系统的设计51单片机.doc_第4页
银行排队系统的设计51单片机.doc_第5页
资源描述:

《银行排队系统的设计51单片机.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《单片机原理及应用》实训说明微电班。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。实训名称:银行排队系统的设计实训教学内容:(一)硬件AT89S51单片机 2个独立按键叫号(顾客使用)2个独立按键(代表两个窗口营业员控制端)、 8个七段数码管显示信息无源蜂鸣器、发光二极管(起到提示作用)(二)任务要求1.数码管显示:(1)排队号码显示:数码管Q1Q2作普通业务,Q3Q4作VIP业务排队号码显示(显示号为“P*”,*代表序号);普通业务最大累计 允许10人排队,VIP业务最大累计 允许5人

2、排队。当排队人数超过此人数时数码管显示OV。(2)当前业务办理号码显示:数码管Q5Q6作窗口1,Q7Q8作窗口2业务办理序号显示。2.按键控制(1)两个按键作为“普通业务”、“VIP业务”的选择(顾客使用);(2)两个按键分别作为两个窗口叫号的选择(窗口营业员控制)。初始叫号从号码01或P1开始。短按表示跳到下一位办理,此时相应窗口数码管闪动显示,并加入声光提示;长按1秒表示业务办理中;3.*在定时10S后如无人办理,自动跳转显示下一位序号(要求选择时VIP业务优先于普通业务)。4.答辩,展示、介绍程序运行结果。已基本实现功能而有

3、待改进的程序:P0口数码管的段选,P2口是位选。#include#defineuintunsignedint#defineucharunsignedchar#defineYH10//普通用户名额#defineVP5//VIP名额sbitdian=P0^7;//定义数码管小数点sbitS1=P3^0;//定义普通用户按键sbitS2=P3^1;//定义贵宾用户按键sbitS3=P3^2;//定义窗口1按键sbitS4=P3^3;//定义窗口2按键sbitLED1=P1^2;sbitLED2=P1^3;sbitFM=

4、P1^4;uintm1=1,m2=1,m3=1,m4=1;//定义全局变量m1标记S1,m2标记S2,m3标记S3,m4标记S4;uintYONGHU,VIP,CK1,CK2;//定义全局变量分别是用户,vip,窗口1,窗口2;bitout1,out2,out3,out4;//溢出标记longdengdai10s1;dengdai10s2;//等待10s标记;ucharN=0;voiddelay(unsignedintj)//基本延时单位1ms{unsignedinte,f;for(e=0;e

5、10;f++);}voidanjian()//按键识别{if(S1==0)//按键S1按下,用户人数+1,具有防抖功能{if(m1!=0)//判断上一次按键是否松开{m1++;//达到50ms时人数加1if(m1>50){YONGHU++;m1=0;}}}elsem1=1;if(S2==0)//按键S2按下,VIP人数+1{if(m2!=0){m2++;if(m2>50){VIP++;m2=0;}}}elsem2=1;if(S3==0)//按键S3按下,窗口1{if(m3!=0){m3++;if(m3>=1000){dengdai

6、10s1=0;//长按达到1s,关断10秒计时m3=0;out3=0;}}}else{if(m3>50){CK1=99;//短按时是下一位dengdai10s1=1;//启动10s计时out3=1;}m3=1;}if(S4==0)//按键S4按下,窗口2{if(m4!=0){m4++;if(m4>=1000){dengdai10s2=0;out4=0;m4=0;}}}else{if(m4>50){CK2=99;dengdai10s2=1;out4=1;}m4=1;}}voidxianshi(longa)//显示部分{inti=0;

7、intshuzi[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};N++;if(N==15)N=0;if(out3==1

8、

9、out4==1)FM=~FM;for(i=0;i<8;i++)//输出数字{P0=0Xff;P2=0x01<

10、

11、i==2){P0=0xff;}}elseLED1=0;if(out4==1){LED2=~LED2;if(N<6)if(

12、i==1

13、

14、i==0){P0=0xff;}}elseLED2=0;if(out2==1){if(i==4)P0=0xc1;if(i==5)P0=0xc0;}elseif(i==5)P0=0x8C;if(out1==1){if(i==6)P0=0xc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。