银行叫号系统设计

合集下载

基于51单片机的多功能银行叫号系统的设计与分析

基于51单片机的多功能银行叫号系统的设计与分析

重庆大学本科学生毕业设计(论文)基于51单片机的多功能银行叫号系统的设计与分析学生:江妮学号:********指导教师:***专业:电子信息工程重庆大学通信工程学院二O一O年六月Graduation Design(Thesis) of Chongqing University51 MCU-based calling system multi- function banking Design and AnalysisUndergraduate: Jiang NiSupervisor: Prof. Chen XinlongMajor: Electronics Information EngineeringCollege of Communications EngineeringChongqing UniversityJune 2011摘要近年来,随着我国社会经济的持续快速发展,长时间的站立排队已成为金融机构、电信、医院、政府办事大厅等场所的常见现象,以通信技术与计算机技术为基础的智能排队管理系统也应运而生。

因此,本文设计了一种基于51单片机技术的多功能排队叫号系统,具有语音提示、LCD中英文显示屏信息提示等功能,较好的解决了排队系统中存在的几个实际问题。

本论文首先分析了国内外智能排队技术的发展现状,指出了在智能排队系统中采用单片机的优势,剖析了一般排队叫号系统的业务需求和基本功能,采用软硬件协同设计的方法,提出了排队叫号系统的整体设计方案。

其次,本文详细介绍了采用51单片机实现多功能银行叫号系统等系列问题。

给出了排队系统三个主要模块的硬件和软件设计方案,即基于51单片机的排队主机、语音提示电路、LCD中英文显示屏提示电路。

再者,本文分别对系统的硬件和软件设计与实现方法进行了说明,给出了系统基本功能的仿真结果和分析。

总结了本文所做的工作和存在的问题,并对下一步系统的功能扩展进行了展望。

本课题设计的基于51单片机多功能排队叫号系统具有成本低、结构简单、可靠性高、维护操作简单方便、性价比较高等特点,具有较强的适用性和推广价值。

EDA测试(银行叫号机设计)

EDA测试(银行叫号机设计)

EDA测试一、思想对公对私窗口各由四个数码管分别显示,互不干扰。

都采用左移循环显示的方式。

1.对公窗口:由两个键控制cNext cDeal以下是显示组合:2.对私窗口:有两个键控制pNext pDeal以下是显示组合:其中,xx计数加1的结果。

二、实现1.实现方式VHDL语言实现,本次设计没有分模块设计,而是直接将扫描电路整合到VHDL 语言中。

2.源代码library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity Jiaohaoji isport(clk,scanclk : in std_logic;cNext,cDeal : in std_logic;pNext,pDeal : in std_logic;duanxuan : out std_logic_vector(6 downto 0);pianxuan : buffer std_logic_vector(7 downto 0));end Jiaohaoji;architecture bhv of Jiaohaoji issignal lednum : std_logic_vector(2 downto 0):="000";signal movenum: std_logic_vector(2 downto 0):="000";signal lcc1,lcc2,lpc1,lpc2,cPH,pPH:std_logic_vector(6 downto 0):="0000000";signal cn1,cn2,pn1,pn2 : integer range 15 downto 0;signal l1,l2,l3,l4,l5,l6,l7,l8:std_logic_vector(6 downto 0);beginprocess(clk)beginif(clk'event and clk='1')thenif cNext='1'thenif cDeal='1' thencn1<=cn1;cn2<=cn2;cPH<="1100111";------CxxPelsecn2<=cn2+1;if cn2=9 thencn2<=0;cn1<=cn1+1;if cn1=9 thencn1<=0;end if;end if;cPH<="0110111";------------------------CxxHend if;else cn1<=0;cn2<=0;cPH<="0110111";end if;if pNext='1'thenif pDeal='1' thenpn1<=pn1;pn2<=pn2;pPH<="1100111";------PxxPelsepn2<=pn2+1;if pn2=9 thenpn2<=0;pn1<=pn1+1;if pn1=9 thenpn1<=0;end if;end if;pPH<="0110111";----------------------------PxxHend if;else pn1<=0;pn2<=0;pPH<="0110111";end if;end if;end process;led:process(clk)beginif clk'event and clk='1' thenif lednum="000" thenl1<="0000000";l2<="0000000";l3<="0000000";l4<="0000000";l5<="0000000";l6<="0 000000";l7<="0000000";l8<="0000000";lednum<="001";elsif lednum="001" thenl1<="0000000";l2<="0000000";l3<="0000000";l4<="1001110";l5<="0000000";l6<="0 000000";l7<="0000000";l8<="1100111";lednum<="010";elsif lednum="010" thenl1<="0000000";l2<="0000000";l3<="1001110";l4<=lcc1;l5<="0000000";l6<="000000 0";l7<="1100111";l8<=lpc1;lednum<="011";elsif lednum="011" thenl1<="0000000";l2<="1001110";l3<=lcc1;l4<=lcc2;l5<="0000000";l6<="1100111";l7<= lpc1;l8<=lpc2;lednum<="100";elsif lednum="100" thenl1<="1001110";l2<=lcc1;l3<=lcc2;l4<=cPH;l5<="1100111";l6<=lpc1;l7<=lpc2;l8<=pP H;lednum<="101";elsif lednum="101" thenl1<=lcc1;l2<=lcc2;l3<=cPH;l4<="0000000";l5<=lpc1;l6<=lpc2;l7<=pPH;l8<="000000 0";lednum<="110";elsif lednum="110" thenl1<=lcc2;l2<=cPH;l3<="0000000";l4<="0000000";l5<=lpc2;l6<=pPH;l7<="0000000";l 8<="0000000";lednum<="111";elsif lednum="111" thenl1<=cPH;l2<="0000000";l3<="0000000";l4<="0000000";l5<=pPH;l6<="0000000";l7< ="0000000";l8<="0000000";lednum<="000";else lednum<="000";end if;end if;end process led;move:process(scanclk)beginif scanclk'event and scanclk='1' thencase movenum iswhen "000"=>pianxuan<="00000001";duanxuan<=l1;movenum<="001";when "001"=>pianxuan<="00000010";duanxuan<=l2;movenum<="010";when "010"=>pianxuan<="00000100";duanxuan<=l3;movenum<="011";when "011"=>pianxuan<="00001000";duanxuan<=l4;movenum<="100";when "100"=>pianxuan<="00010000";duanxuan<=l5;movenum<="101";when "101"=>pianxuan<="00100000";duanxuan<=l6;movenum<="110";when "110"=>pianxuan<="01000000";duanxuan<=l7;movenum<="111";when "111"=>pianxuan<="10000000";duanxuan<=l8;movenum<="000";end case;end if;end process move;with cn1 selectlcc1<= "1111110" when 0,"0110000" when 1,"1101101" when 2,"1111001" when 3,"0110011" when 4,"1011011" when 5,"1011111" when 6,"1110000" when 7,"1111111" when 8,"1111011" when 9,"0000000" when others;with cn2 selectlcc2<= "1111110" when 0,"0110000" when 1,"1101101" when 2,"1111001" when 3,"0110011" when 4,"1011011" when 5,"1011111" when 6,"1110000" when 7,"1111111" when 8,"1111011" when 9,"0000000" when others;with pn1 selectlpc1<="1111110" when 0,"0110000" when 1,"1101101" when 2,"1111001" when 3,"0110011" when 4,"1011011" when 5,"1011111" when 6,"1110000" when 7,"1111111" when 8,"1111011" when 9,"0000000" when others;with pn2 selectlpc2<="1111110" when 0,"0110000" when 1,"1101101" when 2,"1111001" when 3,"0110011" when 4,"1011011" when 5,"1011111" when 6,"1110000" when 7,"1111111" when 8,"1111011" when 9,"0000000" when others; end bhv;3.结构框图。

排队叫号系统的设计与实现毕业设计

排队叫号系统的设计与实现毕业设计

排队叫号系统的设计与实现毕业设计排队叫号系统的设计与实现毕业设计导言排队叫号系统在各个行业中广泛应用,如医院、银行、餐厅等。

它的设计和实现涉及到多个方面,例如用户体验、系统稳定性等。

本文将从深度和广度两个方面对排队叫号系统的设计与实现进行全面评估,并给出个人观点和理解。

一、排队叫号系统概述1.1 什么是排队叫号系统排队叫号系统是一种通过电子化方式管理和控制人群排队顺序的系统。

其主要功能包括叫号、排队管理、叫号记录等。

这个系统通常由硬件设备和软件程序组成,用户通过取号机或手机APP进行取号,然后等待被叫号。

1.2 排队叫号系统的重要性排队叫号系统不仅提高了服务效率,还提升了用户体验和工作效率。

通过系统化地管理排队顺序,可以避免客户等待时间过长以及拥挤的人群场景。

这个系统对于后台的数据统计和分析也提供了便利,可以更好地优化工作流程和资源分配。

二、排队叫号系统的设计与实现2.1 用户需求分析在设计排队叫号系统之前,需要对用户需求进行详细分析。

不同行业的用户需求可能有所不同,如医院用户需求主要是等待时间减少和服务效率提高,而银行用户则更关注服务质量和系统稳定性。

根据不同行业和用户需求的差异,可以调整系统的设计和功能。

2.2 系统架构设计排队叫号系统的系统架构设计要考虑到系统的稳定性和扩展性。

一个良好的系统架构设计可以提高系统的性能和容错能力。

可以采用分布式架构,将排队管理和数据存储分离,在高并发情况下,有效提高系统的处理能力。

2.3 界面设计与用户体验用户体验是排队叫号系统设计中非常重要的一环。

界面设计要简洁明了,方便用户操作和理解。

可以提供多种语言版本和主题以满足不同用户群体的需求。

用户操作流程要简化,减少用户等待时间和操作步骤。

2.4 数据管理与分析排队叫号系统会产生大量的数据,包括用户叫号信息、等待时间、服务时长等。

这些数据可以用于后期的数据分析和服务优化。

可以采用大数据分析技术,对用户等待时间、服务质量等进行统计和分析,以便优化服务流程和资源分配。

银行智能取号叫号系统

银行智能取号叫号系统

银行智能取号系统技术报告论文题目银行智能取号与叫号系统作者姓名所学专业名称指导教师2015年5月14日目录摘要 (2)1绪论 (4)1.1设计思路及其背景 (4)1.2课题研究的目的及意义 (4)2整体方案设计 (4)2.1单片机选择 (5)2.2语音芯片的选择 (6)2.2.1 语音报时芯片 (6)2.2.2 语音录音模块 (6)2.3 打印机的选择 (6)3银行智能取号系统硬件模块设计 (7)3.1 单片机系统 (8)3.2 电源供电系统 (9)3.3 语音播报系统 (9)3.4 打印机控制系统 (9)3.5 无线数据传输系统 (9)3.6 键盘控制系统 (9)4银行智能取号系统软件模块设计 (11)5系统测试 (11)参考文献 (13)附录 (14)致谢 (16)银行智能取号与叫号系统设计摘要:目前,在以银行为代表的窗口行业,大量客户的拥挤排队已成为了这些企事业单位改善服务品质、提升营业形象的主要障碍。

排队(叫号)系统的使用将成为改变这种状况的有力手段。

排队系统完全模拟了人群排队全过程,通过取票进队、排队等待、叫号服务等功能,代替了人们站队的辛苦,把来访者排队等待的烦恼变成一段难得的休闲时光,使客户拥有了一个自由的空间和一份美好的心情。

本系统利用AT89C52作为控制芯片的一个银行智能取号与叫号的系统,它是一款利用扫描按键检测是否有人在对本系统进行操作,采用无线数据传输使两个装置获得通讯。

并采用语音播报以及打印机响应于人为操作。

打印出所取号码以及排队人数,语音播报出叫号的好码通知相应号码办理业务。

关键词:AT89C52 ;无线数据传输;语音播报;排队取号;Abstract:At present, in the window industry represented by the bank, a large number of customers has become a crowded of the enterprises and institutions to improve service quality, the main obstacle to improve the image of the business.The use of queuing (station) system will become a powerful means to change this situation.Queue system is to simulate the line up the whole process of the people and by the ticket into the team, waiting in line, station to station services, and other functions, instead of the people from pain, visitors queuing problems into a rare leisure time, enable customers to have a free space and a good mood.This system USES AT89C52 as the control chip of a bank intelligence get number and the howl of a system, it is a use of scan button to detect whether someone in this system, using wireless data transmission give two device ing speech and printer response in human operation.Take number and print out the line number, voice broadcast a snarling notify the corresponding number to handle the business of good code.Key words: AT89C52;Wireless data transmission;Speech;The number line,1绪论近年来,随着办证服务种类的增加及服务量的增大,排队等待以成为亟待解决的问题。

C#银行排队叫号系统课程设计报告

C#银行排队叫号系统课程设计报告

《软件设计基础-C#》
课程设计报告
设计名称:银行排队叫号系统
姓名:
学号:
专业班级:
学院:
设计时间:
设计地点:
目录
1.课程设计目的 (3)
2.课程设计任务与要求 (3)
3.课程设计说明书 (4)
4.课程设计成果 (9)
5.程序调试过程 (11)
6.设计问题的不足和改进方案 (11)
7.课程设计心得 (12)
8.附录 (13)
9.参考文献 (22)
2.3类定义(函数定义)
Form1类:
Form1继承了系统中的Form类;
在Form1中使用了button、label、textBox等控件;
使用了button_Click方法实现取号行为;
Form2类:
Form2也继承了系统中的Form类;
在Form2中也使用了button、label、textBox等控件;使用了button_Click方法实现叫号行为;
Form3类:
Form3也继承了系统中的Form类;
在Form2中也使用了button、label、textBox等控件;
使用了button_Click方法实现叫号行为;
Form4类:
Form4也继承了系统中的Form类;
在Form2中也使用了button、label、textBox等控件;
使用了button_Click方法实现叫号行为;
服务窗口ServiceWindow类:
服务队列的属性BankQ;
作为线程的方法Service();
主程序Main()方法;。

银行排队叫号系统设计

银行排队叫号系统设计

银行排队叫号系统设计徐磊【摘要】随着当今时代科技的发展,科技在各个行业受到广泛运用.文章设计了一种银行排队叫号系统,该系统基于AT89C52的嵌入式系统而设计,用户通过该排队系统进行业务办理等待,其主要核心是通过系统进行安排排队抽号顺序,用户在排队机前进行抽号,系统会生成排队号码并反馈给用户和工作人员,工作人员利用该系统进行叫号并且通过显示器提醒用户当前所叫号数,用户可以通过该系统随时了解排队情况.该系统的运用,可以极大地提高银行排队等待的效率,可以通过排队自动化、规范化来解决客户排队的混乱秩序,同时通过这种现代化信息处理,提高银行的服务水平和质量.【期刊名称】《无线互联科技》【年(卷),期】2017(000)011【总页数】5页(P59-63)【关键词】单片机;排队叫号;系统开发【作者】徐磊【作者单位】南京华苏科技有限公司,江苏南京 210012【正文语种】中文通过运用银行智能排队叫号系统进行排队来更好地在银行服务过程中提高银行的服务效率,解决排队过程中的各种问题。

此系统能够提高银行的服务效率和客户的服务体验。

系统的需求分为功能需求和非功能需求两个方面。

系统的功能需求:(1)通过智能排队叫号系统,客户选择自己所需的服务类型,系统接收客户需要的服务的类型与客户的信息。

(2)智能排队叫号系统通过系统自身软件编写实现智能排队。

(3)智能排队叫号系统根据客户需求和软件运行后生成客户排队凭单通过打印机反馈给客户。

(4)系统将排队信息通过LED屏幕实时更新显示。

(5)工作人员通过计算机等硬件设备并且控制广播呼叫客户进行服务,实现排队系统的自动更新。

系统的非功能性需求:(1)使用独立的网络系统进行连接,保障系统的安全性。

(2)通过各种硬件设计和针对性的研发银行排队系统软件相结合,来提高银行排队系统的稳定性。

2.1 硬件总体设计该系统设计的核心是通过取票、进队、排队等候、叫号等服务模拟人排队过程,由银行智能排队叫号系统代替人排队的过程。

银行排队叫号系统方案

银行排队叫号系统方案

银行排队叫号系统方案1. 引言在银行业务日益繁忙的背景下,为了提高客户体验和服务效率,银行需要引入一套能够智能管理排队叫号的系统。

本文将介绍一种银行排队叫号系统的方案,以提高银行服务质量和效率。

2. 系统介绍银行排队叫号系统是一种基于计算机技术和网络通信技术的智能管理系统。

该系统将客户排队信息和工作人员信息进行管理,通过合理的调度和优化,提高客户的等待时间,并减轻工作人员的负担。

3. 系统功能3.1 客户叫号功能客户通过自助终端或手机App获取取号凭证,系统将为客户自动生成一个排队号码。

客户可以根据自己的需求选择特定的业务窗口或者按照系统推荐的等待时间最短的窗口进行办理业务。

3.2 排队叫号功能排队叫号功能主要包括客户的叫号显示和工作人员的叫号服务。

系统将客户的号码和业务类型显示在屏幕上,员工根据显示的信息叫号,客户到达相应窗口后进行业务办理。

3.3 业务办理功能系统提供各种银行业务的办理功能,例如存款、取款、转账、办理信用卡等。

客户在办理业务时,工作人员通过系统可以快速查找客户的个人信息,提供更专业、快捷的服务。

3.4 数据统计和分析功能系统可以实时统计和分析客户的等待时间、民族性别、业务类型等多维度的数据。

通过数据分析,银行可以优化窗口设置、调整工作人员分配和提前处理高峰期等,以提高整体服务质量。

4. 系统优势4.1 提高客户体验通过引入排队叫号系统,客户可以自由选择业务窗口,减少排队等待时间,提高服务效率和客户满意度。

4.2 节省人力成本排队叫号系统能够自动化处理客户的排队和叫号,减轻工作人员的负担,节省人力成本。

4.3 数据分析和服务优化通过系统的数据统计和分析功能,银行可以及时了解客户的需求和业务情况,进行相应的服务优化,提高服务质量。

5. 系统实施方法系统的实施方法包括以下几个步骤:•需求分析:与银行进行沟通,了解其具体需求和业务特点。

•系统设计:根据需求分析结果,设计排队叫号系统的架构和功能模块。

基于单片机银行排队叫号系统设计

基于单片机银行排队叫号系统设计

基于单片机银行排队叫号系统设计河北工业大学本科毕业设计(论文)中期报告河北工业大学本科毕业设计(论文)中期报告学生信息:学号:姓名:班级:指导教师信息:姓名:职称:告提交日期:2021年4月4日- -2021年4月14日 1 总体概述本课题设计要求实现银行排队无线呼叫功能,由一个叫号系统和一个取号系统组成,叫号系统和取号系统的单片机都采用STC89C52。

叫号系统由MCU控制器、nRF24L01无线模块、12864液晶显示模块和按键,用以显示银行的处理序号和下一位要处理的序号;取号系统主要由MCU控制器、nRF24L01无线模块、12864液晶显示模块组成,实现排队的处理序号。

叫号系统和取号系统通过无线收发模块进行通信,实现对电路的控制。

电路总体框架如下:按键A 按键B 叫号机图1-1电路总体框图取号机 STC89C52单片机无线网络模块nRF24l01 无线网络模块nRF24l01STC89C52单片机 12864 12864 按键C 注释:1.按键A、B分别用于叫号机系统控制客户普通号和贵宾号的类型;2.按键C分别用于取号机系统控制客户在排队系统中的序列。

2 硬件电路的各模块设计 2.1总电路原理图取号机和从号机的原理图如下:(1)叫号机原理图1河北工业大学本科毕业设计(论文)中期报告(2)取号机原理图图2-1-1 叫号机系统原理图图2-13:从机电路原理图图2-1-2 取号机系统原理图 2河北工业大学本科毕业设计(论文)中期报告2.单片机复位电路及时钟电路设计51单片机的复位电路由按键、10uf电容、10k电阻组成,用于单片机的上电复位和按键复位。

当给单片机上电时由于电容两端电压的不可突变性,使单片机的RESET为高电平,使单片机复位;同理,当按键按下时,单片机RESET为高电平,使单片机复位。

51单片机的时钟电路由12M晶振、2个小于47pf的电容组成,用以给单片机提供内部工作时钟。

电路图如图2-1:图2-2:单片机复位电路和时钟电路3. nRF24L01无线模块与单片机接口电路设计nRF24L01与单片机的接口电路如图所示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘要排队叫号管理系统是针对银行、工商、税务、通讯、政府机构等部门的大厅工作流程设计的,是利用电脑的科学管理客户排队的系统,很好地解决了客户在服务机构办理业务时所遇到的各种排队、拥挤和混乱现象,为客户办理业务带来莫大的方便和愉悦。

该题研究的目的是研制一款无人排队的排队叫号机,它主要由主控制器、键盘、显示电路、蜂鸣器电路等部分构成。

系统利用单片机进行控制,通过串行通信方式传输处理数据;通过按键取号,在LCD1602上显示排队的号码以及当前正在等待的人数;通过按键叫号,在LCD1602上显示叫到的号码,由扬声器发出声音提示客户。

同时免除了令客户不舒服的站立式排队,这种现代化的高科技产品彻底解决了银行普遍存在的站立等候,服务无序的问题,深化并完善了服务的质量。

本系统采用单片机进行控制,利用LCD1602显示,蜂鸣器鸣叫提示的人机交互界面,模拟排队管理系统,科学地处理各种排队情况。

操作简便,控制灵活,显示清晰,制作成本低,性价比较高。

关键词STC89C52 LCD1602 蜂鸣器目录1 系统方案论证 (1)1.1 设计要求 (1)1.2 单片机芯片的选择方案和论证 (1)1.3 显示模块选择方案和论证 (1)1.4 系统方案设计 (2)2 系统硬件设计 (3)2.1 系统总电路 (3)2.2 单片机处理部分设计 (3)2.3 显示电路部分 (4)2.4 时钟振荡电路 (5)2.5 复位电路 (6)2.6 叫号电路 (6)2.7 按键电路 (7)3 系统软件设计 (8)4系统测试 (9)5 小结 (10)参考文献 (11)附录 (12)源程序: (12)银行叫号排队系统的设计1 系统方案论证1.1 设计要求(1)实地调研,了解银行叫号过程;(2)画出一个实例的状态转移图;(3)程序设计,用单片机实现。

(汇编语言或C语言)注:根据实际情况,制定可行的技术路线,满足客户要求。

(如,等待时间最短;VIP 优先;老人优先(专柜);“飞号”不清除等。

飞号是指叫了该号3次后,而该号人没出现服务窗口,就不再呼叫,该号被清除了,该号就称之为飞号。

可用户又回来了,只好再取一个新号。

)1.2 单片机芯片的选择方案和论证方案一:采用AT89S51芯片作为硬件核心,内部具有4KB ROM 存储空间,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,所以在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。

方案二:采用STC89C52芯片,STC89C52是一种低功耗、高性能的8位CMOS微控制器,具有8K的可编程Flash存储器。

同样具有AT89S51的功能,且具有在线编程可擦除技术,当对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。

综上所述,选择采用STC89C52作为主控制系统核心。

1.3 显示模块选择方案和论证方案一:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,但连线还需要花费一点时间,所以也不用此种作为显示。

方案二:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,若采用在显示数字显得太浪费,且价格也相对较高,所以在此也不用此种作为显示。

方案三:采用1602液晶显示屏,该液晶显示屏的显示功能强大,内置192种字符,可显示大量符号、数字,清晰可见,而且功率消耗小寿命长抗干扰能力强。

综上所述,在设计中采用1602液晶显示屏。

1.4 系统方案设计系统采用如图1所示的电路,通过STC89C52单片机直接扩展的独立键盘,完成排队取号流程(本系统直接利用系统的中断0按键控制),单片机控制LCD1602显示排队等待情况,控制蜂鸣器发声完成叫号功能。

图1采用独立键盘实现功能 因为采用矩阵键盘完成排队取号流程,但客户较多的时候要实现排队取号的功能,就要占去过多的I/O 端口,操作起来也比较复杂,而方案二的独立键盘操作控制简单,占用主机资源少,所以选择方案二,采用独立键盘控制排队取号,通过串行通信的方式,模拟排队取号管理系统的流程显得更加方便、科学。

89C52 蜂鸣器 LCD1602独立键盘2 系统硬件设计2.1 系统总电路系统电路由单片机部分,显示电路,时钟振荡电路,复位电路,叫号电路和按键电路组成。

图2 系统总电路图2.2 单片机处理部分设计设计的思想是简单实用,中心处理部分采用STC89C52单片机。

STC89C52单片机完全可以满足本系统的设计要求,相对于其他具有相当功能的器件来说,具有价格便宜,对环境要求不高,工作稳定等优点。

STC89C52高性能COMS 8位单片机,片内含4K Bytes的可反复擦写的只读程序存储器(ROM)和128 Bytes的随机存取数据存储器(RAM)。

具有32个可编程的I/O口,其中P 0口为一个8位漏极开路双向I/O口,编程时作为原码输入口,校验时,输出原码;P1口是一个内部提供上拉电阻的8位双向I/O口,在编程和校验时,作为第八位地址接收;P2口为一个内部上拉电阻的8位双向I/O口,在编程和校验时接收高八位地址信号和控制信号;P3口为8个带内部上拉电阻的双向I/O口,同时也偶一些特殊功能,我们所使用到的P3.6/WR可作为外部数据存储器写选通,P3.7/RD可作为外部数据存储器读选通;RST口为复位输入;XTAL1口为反向振荡放大器的输入及内部时钟工作电路的输入;XTAL2口为反向振荡器的输出。

89C52管脚功能如下图3 STC89C52管脚2.3 显示电路部分显示电路部分如下图所示,采用的是液晶显示屏1602模块,1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线。

它可以显示两行,每行16个字符,采用单+5V电源供电,外围电路配置简单,价格便宜,具有很高的性价比。

STC89C52的P0.0至P0.7的8个端口用来控制数码管的显示。

图4 显示电路部分2.4 时钟振荡电路SCT98C52中有一个用于构成内部振荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。

这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,震荡电路如图5所示。

因为一个机器周期含有6个状态周期,而每个状态周期为2个震荡周期,所以一个机器周期共有12个震荡周期,如果外接石英晶振的震荡频率为12MHz,故而一个机器周期为1uS 。

图5 时钟振荡电路外接石英晶体及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。

对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响震荡频率的高低、震荡器工作的稳定性、起振的难易程度及温度稳定性。

外接石英晶体,电容使用30pF。

2.5 复位电路复位电路虽然简单,但其作用非常重要,一个单片机系统能否正常运行,首要检查是否能复位成功。

复位操作有上电自动复位和手动复位两种方式,本文采用手动复位方式。

手动复位是通过开关实现的其电路如图6所示。

在通电瞬间电容C通过电阻R充电,RST出现正脉冲,用以复位。

只要电源Vcc上升时间不超过1ms,就可以实现手动复位,即按下开关就可以实现系统的复位初始化。

关于参数的选定在震荡稳定后应保证复位高电平持续时间大于2个机器周期。

这里选用的是12MHz的石英晶振可取C=4.7uF,R=4.7K。

图6 复位电路2.6 叫号电路实现叫号的接口电路比较简单,其发音原件通常采用压电蜂鸣器,当在蜂鸣器两引脚加上+3V—+15V只留工作电压时,就能产生3KHz左右的蜂鸣器震荡音响。

压电式蜂鸣器结构简单、耗电少、更适合于单片机系统的应用。

压电式蜂鸣器,需要10mA的驱动电流,可在P3.1口接上一直三极管和电阻组成的驱动电路来驱动,如图7所示。

图7 叫号电路在图中,P3.1接三极管的极端输入端,当P3.1输出高电平时,三极管导通,蜂鸣器通电而发音,当P31输出低电平时,三极管截止,蜂鸣器停止发音。

2.7 按键电路按键电路实现的功能是取号和叫号,客户通过按键实现取号,工作人员通过按键实现叫号,使客户前来相应的窗口就诊,按键电路如图8所示。

图8 按键电路3 系统软件设计本程序可实现设计的基本要求,设备上电后,显示器屏幕亮,无信息显示。

当客户按键后,每按一下,队伍加1,显示器显示客户队伍号;排满20位后,再按取号键,屏幕显示“队伍满”。

当客服叫号时,队伍减1,程序进行信息处理,在显示器上显示“几号客户到几号窗口”,同时进行声音提示。

1602通过D0~D7的8位数据端传输数据和指令,其模块内的控制器有11条控制指令。

当液晶显示屏的接口电路与单片机系统I/O 按照并行数据传输方式连接完成以后,即可以对STC89C52单片机进行编程。

在液晶屏完成显示之前首先要对液晶进行初始化。

程序流程图如图9所示。

N YNY图9总程序流程图初始化结束 蜂鸣器 叫号处理 1602液晶显示取号处理取号没 叫号没开始 队伍号码递减队伍号码累加 1602液晶显示4系统测试在Proteus上画出电路图,用C语言编写的程序,在Keil中生成hex文件,这样可在prteus中运行和仿真,实现排队叫号。

客户取号图如下图10 客户取号图服务叫号图如下图11 服务叫号图5 小结本次课程设计所做的是基于单片机的排队叫号机系统。

主要是为了解决大量客户的拥挤排队的问题,并同时使事业单位改善服务品质、提升营业形象。

排队系统完全模拟了人群排队全过程,通过取号进队、排队等待、叫号服务等功能,代替了人们站队的辛苦,把顾客排队等待的烦恼变成一段难得的休闲时光,使客户拥有了一个自由的空间和一份美好的心情。

在整个设计过程中,我充分发挥了人的主观能动性,自主学习,学到了许多课堂上没学到的知识。

程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考查资料,和同学讨论,向老师请教,理清了思路,再加上先前做计算机控制技术课程设计积累的经验,完成对程序的编写。

进一步提高了对单片机的认识,进一步熟悉和掌握单片机的结构及工作原理。

通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术,提高软件设计、调试能力;通过这次设计熟悉以单片机核心的应用系统开发的全过程,掌握硬件电路设计的基本方法和技术。

最终较好的完成了设计,达到了预期的目的,完了最初的设想。

经过了一个星期课设,我学到了不少课堂上未曾接触过的知识。

同时又把把以前没有学好的程序专业知识进行了补充和加强,加深了我对于单片机和数字电路的认识和理解,巩固了自己所学的专业知识,相信在以后的学习和工作中碰到这些基础的元器件我会更加得心应手。

相关文档
最新文档