版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 单片机原理及应用实训说明 微电班。实训名称:银行排队系统的设计实训教学内容:(一)硬件 AT89S51单片机 2个独立按键叫号(顾客使用)2个独立按键(代表两个窗口营业员控制端)、 8个七段数码管显示信息无源蜂鸣器、发光二极管(起到提示作用)(二)任务要求1 数码管显示:(1)排队号码显示:数码管Q1Q2作普通业务,Q3Q4作VIP业务排队号码显示(显示号为“P*”,*代表序号);普通业务最大累计 允许10人排队,VIP业务最大累计 允许5人排队。当排队人数超过此人数时数码管显示OV。(2)当前业务办理号码显示:数码管Q5Q6作窗口1,Q7Q8作窗口2
2、业务办理序号显示。2 按键控制(1)两个按键作为“普通业务”、 “VIP业务”的选择(顾客使用);(2)两个按键分别作为两个窗口叫号的选择(窗口营业员控制)。初始叫号从号码01或P1开始。短按表示跳到下一位办理,此时相应窗口数码管闪动显示,并加入声光提示;长按1秒表示业务办理中;3 *在定时10S后如无人办理,自动跳转显示下一位序号(要求选择时VIP业务优先于普通业务)。4 答辩,展示、介绍程序运行结果。已基本实现功能而有待改进的程序: P0口数码管的段选,P2口是位选。 #include<reg52.h>#define uint unsigned int#define uchar
3、 unsigned char #define YH 10 /普通用户名额#define VP 5 /VIP名额sbit dian=P07; /定义数码管小数点sbit S1=P30; /定义普通用户按键sbit S2=P31; /定义贵宾用户按键sbit S3=P32; /定义窗口1按键sbit S4=P33; /定义窗口2按键sbit LED1=P12;sbit LED2=P13;sbit FM=P14;uint m1=1,m2=1,m3=1,m4=1; /定义全局变量 m1标记S1,m2标记S2,m3标记S3,m4标记S4;uint YONGHU,VIP,CK1,CK2; /定义全局变量
4、分别是用户,vip,窗口1,窗口2;bit out1,out2,out3,out4; /溢出标记long dengdai10s1;dengdai10s2; /等待10s标记;uchar N=0;void delay(unsigned int j ) /基本延时单位1msunsigned int e,f;for(e=0;e<j;e+)for(f=0;f<=110;f+);void anjian() /按键识别 if(S1=0) /按键S1按下,用户人数+1,具有防抖功能 if(m1!=0) /判断上一次按键是否松开 m1+; /达到50ms时人数加1 if(m1>50) YON
5、GHU+; m1=0; else m1=1; if(S2=0) /按键S2按下,VIP人数+1 if(m2!=0) m2+; if(m2>50) VIP+; m2=0; else m2=1; if(S3=0) /按键S3按下,窗口1 if(m3!=0) m3+; if(m3>=1000) dengdai10s1=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) m
6、4+; if(m4>=1000) dengdai10s2=0; out4=0; m4=0; else if(m4>50) CK2=99; dengdai10s2=1; out4=1; m4=1; void xianshi(long a) /显示部分 int i=0; int shuzi=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff; N+; if(N=15) N=0; if(out3=1|out4=1) FM=FM; for(i=0;i<8;i+) /输出数字 P0=0Xff; P2=0x01<<i;
7、 P0=shuzia%10;if(out3=1) LED1=LED1; if(N<5) if(i=3|i=2) P0=0xff; else LED1=0;if(out4=1) LED2=LED2; if(N<6) if(i=1|i=0) P0=0xff; else LED2=0; if(out2=1) if(i=4) P0=0xc1; if(i=5) P0=0xc0; else if(i=5) P0=0x8C; if(out1=1) if(i=6) P0=0xc1; if(i=7) P0=0xc0; dian=1; if(i=2|i=4|i=6) dian=0; a=a/10; d
8、elay(2); P0=0Xff; main() uint yonghu=0;uint vip=0; long he; TMOD=0x01; /使用定时器0,工作方式1,1ms计时;TH0=(65536-1000)/256; TL0=(65536-1000)%256; EA=1; /总中断允许;ET0=1; /允许定时中断;TR0=1; /启动定时器0;while(1) if(CK1=99) if(vip<VIP) CK1=+vip; else if(yonghu<YONGHU) CK1=+yonghu; else out3=0; if(CK2=99) if(vip<VIP)
9、 CK2=+vip; else if(yonghu<YONGHU) CK2=+yonghu;else out4=0; he=YONGHU*1000000+VIP*10000+CK1*100+CK2; xianshi(he); void TOJI(void) interrupt 1 /定时器0中断程序; TH0=(65526-1000)/256; TL0=(65526-1000)%256; anjian(); /按键识别,得到四个数据 if(dengdai10s1!=0) dengdai10s1+; if(dengdai10s1=10000) dengdai10s1=1; CK1=99; if(dengdai10s2!=0)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年四川希望汽车职业学院单招职业适应性测试题库含答案详解(a卷)
- 2026年四川交通职业技术学院单招职业适应性考试题库附参考答案详解(基础题)
- 2026年合肥职业技术学院单招职业倾向性考试题库含答案详解(完整版)
- 2026年四川卫生康复职业学院单招职业适应性考试题库附答案详解(b卷)
- 互联网货运行业市场现状及未来发展预测
- 临床护理安全标准化流程
- 产后出血的护理健康教育
- 13.1任务一 营业成本业务核算与应用
- 燃气安全知识直播培训
- 围生期护理的科研进展
- 2025年高等教育工学类自考-02141计算机网络技术历年参考题库含答案解析(5套典型考题)
- 家校沟通策略与实施方法
- 物业工程主管岗位面试问题及答案
- 军人俱乐部管理办法
- 【课件】数列探究课+斐波那契数列与黄金分割比+课件-2024-2025学年高二上学期数学人教A版(2019)选择性必修第二册
- 乡镇财务报账管理办法
- 北京中学转学管理办法
- 小学生良好纪律的养成教育主题班会
- 中国大模型落地应用研究报告2025
- AI翻译技术在跨境电商服饰产品描述中的创新应用
- 《当前保密工作面临的新形势、新任务》课件
评论
0/150
提交评论