基于AT89C51单片机的排队叫号系统设计Word文件下载.docx
- 文档编号:15731062
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:26
- 大小:629.37KB
基于AT89C51单片机的排队叫号系统设计Word文件下载.docx
《基于AT89C51单片机的排队叫号系统设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于AT89C51单片机的排队叫号系统设计Word文件下载.docx(26页珍藏版)》请在冰豆网上搜索。
本文设计了一套排队叫号系统。
该系统是以排队抽号顺序为核心,客户利用客户端抽号,工作人员利用叫号端叫号;
通过显示器及时显示当前所叫号数,客户及时了解排队信息,通过合理的程序结构来执行排队抽号。
以提高排队等待效率,解决排队秩序混乱,前拥后挤等现象,实现排队自动化,规范化。
通过该系统的使用,客户不必为排队浪费大量精力,便于管理排队秩序,同时适应信息时代管理数字化的要求,提高服务水平与质量。
关键词:
单片机排队叫号系统开发
排队叫号系统设计
1.引言
近年来,随着科学技术的迅猛发展和人们生活水平的日益提高,各行各业特别是服务行业的竞争也逐渐激烈。
服务质量作为体现企业的公众形象、服务理念、管理水平的标准已越来越受到服务和被服务双方所关注,而营业窗口正是代表银行、医院、电信、税务、工商等企业服务质量的重要场所。
随着服务行业业务量的增长及业务种类的增加,排队等候已成为人们面临的实际问题。
长期以来,人们在银行、医院、电信、税务、工商等营业大厅里前拥后挤、杂乱无章地排队等候,有时一站就是一个多小时,这已是司空见惯的现象,极大地影响了服务质量。
员工坐着服务、客户站着等待的服务方式与“用户就是上帝”的服务宗旨完全背道而驰!
改善服务质量、树立良好形象,解决劳累的排队现象、创造人性化服务环境已成为急需解决的问题。
设计一套排队抽号的服务系统,可以很好的解决因排队引起的种种问题,排队系统应运而生。
此系统完全模拟人群排队过程,通过取票进队、排队等待、叫号服务等功能,诠释了人性化的服务理念,舒缓顾客等待的急噪情绪,使人们在等候服务的过程中拥有一个相对自由的空间,是科技以人为本的真正体现。
本文基于单片机的排队叫号系统,由客户端和主机终端组成,有LCD大屏幕显示信息,让客户知道自己的队号,并有叫号提示音提醒客户,方便快捷,可以满足日常的服务行业排队叫号,所以非常有意义。
2.系统功能分析及设计要求
一个很好的叫号系统,它的功能设计首先要符合用户的习惯,同时操作方便,易学,易用。
本系统由键盘输入系统、单片机系统、屏幕显示系统及叫号提示音系统组成,系统分为两个部分:
抽号部分和叫号部分,其控制核心为AT89C51单片机,选用此单片机编程简单,开发工具便于使用,
能满足很好的满足排队抽号的控制数据处理。
抽号部分和叫号部分采用一块LCD液晶显示器,这样显示数据直观,便于客户理解,抽号部分输入只需使用一个抽号按键即可,便于客户操作,叫号部分包括叫两个号键,系统采用自动清零,无需人工操作
3.系统框图
设备上电后,显示器屏幕亮,无信息显示。
当客户按键后,每按一下,队伍加1,显示器显示客户队伍号;
排满20位后,再按取号键,屏幕显示“队伍满”。
当客服叫号时,队伍减1,程序进行信息处理,在显示器上显示“几号客户到几号窗口”,同时进行声音提示;
当队伍空时,显示“队伍空”,显示器屏幕清空,储存的队伍号码归零处理
叫号提示音
1602液晶显示
AT89C51
单片机
终端窗口叫号
客户端取号
4.主要应用器件及技术原理
4.1微处理器介绍
4.1.1、MCS-51单片机的特点:
(1)小巧灵活、成本低、易于产品化。
能组装成各种智慧式测控设备及智能仪器仪表。
(2)可靠性好,应用范围广。
单片机芯片本身是按工业测控环境要求设计的,抗干扰性强,能适应各种恶劣的环境,这是其它机种无法比拟的。
(3)易扩展,很容易构成各种规模的应用系统,控制功能强。
单片机的逻辑控制功能很强,指令系统有各种控制功能指令,可以对逻辑功能比较复杂的系统进行控制。
(4)具有通讯功能,可以很方便地实现多机和分布式控制,形成控制
网络和远程控制。
正是由于51系列单片机具有以上优点,所以成为本次毕业设计所选用的处理器。
4.12、MCS-51单片机的结构
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
单片机的可擦除只读存储器可以反复擦除100次。
从工作原理上讲,单片机就是一种微型计算机,是一种“程序存储式”计算机。
它是在一块硅片上集成了中央处理器(CPU)、随机内存(RAM)、程序内存(ROM或EPROM)、定时/计数器以及各种I/O接口,也就是集成在一块芯片上的计算机。
图4.1MCS-51单片机的结构
4.2液晶LCD1602的介绍
4.2.1字符型液晶显示器的显示原理
用LCD显示一个字符时比较复杂,因为一个字符由6x8或8x8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8个字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。
这样一来就组成某个字符。
但对于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立游标,在此送上该字符对应的代码即可。
4.2.2液晶LCD1602的简介
5.系统硬件电路设计
系统Proteus仿真图:
图中主要以AT89C51为控制核心,包括显示电路,音乐提示电路,晶振电路。
图5.1电路仿真
5.1晶振电路
AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。
这个放大器与作为回馈组件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。
外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。
对外接电容C1、C2虽然没有十分严格的要求,但是电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,我们推荐电容使用30pF±
10pF,而如果使用陶瓷谐振器建议选用40pF±
10pF。
使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。
内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。
晶振的频率可以在1MHz-24MHz内选择。
电容取30PF左右。
本系统采用内部方式,晶振选用12MHz。
图5.2晶体内部方式
5.2液晶显示电路
如下图5.3,P1口接LCD1602的8个双向数据线接口,P3.4接1602的数据/命令选择端,P3.5接1602的读/写选择端,P3.6接1602的使能信号。
BLA、BLK分别是1602的背光源的正负极,VL是1602对比度调整端。
本文是通过对RS、RW以及E的高低电平进行写指令和写数据操作来控制1602的显示的。
图5.3液晶显示电路
5.3声音提示电路
使用最简单的蜂鸣器来作为提示音部分,通过改变端口高低电平来进行发声,并对延时进行修改来调试发声频率,从而修改发出的声音的好坏
图5.4声音提示电路图
6.系统仿真
仿真是在软件Proteus7.4上进行的,用C语言编写的程序,通过keil生成了hex文件,经过调试,仿真实现了排队叫号系统的功能
客户取号图
按下客户端取号按键,屏幕显示“YourNo.is03!
”
图6.1客户端显示
窗口叫号图
按下窗口服务叫号按键一,屏幕显示“No.03CometoNo.1window,please”
图6.2窗口服务叫号显示
7.系统软件设计
7.1系统软件流程图
7.2系统程序设计
7.2.1主程序
当队伍空时,显示“队伍空”,显示器屏幕清空,储存的队伍号码归零处理。
#include<
reg51.h>
#defineucharunsignedchar
#defineuintunsignedint
sbitrs=P2^0;
sbitrw=P2^1;
sbite=P2^2;
sbitkey1=P1^0;
sbitkey2=P1^1;
sbitkey3=P1^2;
sbitsounder=P3^7;
ucharprompt1[]="
YourNo.is00!
"
;
ucharprompt2[]="
No.00GoToWin.0"
ucharprompt3[]="
Queueisfull"
ucharprompt4[]="
Queueisempty!
uintnum_count=0;
//排队叫的号码
uintrank_number[20]={0};
//排队叫号存储的数组
uintnum=0;
//窗口消的号码
intRankFlag=0;
//叫号的标志
intClearNumFlag=0;
//消号的标志
uintLengthFlag=0;
//队列长度叫一次号时+1,消一次号时-1
/*延时函数*/
voiddelay(uintn)
{
while(n--);
/*****************************************
LCD1602*显示屏命令写入函数*
*****************************************/
voidLCD_write_com(ucharcom)
{
e=0;
rs=0;
rw=0;
P0=com;
delay(1000);
e=1;
}
LCD1602*显示屏数据写入函数*
voidLCD_write_data(uchardat)
rs=1;
P0=dat;
}
LCD1602*显示屏清空显示*
voidLCD_clear(void)
LCD_write_com(0x01);
LCD1602显示屏初始化函数
voidLCD_init(void)
{
LCD_write_com(0x38);
/*显示模式设置*/
delay(100);
LCD_write_com(0x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AT89C51 单片机 排队 叫号 系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)