摘要:为改善营业窗口的服务质量和工作效率,解决枯燥无序的排队问题,采用STC89C52单片机控制语音芯片、打印机、LCD显示屏来模拟人工叫号过程,完成号码的打印、存储、显示及播报工作;采用MAX485扩展RS-485总线接口,实现分布式串行通信。该系统能满足简单的排队需求,具有开发成本低,占用空间小等优点,有较好的市场应用前景。
关键词:排队管理系统;STC单片机;语音芯片;串行通信

排队问题是银行、医院、工商、税务、电信等行业普遍存在的问题、设计一款模拟人工叫号过程,通过取号、进队、等待、叫号服务等功能代替人们站队辛苦的排队管理系统一直以来都是公共服务部门的迫切需求。然而,现在市场上主流产品的结构形式大都是基于PC机的,此传统模式占用PC机仅用于实现触摸屏触摸取号的功能及使用频率较少的系统管理功能,其制造成本和开发成本很高,使得许多中小行业都望而怯步,为了克服这一缺点,文中系统采用性能强大、价格低廉的单片机来实现综合管理和控制,设计并研制出体积小、结构简单、可靠性高、维护操作方便、性价比较高的排队管理系统,文中介绍了该排队管理系统的结构及控制原理,并重点阐述了该排队系统的组成及软、硬件设计方案。

1 排队管理系统结构和功能
   
排队管理系统由主显示屏、语音单元、打印机及通信模块组成,具体结构如图1所示。

控制系统的核心是微控制器STC89C52单片机,由主机系统的P0口控制打印机和语音叫号功能的实现,部分P1口控制显示屏及按键操作,系统上电后,液晶显示屏处于“您好欢迎光临”的界面,系统根据取号按键的不同对不同的业务类型分别进行计数,在顾客按取按键后,液晶显示屏将显示业务类型供顾客选择,待顾客选择完毕,系统便控制微型打印机打印出相应的票号,之后返回主界面,当查询到从机有叫号请求时,系统将控制语音播报单元播放相应的语音提示信息。同时相应从机的LED显示屏显示将要受理的顾客号。

2 系统硬件电路设计
2.1 显示模块设计
   
液晶显示器选用北京青云公司生产的的带中文字库的LCM128645ZK液晶显示屏,采用串行接口的方式传输数据,以减少I/O口的使用,连接电路如图2所示。P1_0、P1_1、P1_2引脚分别与LCM128645ZK的E(SCLK)、R/W(SID)和RS(CS)引脚相连。另外,引脚“VR”和“V0”之间接有可变电阻(0~10 kΩ),用来调节显示区域的底色。

在模块初始化阶段,需要进行功能设定,本次设计将其设为8-bit控制界面,基本指令集动作,设置其为整体显示,清DDRAM添满“20H”并设定DDRAM的位址AC=0,最后位址清零,延时0.5 s以保证模块初始化功能完成后就可以输入数据了。
2.2 打印机模块设计
   
打印机选用POS58行式热敏微型打印机。它的打印速度快,环境适应性强,支持ANK字符、自定义字符和汉字字符的倍宽、倍高打印以及不同密度点图及下装图形的打印,还可以调整字符的行间距。本设计采用并行接口的形式传输数据,支持BUSY握手协议,其接口插座为DB25针型插座。通过P0口传输数据来控制微型打印机进行打印工作,其中/STB端连接单片机的/RD端,/BUSY连接其INT1端。当打印功能键按下,并用业务选择功能键选择了需要打印的业务类型时,若/BUSY为高电平时,表示打印机忙,此时不能接受数据,如果检测到的信号为低电平,则将数据送到P0口,即将数据送到了打印机的数据口,然后软件置/STB端为0,因为/STB端是下降沿时允许输入数据,延时短暂的时间后,再置/STB为1,此时数据已被读入打印机,这样就可以打印出相应的内容了。同时,当打印机出错时,/ERR将被电阻上拉为高电乎,本设计中将/ERR端口引脚接地。同理,/ACK引脚为低电平时表示打印机准备好,可以接收数据,这里也将该端口引脚接地。

2.3 语音模块设计
   
ISD1420是由台湾华邦(winbond)公司开出发的典型的单片高质量短周期语音录放集成电路,采用CMOS工艺、内部包含片上时钟麦克前置放大器自动增益控制、带通滤波器平滑滤波器和功率放大器。本次设计主要用STC89C52的P0口控制ISD1420语音芯片的A0-A7管脚来实现语音的分段录放工作,其连接电路如图3所示,首先,将需要播报的语音分段录至存储地址,按录音键即可开始录音,软件控制它0.5 s后结束录音。按放音键可检查音质的好坏,如果按下加地址键,可使地址加4,同时液晶显示屏上可以显示出此时录音的地址。这样就可以从该地址开始控制语音的录入。这里,由于ISD1420语音芯片的最长录音时间为20 s,而其最小分辨率为0.125 s,即它最多可以录制20/0.125=160段音。而其可存放语音的地址单元为00H~7FH,共128个地址,由此可见一个地址足以存放0.125 s的语音,义因为此银行叫号机的19段语音每段延时0.5 s,0.5/0.125=4,可见为每段延时0.5 s的语音分配4个地址就足够了。

在主程序中.当查询到从机的叫号请求时,将依次呼叫:“请****号顾客到*号窗口办理”,呼叫完毕,等待下一次呼叫请求。这样也就实现了选段放音,其中,各按键的定义如表1所示。

在ISD1420语音芯片的音频输出端即SP+端口接有LM386放大器,用来放大声音信号。驱动8 Ω、0.5 W的喇叭放音。需要注意的是LM386的旁路端口必须接电容再接地或者悬空,不可以直接接地,否则喇叭不能发出声音,如图4所示。
2.4 串口通信
   
系统采用总线型主从式结构来实现多机通信,即在数个单片机中,有一个是主机,其余是从机,从机要服从主机的调度、支配。本设计采用RS-485串行标准总线进行数据传输。并采用半双工通信的MAX485接口芯片将单片机的TTL电平转换为RS-485电平。
    MAX485芯片的结构和引脚都非常简单,内部含有一个驱动器和接收器。RO和D1端分别为接收器的输出和驱动器的输入端,与单片机的RXD和TXD相连接;/RE和DE端分别为接收和发送的使能端,当/RE为逻辑0时,器件处于接收状态:当DE为逻辑1时,器件处于发送状态,因为MAX485工作在半双工状态,所以只用单片机的P32管脚控制这两个引脚即可;A端和B端分别为接收和发送的差分信号端,当A引脚的电平高于B时,代表发送的数据为1;当A的电平低于B端时,代表发送的数据为0。

3 系统软件设计
   
系统软件程序主要包括两部分内容,首先,将需要播报的语音信息储存到ISD1420语音芯片中,为了保证每一段录音的质量,我们结合液晶显示屏来编写这部分的程序,将每一段录音的存放地址以十进制的形式显示出来,由单片机的引脚P2_7引脚控制语音芯片的/REC引脚,P2_5控制/PLAYL键,当叫号功能按键按下时,软件将语音芯片的/REC管脚置成低电平,即开始录音,同理,当放音功能按键按下时置语音芯片的/PLAYL引脚为低电平,开始放音。另外当加地址功能键按下时,便可以用软件控制P0口的地址加4,因为P0口连接着语音芯片的A0~A7引脚,故使得录音的地址也相应的加4,同时把地址转换成十进制数在液晶屏上显示。按照这个方法如果哪段音没有录好,则可以由按键控制单片机回到这一地址再重新录制。将需要播放的语音分段存放到语音芯片中之后,在主程序中,就可以把显示部分,叫号部分和打印部分综合起来了,这样就构成了一个简单的排队管理系统,程序流程图如图5所示。

4 结论
   
文中针对服务行业嘈杂、无序、低效的排队问题,设计了基于STC89C52单片机的排队管理系统,具有低成本、便携化的特点。通过焊接电路板、调试及初步应用实验,表明此系统工作稳定可靠,可达到设计要求,具备一定的市场应用潜力。

文章来源:21ic电子网 http://www.21ic.com/app/mcu/201212/154624.htm

基于STC单片机的排队管理系统的设计相关推荐

  1. 基于STC单片机的两轮平衡车设计

    给大家传福利了..后续继续共享基于Arduino/安卓Android/树莓派raspberry等平台的两轮车设计 这是我前年暑假做的一个小项目,今年拿出来整理了下当毕设了(当然毕设里添加了许多其他元素 ...

  2. java毕业设计基于的校园头条新闻管理系统的设计与实现mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计基于的校园头条新闻管理系统的设计与实现mybatis+源码+调试部署+系统+数据库+lw java毕业设计基于的校园头条新闻管理系统的设计与实现mybatis+源码+调试部署+系统+数 ...

  3. javaee校园信息服务器,基于javaEE服务器 学生考勤管理系统的设计与实现开题报告...

    基于javaEE服务器 学生考勤管理系统的设计与实现开题报告 毕业论文(设计)开题报告 姓 名 学 号 所在专业 软件工程 论文(设计)题目 基于 javaEE 服务器 学生考勤管理系统的设计与实现 ...

  4. 教务处管理系统c语言编程,基于C语言的教务管理系统的设计

    基于C语言的教务管理系统的设计(任务书,开题报告,论文12000字,程序代码) 摘要 教务管理系统是现代化教育的重要组成部分,在现代高校管理中,一个高效的.准确的教务系统不仅能大大提高教学管理效率,还 ...

  5. php简单学生管理系统设计与实现,基于PHP的学生成绩管理系统的设计与实现.doc...

    基于PHP的学生成绩管理系统的设计与实现.doc 基于PHP的学生成绩管理系统的设计与实现 摘 要: 我国高等职业教育迎来了蓬勃发展的新局面,各院校招生规模不断扩大,学校的教学管理负担越来越重.为了提 ...

  6. 用java写的教职工信息管理系统_基于Java的教师信息管理系统的设计与实现论文.doc...

    基于Java的教师信息管理系统的设计与实现论文 职场大变样社区():下载毕业设计成品 全套资料,全部50元以下 毕业设计(论文)任务书 第1页 毕业设计(论文)题目: 基于java的教师信息管理系统的 ...

  7. 单片机检测电机频率c语言,基于51单片机的电动机测速表的设计.doc

    基于51单片机的电动机测速表的设计 基于51单片机的电动机测速表设计 摘 要 本文介绍了采用光电传感器实施电机转速测量的方法.基本原理,完成了一种基于AT89C51单片机平台的电动机测速表的软硬件设计 ...

  8. 学生社团管理系统java_基于JavaEE的学生社团管理系统的设计与实现

    一.基本信息 标题:基于JavaEE的学生社团管理系统的设计与实现 作者:郝平 时间:2018 来源:中国知网 二.研究背景 伴随着互联网技术的高速发展和进步,网络对于人类社会的经济与教育.文化与军事 ...

  9. java做一个客房管理系统定制_开题报告基于Java的酒店客房管理系统的设计与实现.doc...

    开题报告基于Java的酒店客房管理系统的设计与实现 毕业设计开题报告 课 题 名 称:基于Java的酒店客房管理系统的 设计与实现 姓 名: 班 级: 指 导 教 师: 所 在 系 部: 专 业 名 ...

最新文章

  1. 10中文显示都是问号_CAD字体出现问号乱码的解决方法
  2. Maven项目部署方案
  3. 如何用python创建一个下载网站-使用Python下载文件的简单示例
  4. CSS学习17之动画
  5. 面试官系统精讲Java源码及大厂真题 - 26 惊叹面试官:由浅入深手写队列
  6. 双十一 手淘技术用了这几招
  7. 与敏捷团队一起交付价值
  8. 动态二维数组外圈元素值的和_C语言 | 用指向元素的指针变量输出二维数组元素的值...
  9. 平流式沉淀池表面负荷怎么计算_沉淀池表面负荷
  10. MySQL -- 创建用户并提升用户权限
  11. F8Net:只有8比特乘法的神经网络量化
  12. Robo 3T(Studio 3T)最新版安装教程
  13. 阿里巴巴(杭州)转正答辩失败流水账
  14. C语言实现机器猫绘制
  15. 开源软件学习交流计划 (西游记项目)
  16. 计算机突然断电磁盘中的程序,电脑突然断电对硬盘有影响吗 保护电脑硬盘方法【详解】...
  17. 妙用schedule执行php脚本定时任务
  18. java毕业设计bs架构实习管理系统源码+系统+数据库+lw文档+调试运行
  19. 湖南评副教授职称计算机,2019年职称评审,湖南省高校教师需关注这些问题!...
  20. 《赛博朋克2077》安装方法+使用手册。附补丁更新地址

热门文章

  1. matlab处理数字岩心图像,一种用神经网络进行高质量数字岩心图像处理的方法与流程...
  2. windows下ping程序使用C语言实现
  3. 小孩儿吃梨问题c语言,C语言编程练习 6.2课上编程练习.docx
  4. vue Eharts 中国地图,包含台湾省,涟漪效果,流向图
  5. 2022-2028年中国体育馆行业市场研究及前瞻分析报告
  6. exe执行文件变白色无图标解决方法
  7. 前端第六次培训(JS运算符,数组)
  8. IntValue()方法 和 ValueOf()方法
  9. 华为9306 如何注册激活license 文件
  10. 前端性能优化总结(遇到好的,就得珍惜)