(电路与系统专业论文)基于linux系统的智能排队系统设计.pdf_第1页
(电路与系统专业论文)基于linux系统的智能排队系统设计.pdf_第2页
(电路与系统专业论文)基于linux系统的智能排队系统设计.pdf_第3页
(电路与系统专业论文)基于linux系统的智能排队系统设计.pdf_第4页
(电路与系统专业论文)基于linux系统的智能排队系统设计.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

: 硕m a 士s t 学e r 位 s 论t h 炙e m a s t e rste s i s l 帅吣洲1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 i i l i 1 1 1 i | 1 1 1 l l | i l i i | i i l l 一y 1 8 9 9 6 4 4 t h e d e s i g no f t h ee m b e d d e d q u e u i n gs y s t e mb a s e do nl i n u x at h e s i s s u b m i t t e di np a r t i a lf u l f i l l m e n to ft h er e q u i r e m e n t s f 钟t h em e d e g r e ei ne n g i n e e r i n g b y l i u h a i y a n g p o s t g r a d u a t ep r o g r a m d e p a r t m e n to fi n f o r m a t i o nt e c h n o l o g y c e n t r a lc h i n an o r m a lu n i v e r s i t y s u p e r v i s o r :q us h a o c h e n g a c a d e m i ct i t l e :p r o f e s s o rs i g n a t u r e a p p r o v e d m a y 2 0 1 1 华中师范大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立进行研究工作 所取得的研究成果。除文中已经标明引用的内容外,本论文不包含任何其他个人或 集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在 文中以明确方式标明。本声明的法律结果由本人承担。 作者签名:日期:、) 1 1 年y 、 只2 甚 | 学位论文版权使用授权书 学位论文作者完全了解华中师范大学有关保留、使用学位论文的规定,即:研 究生在校攻读学位期间论文工作的知识产权单位属华中师范大学。学校有权保留并 向国家有关部门或机构送交论文的复印件和电子版,允许学位论文被查阅和借阅; 学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它复制手 段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密,在年解密后适用本授权书。 非保密论文注释:本学位论文不属于保密范围,适用本授权书。 作者签名: 日籼l f 年y 月办 导师签名: 日期:沙, 日 本人已经认真阅读“c a l i s 高校学位论文全文数据库发布章程”,同意将本人的 学位论文提交“c a l i s 高校学位论文全文数据库”中全文发布,并可按“章程 中的 规定享受相关权益。回意途塞堡童卮溢蜃! 旦圭生;旦二生;旦三生蕉壶! 苫:笃二1 年月弓7 日 日期:占d 1 年月2 日 导师签名: 日期:少, 日 纸矽 ,f 、 硕士学位论文 m a s t e r st h e s i s 摘要 随着信息技术的发展,排队系统有了很大的改变。排队系统给了人们极大的方 便,免除了站立排队之苦。但是依然存在着缺陷,出现了黄牛党倒票的现象,而且 不能通过i n t e r n e t 访问排队系统,产品升级换代困难等问题o 针对出现的问题,我 们申请了武汉市科技攻关项目。 首先从课题研究背景出发,分析了项目的意义和国内外研究现状,提出了系统 解决方案。整个排队系统被分为服务器和显示窗口,服务器采用搭载l i n u x 操作系 统的a r m 9 平台,显示窗口由a r m 7 控制的l e d 显示矩阵和单片机控制的按键盒 组成。显示屏和按键盒通过服务器进行通信。在这个系统平台上设计客户和工作人 员工作流程,并提出系统的通信帧格式。 其次详细设计显示屏窗口。显示屏选取合适的行列驱动芯片驱动l e d 矩阵, 采用s p i 通信接口负责a r m 7 和l e d 显示矩阵的通信。按键盒则采用单片机读取 外部按键值。显示屏和按键盒均通过r s 2 3 2 串口与服务器通信。在软件方面设计排 队系统的数据结构,根据工作流程设计通信和显示软件模块。 接着构建了a r m 9 和u s b 摄像头为核心的服务器系统。软件方面,在p c 机 上安装l i n u x 操作系统和q t 界面设计软件的交叉编译环境后,设计服务器需要的 数据结构,根据客户工作流程,构建服务器通信帧传输和排队票号管理软件。利用 l i n u x 视频采集标准v 4 l 2 接口采集图像,并在q t 设计的界面上显示出来。 最后启动排队系统,服务器成功采集到图像并显示出来,和服务窗口通信也很 正常,验证了系统设计的正确性。 关键字:排队系统;l i n u x ;v 4 l 2 视频采集;a r m ,嚣、 : 硕士学位论文 m a s t e r st h e s i s a b s t r a c t w i t ht h ed e v e l o p m e n to fi n f o r m a t i o nt e c h n o l o g y , q u e u i n gs y s t e mh a sc h a n g e d d r a m a t i c a l l y q u e u i n gs y s t e mg i v e sp e o p l eg r e a tc o n v e n i e n c e ,e l i m i n a t i n gt h ep a i no f s t a n d i n gl i n e b u tt h e r ea r es t i l ls h o r t c o m i n g s ,f o re x a m p l et h e r ea r es c a l p e r ss c a l p i n g , a n dn o ta c c e s s i n gt ot h ei n t e r a c t ,a n dd i f f i c u l tt ou p g r a d ep r o d u c t s f o rt h ep r o b l e m s ,w e a p p l yf o rs c i e n t i f i ca n dt e c h n o l o g i c a lp r o j e c t si nw u h a n f i r s t l yf r o mt h er e s e a r c hb a c k g r o u n d ,t h ep a p e ra n a l y z e dt h es i g n i f i c a n c eo ft h e p r o j e c ta n d t h ed o m e s t i ca n di n t e r n a t i o n a lr e s e a r c h s t a t u s ,t h e np r o p o s e ds y s t e m s o l u t i o n s t h eq u e u i n gs y s t e mi sd i v i d e di n t ot h es e r v e ra n dt h ed i s p l a yw i n d o w t h e s e r v e ri st h ea r m 9p l a t f o r me q u i p p e dw i t hl i n u xo p e r a t i n gs y s t e m d i s p l a yw i n d o wi s c o m p o s e do fl e dd i s p l a ya n dt h ek e yb o x ,c o n t r o l l e db ya r m 7a n ds c mr e s p e c t i v e l y d i s p l a ya n dk e y p a dc o m m u n i c a t et h r o u g ht h es e r v e r a tl a s tp a p e rd e s i g n e dc l i e n t sa n d s t a f fw o r kf l o w , a n dp r o p o s e df r a m ef o r m a ti nt h i ss y s t e mp l a t f o r m s e c o n d l y , b e g i nd e t a i l e dd e s i g n o ft h e d i s p l a yw i n d o w t h ep a p e rs e l e c tt h e a p p r o p r i a t ed i s p l a yd r i v e rc h i pd r i v i n gl e dm a t r i xr a n k s ,u s i n gs p ic o m m u n i c a t i o n i n t e r f a c ei sr e s p o n s i b l ef o ra r m 7a n dt h el e dd i s p l a ym a t r i xc o m m u n i c a t i o n b u t t o n b o xr e a de x t e r n a l k e y v a l u ew i t hm i c r o c o n t r o l l e r b o t h d i s p l a ya n dk e y sb o x c o m m u n i c a t e 嘶t ht h es e r v e rt h r o u g ht h er s 2 3 2s e r i a lp o r t i nt e r m so fs o f t w a r e ,t h e p a p e rd e s i g nt h ed a t a s t r u c t u r ea n dc o m m u n i c a t i o n sa n dd i s p l a ys o f t w a r em o d u l e a c c o r d i n gt ot h ew o r k f l o w t h i r d l y , c o n s t r u c t et h ea r m 9a n du s bc a m e r ac o r es e r v e rs y s t e m a f t e rl i n u x o p e r a t i n gs y s t e ma n ds o f t w a r ei n t e r f a c ed e s i g n e rq tc r o s s - c o m p i l e re n v i r o n m e n tw a s i n s t a l l e do nt h ep c ,t h ep a p e rd e s i g nd a t as t r u c t u r ea n db u i l ds e r v e rc o m m u n i c a t i o n f r a m et r a n s m i s s i o na n dq u e u i n gt i c k e tn u m b e rm a n a g e m e n ts o f t w a r e ,a c c o r d i n gt ot h e c u s t o m e rw o r k f l o w t h es y s t e mc a p t u r ei m a g eu s i n gs t a n d a r dv 4 li n t e r f a c e ,a n dd i s p l a y a c q u i s i t i o ni m a g ei nq t f i n a l l y , s t a r tq u e u i n gs y s t e m ,s e r v e rs u c c e s s f u l l yc a p t u r e da n dd i s p l a y e dt h ei m a g e , a n dc o m m u n i c a t i o ni sa l s on o r m a l ,w h i c hv e r i f yt h ec o r r e c t n e s so fs y s t e md e s i g n k e y w o r d s :q u e u i n gs y s t e m ;l i n u x ;v 4 l 2v i d e oc a p t u r e ;a r m : 硕士学位论文 m a s t e r st h e s i s 目录 摘要i a b s t r a c t 第一章绪论l 1 1 课题研究背景1 1 2 课题研究意义1 1 3 国内外研究现状1 1 4 论文主要内容及结构安排2 第二章智能排队系统概要设计。3 2 1 排队系统框架3 2 1 1 排队系统硬件框架3 2 1 2 排队系统软件框架4 2 1 3 系统通信帧格式4 2 2 排队系统工作流程5 2 2 1 客户工作流程5 2 2 2 工作人员工作流程6 2 2 3 排队票号数据处理流程6 2 3 本章小结6 第三章服务窗口详细设计。 7 3 1 服务窗口构成7 3 2l e d 显示屏整体设计。7 3 2 1 显示屏的硬件架构7 3 2 2 显示屏的软件设计和关键函数1 0 3 3 呼叫终端整体设计1 6 3 - 3 1 呼叫终端硬件框架17 3 3 2 按键盒软件设计18 3 4 本章小结2 1 第四章服务器详细设计2 2 硕士学位论文 m a s t e r st h e s i s 4 1 服务器硬件框架2 2 4 1 1 服务器主控芯片。2 2 4 1 2 电源电路2 3 4 1 3s d r a m 2 3 4 1 4f l a s h 存储系统2 3 4 1 5u s b 接口。2 4 4 1 6 串口驱动电路2 5 4 2 服务器软件框架2 5 4 3 交叉编译环境2 5 4 3 1l i n u x 起源、特性及应用领域2 6 4 3 2f e d o r a9 安装2 7 4 3 3l i n u x 操作系统交叉编译环境2 7 4 3 4 裁剪和配置a r ml i n u x 内核2 9 4 3 5q t 移植3 0 4 4 图像采集3 2 4 4 1 摄像头的选型。3 2 4 4 2 图像相关简介3 3 4 4 3v 4 l 2 标准接口3 4 4 4 4 基于v 4 l 2 标准接口的图像采集具体实现3 5 4 5 服务器主程序3 6 4 5 1 数据结构的设计3 7 4 5 2 程序中函数介绍3 8 4 6 服务器图形界面4 0 4 6 1q t 软件系统4 0 4 6 2 服务器界面设计4 1 4 6 3 基于q t 程序的界面实现4 2 4 7 系统测试4 5 4 8 本章小结4 6 第五章总结与展望4 7 5 1 总结4 7 5 2 展望4 7 参考文献 4 8 攻读研究生期间发表论文 5 l 致谢。5 2 : 硕士学位论文 m a s t e r st h e s i s 1 1 课题研究背景 第一章绪论 随着国家经济和i t 技术的飞速发展,排队系统有了质的飞跃。前拥后挤的排 队等候得到了改善,电子排队系统得到了广泛的应用。人们只需要按一下取号键, 就可以得到排队序号,然后安心的等待叫号,接受服务。 然而,伴随着新服务的不断增多,也带来了许多难题。如黄牛党代买票、不能 与互联网通信、产品升级困难、用户界面指示不清楚等,怎样解决这些问题呢? 本文是根据武汉市科技攻关计划项目“嵌入式智能窗口网络管理平台的开发” ( 项目编号:2 0 0 8 1 0 3 2 1 1 3 2 ) 而提出解决方案,采用嵌入式技术研制智能排队叫号 管理系统,解决排队系统中的一些常见问题。 1 2 课题研究意义 本文设计的智能排队系统是基于a r m 9 处理器s a m s u n g s 2 4 4 0 作为主控芯片的 服务器和a r m 7l p c 2 1 3 8 作为主控芯片的l e d 显示屏。a r m 系列处理器在嵌入式 系统应用中占据着举足轻重的地位,得到了很多许多操作系统的支持,如w i n c e , l i n u x ,v xw o r k s 实时操作系统。由于微软公司的w i n c e 和风河科技的v xw o r k s 都不是对外开源的,我们设计的智能排队系统采用了a r m 处理器+ 开源系统l i n u x 的结构。l i n u x 操作系统支持c c + + 语言和i n t e m e t ,还有许多a p i 函数可以调用。 用户界面设计采用q t 软件设计,界面美观。整个系统无论是开发、扩展和升级软 件都十分容易,彻底解决了以前排队系统升级和扩展的困难,为我们持续添加新功 能更方便。 1 3 国内外研究现状 排队系统技术最早出现在欧美5 0 年代,因其使用方便得到快速普及。刚开始, 在许多营业场所先去排队机取号已成为基本常识。 刚开始,排队是先取一个预先准备好的号,然后轮到该号时,店方再用麦克风 通知客户接受服务。随着电子和计算机技术的发展以及业务越来越复杂,微处理器 和网络被应用到排队系统。人工分配票号改成基于微处理器的服务器自动分配,人 工叫号改成语音叫号,管理方也可以在p c 上通过i n t e m e t 查看现场情况。排队客户 也还可以通过查看l e d 显示屏来确定正在服务号码。管理信息系统也在排队系统 一, 硕士学位论文 m a s t e r 。st h e s i s 中发挥重要的作用,管理方在后台通过分析数据库数据,指导业务【1 1 。 排队理论也得到了广泛的发展,1 9 0 9 年丹麦的电话工程师爱尔郎进行了长期的 工作,取得了随机服务系统理论的最早成果。1 9 4 0 年前后排队理论开始在机器管理 和陆空交通等方面得到应用。1 9 5 1 年理论工作有了更新的发展,逐渐奠定了现代随 机理论服务基础,其服务领域也得到了广泛的应用,如订货问题,可靠性问题,计 算机性能分析与设计等。 在我国,排队系统从近1 0 年开始普及。目前排队产品应用十分广泛,在医院、 银行等许多场合得到充分使用。排队系统不仅缓解客户排队压力,而且还可以得到 正在排队人数,有效地管理时间。对公司而言,排队系统可以提供排队人数、客户 最需要的服务和排队分布时间,公司根据后台管理软件为业务开展提供参考【2 】。 我国也在排队理论利于也做出令人自己的贡献,顾基发研究了带有调度员的服 务系统,韩继业研究了到达依赖于队长的系统的瞬时性态及其最优化问题,徐光辉 与董泽清对矿山装运过程进行了模拟,包括最优分配和总产量计算【3 2 1 。 1 4 论文主要内容及结构安排 第一章简要介绍了智能排队系统的研究背景, 内外发展现状和不足,提出本文的论文结构。 第二章介绍了智能排队系统的整体系统设计, 的硬件和软件设计。 分析了项目研究的意义,概述国 工作原理和流程。深入介绍系统 第三章从软、硬件设计两个方面深入介绍l e d 显示屏的设计。介绍硬件的l e d 的硬件驱动,通信接口。软件方面则具体介绍传输帧的生成、解码和纠错,l e d 显 示屏和服务器的通信。 第四章介绍服务器的实现。介绍服务器处理器和操作系统的选择,l i n u x 操作 系统和q t 软件交叉编译环境的实现和移植。具体介绍系统串口通信数据结构的设 计,通信接口的设计。进而提出u s b 摄像头的图像采集程序,用q t 设计互动界面。 最后对排队系统进行测试,验证设计的正确性。 第五章总结与展望。提出创新点和不足,并设想未来的进一步工作。 2 第二章智能排队系统概要设计 2 1 排队系统框架 本系统采用软件和硬件协同设计的方法,软硬件互相提供开发的平台。了解业 务需要编写系统分析规格说明书,设计出系统体系结构。再分别设计、制作、测试 软件和硬件,最后系统集成测试。 2 1 1 排队系统硬件框架 根据实际需求设计出整个系统的体系结构( 如图2 1 所示) ,整个系统嵌入式由 排队主机服务器和服务窗口组成。服务窗口由l e d 显示屏和按键盒组成。主机服 务器由呼叫终端、视频采集系统、语音设备、打印机等构成。由于最后两者都是技 术成熟的设备,整个硬件设计的重点是排队主机服务器、l e d 显示屏、呼叫终端、 视频采集系统的设计。整个系统内部的通信采用串口通信r s 2 3 2 总线通信方式。每 个服务窗口配备有一个呼叫终端和一个l e d 显示屏,通过串口与排队主机组网, 实现与排队主机服务器的通信【3 1 。 图2 1 系统逻辑框图 2 1 1 1 服务窗口组成 服务窗1 3 由l e d 显示屏和按键盒组成。l e d 显示屏是由a r m 7l p c 2 1 3 8 控制 的1 6 块8 * 8 点阵矩阵,显示内容来自服务器发送的数据。常用的汉字二进制点阵 以数组的形式存储在芯片中,服务器只需要发送相应的数组名给l e d 显示屏, l p c 2 1 3 8 芯片就会将数组内容发送给l e d 矩阵显示出来。 : 硕士学位论文 m a s t e r st h e s i s 2 1 1 2 服务器组成 服务器由a r m 9 作为主芯片的开发板、u s b 摄像头、语音呼叫系统组成。其 中u s b 摄像头和语音呼叫系统是比较成熟的技术,主要从市场直接采购。系统采 用的u s b 摄像头是中芯微z c 3 0 1 控制的c m o s 图像传感器。开发板是以a r m 9 2 4 4 0 芯片为核心c p u 的一个最小系统,还包括电源电路、复位电路、串行接口、 标准j t a g 调试接口、s d 删、n a n df l a s h 和n o rf l a s h 存储系统【4 1 。 2 1 2 排队系统软件框架 系统软件主要由服务器和服务窗口组成。服务器软件由主机服务器系统应用软 件、q t 界面、视频采集软件、网络传输4 个功能模块组成。服务窗口由l e d 显示 屏通信软件、按键盒通信软件五个功能模块软件组成。其中 ( 1 ) 嵌入式排队服务器应用软件包括五个部分:l i n u x 操作系统、串行通信 软件、语音呼叫号。 ( 2 ) l e d 显示屏软件包括传输帧的生成和解码、通信纠错模块,负责主机与 呼叫终端、l e d 条屏的通信。 ( 3 ) 按键盒通信软件包括按键驱动和通信软件。 ( 4 ) 视频采集软件包括重要数据结构、视频数据读取。 ( 5 ) 网络传输软件包括t c p i p 传输模块。 2 1 3 系统通信帧格式 本系统串口通信采用异步传输方式和全双工通信模式。系统通信帧( 如图2 2 所示) 采用2 字节的帧头作为同步字符。传输时紧跟着同步帧头的分别是传输目标 机编码,本机编码,通信命令,数据长度,它们都用1 个字节来标示。后面跟着就 是传输的数据,数据以字节为单位,长度不限,数据的最后1 字节则是校验帧。最 后2 字节的帧尾作为同步传输结束字符。其中通信命令有4 个包括发广播包命令、 查询命令、分配正在服务号命令、按键通知命令1 5 】。 帧头1 l 帧头2l 显霉i 主0l 莩? l 茎据长ln 据位数i 检验帧i 帧尾1l 帧尾2i 地址i 地址l 命令l 度i 据 图2 2 通信帧格式 其中: 帧头1 、2 分别设为0 x e b 、0 x 1 9 ,用途是当设备收到这2 个字节时表示新的一帧 开始传输。 帧头l 、2 分别设为0 x 0 3 、0 x o d ,用途是当设备收到这2 个字节时表示一帧传输 4 石】j i 士学位论文 m a s t e rst h e s i s 结束。 地址:采用1 字节数据来标示,地址范围从0 x 0 0 至0 x f f 。其中0 x 0 0 表示服 务器地址,0 x f f 表示广播帧。呼叫终端采用奇数地址,l e d 显示屏则是同一个窗 口的呼叫终端地址加1 。 帧长度由实际需要系统自行设置,最多可以设置2 5 6 位。 检验帧是对发送数据进行奇偶校验,除了帧头和帧尾。检验帧的值是把除了帧 头和帧尾的数据累加所得的值。接收方接受完帧数据后,把除帧头、帧尾和检验帧 的数据累加所得值,再和检验帧加总,值为o 则接受正确,否则错误。 通信命令包括服务器向呼叫终端发和l e d 显示屏送数据的命令。本系统只设 置四条命令,用户可以在本系统的基础上进行二次开发,更具需要设置更多的命令。 本系统的4 条命令中, 设置了3 条服务器向呼叫终端发送的命令,具体如下: ( 1 ) 广播帧命令:服务器向所有窗口发送正在服务号和最大等待号。本命令 主要是在服务器启动时,对服务窗口的初始化,窗口不需要应答。 ( 2 ) 查询按键命令:服务器向呼叫终端发送呼叫终端地址、正在服务号、最 大等待号,呼叫终端收到帧信息后向服务器发送按键值。 ( 3 ) 分配服务票号:服务器发送新服务号和最大等待号给呼叫终端,呼叫终 端则回应新的服务号和最大等待号。 系统还设置了1 条向l e d 显示屏的命令。 ( 4 ) 呼叫终端按键通知命令:服务器发送同一窗口呼叫终端的正在服务号和 按键值给l e d 显示屏。返回值也为正在服务号和按键值。 2 2 排队系统工作流程 窗口的工作人员开始工作时,通过呼叫终端向服务器发送呼叫请求命令。服务 器实时轮询每个呼叫终端的呼叫信息,并根据查询的结果处理相应的排队队列,响 应请求,把票号分配给给呼叫终端和l e d 显示屏,并驱动语音呼叫系统给出语音 提示:“请xxx 号顾客到xx 号窗口”。 排队系统涉及工作人员、排队客户和系统管理人员,可以简单的将整个工作流 程分成三个具体流程:工作人员工作流、程客户工作流程和管理员工作流程1 7 。 2 2 1 客户工作流程 顾客到达服务大厅后,排队人员只需要在服务器上点击“拍摄”按钮采集图像, 硕士学位论文 m a s t e r st h e s i s 再点击“取票号”即可以获得合格的票号。得到自己的服务票号后,到休息位置等候 语音呼叫,同时关注相关l e d 条屏和语音呼叫系统的信息指示,当被叫到自己的 票号时,根据语音提示和l e d 条屏显示信息到相应窗口办事。 2 2 2 工作人员工作流程 工作人员到达指定的窗口后,即可看到呼叫终端上显示的本窗口的最大等待人 数,待准备好服务客户时按下“呼叫”键开始工作,每服务完一个客户后就按“呼叫” 键呼叫下一位顾客。所呼叫客户在规定时间内不到,可以按“重呼”键再次呼叫客户。 当工作人员因故暂停服务时,可以按下呼叫终端的“暂停”按键。 2 2 3 排队票号数据处理流程 根据系统工作流程( 如图图2 3 所示) ,排队系统基本流程图以所要处理的排队 信息为主体,从客户在发号机上按下按键后产生的一条记录开始,给出了数据处理 的整个流程。 2 3 本章小结 图2 3 排队票号数据处理流程 本章在分析社会需求和现有排队系统不足的基础上,概要介绍了排队系统的硬 件和软件设计架构,把整个排队系统功能分成服务器和服务窗口2 块。并提出了排 队系统工作流程,为下一步详细设计打下坚实的基础。 6 硕士学位论文 m a s t e r st h e s i s 第三章服务窗口详细设计 3 1 服务窗口构成 服务窗口作为工作人员和客户直接面对面的工作终端,必须同时为工作人员和 客户提供各自相关的信息。工作人员需要正在服务客户的票号和排队总人数,而且 能够呼叫客户的按键终端。客户需要知道服务窗口显示的接受服务的票号。考虑到 绝大多数的工作环境,设计了一块由1 6 块8 * 8 l e d 矩阵组成的l e d 显示屏作为面 向客户的显示终端,为工作人员提供一种由5 块7 段l e d 显示的按键盒。按键盒 以单片机a t 8 9 c 2 0 5 1 为核心c p u t 引。 3 2l e d 显示屏整体设计 3 2 1 显示屏的硬件架构 l e d 条屏( 如图3 1 所示) 采用了基于a r m 7 内核的3 2 位微处理器l p c 2 1 3 8 作为显示屏控制系统的主控芯片,显示屏则采用的1 6 片8 宰8l e d 管,按照4 * 4 矩 阵排列。主控芯片通过s p i 通信接口向显示屏发送数据或者汉字对应的二进制数据, 这些数据以数组的形式存储在主控芯片里。 l e d 显示屏以7 4 h c 4 9 5 3 作为行列驱动管,r s 触发器为列驱动管。与主控芯 片s p i 接口连接是8 位移位寄存器7 4 h c 5 9 5 ,还有三态输出功能。 l e d 显示屏通过串口与排队系统服务器通信,采用m a x 2 3 2 芯片装换电平。 图3 1l e d 显示屏屏框图 7 硕士学位论丈 m a s t e r st h e s i s 3 2 1 1 电源电路 5 v 和3 3 v 电压电源是系统主要的电源( 如图3 2 所示) ,主控芯片l p c 2 1 3 8 、 m a x 2 3 2 和列驱动7 4 h c 5 9 5 采用3 3 v 电源,主控芯片l p c 2 1 3 8 和l e d 行驱动芯 片4 9 5 3 采用5 v 电源。5 v 转3 3 v 采用l m l l l 7 3 3 芯片,稳定性良好。 u 5 3 2 1 2 时钟硬件电路 图3 2 电源电路 l e d 显示屏选用外部晶振主要是外部晶振更加稳定和准确,而且频率更高。时 钟硬件电路( 如图所示3 3 ) 采用2 个3 0 p f 的电容和1 个1 m 的电阻为晶振启动振 动,x t a l l 和x t a l 2 分别与l p c 2 1 3 2 的x t a l l 和x t a l 2 连接起来,就可以为 系统工作提供时钟t 9 j 。 3 2 1 3l e d 点阵驱动电路 图3 3 时钟硬件电路 l e d 点阵驱动电路( 如图3 4 所示) 由列驱动芯片、行驱动芯片、l e d 矩阵、 移位寄存器、r s 触发器组成。列驱动芯片采用4 9 5 3 芯片为1 6 块8 * 8 l e d 矩阵提 供电源,行驱动芯片采用r s 触发器锁定给每一列4 块l e d 矩阵的显示值。l e d 显 8 示屏主控芯片通过s p i 接i z l 传值给每一列l e d 矩阵。通过7 4 h c 5 9 5 作为移位寄存 器,l p c 2 1 3 8 每个时钟把数据依次发给r s 触发器,实现数据的完整显示。 图3 4l e d 点阵驱动电路 9 3 2 1 4r s 2 3 2 驱动电路 r s 2 3 2 驱动电路( 如图3 5 所示) 采用m a x 2 3 2 电平转换芯片实现全双工通信。 a x 2 3 2 芯片电源为3 3 v ,选用1 0 4 电容。p 0 0 t x d 0 为l p c 2 1 3 2 串口通信端输出 端口,p 0 0 r x d 0 为l p c 2 1 3 2 串1 5 1 通信端输入端口。m a x 2 3 2 芯片就是把来自服务 器的输入和输出信号电平转换到l p c 2 1 3 2 接受的电平,分别接输出和输出端口。 图3 5r s 2 3 2 驱动电路 3 2 2 显示屏的软件设计和关键函数 显示屏软件主要实现同服务器的通信和票号的显示。在同服务器通信前需要对 芯片进行初始化,需要初始化g p i o 、串口和s p i 接口等。在接收标志被置位后, 串口u a r t 接收来自服务器的数据,判别接收的数据是否发给本地址以及数据是否正 确。显示屏通信最重要的是通信串口结构体和串1 2 1 传输函数的设计。显示屏主控芯 片将收到的票号通过s p i 接口发送给l e d 矩阵,实现票号显示功能最重要的函数是 s p i 传输函数,包括汉字对应的二进制数组。 3 2 2 1 主程序运行流程 ( 1 ) 显示屏主程序( 如图3 6 所示) 启动后,先初始化g p i o 端1 2 1 ,包括启动串 口0 和串口1 ,设置波特率,设置本机编号,启动看门狗,开中断。初始化l e d 模 块译码器对应的l p c 2 1 3 8 的端口。初始化s p i 工作模式,本机正在服务编号为0 。 经过系统的初始化,显示屏开始巡查,如果正在服务号为0 ,l e d 显示屏则显示“欢 迎光临”;如果按键值是暂停,l e d 显示屏则显示“暂停服务”;如果按键值是呼叫 一位或者重呼,l e d 显示屏则显示正在服务票号。将缓冲区数据清空,喂看门狗, 1 0 石贞士学位论文 m a s t e r st h e s i s 系统重新进入巡查模式1 0 1 。 图3 6l e d 显示屏主程序 ( 2 ) 通信中断程序( 如图3 7 所示) :当有中断产生后,显示屏读取缓冲区数 据。如果输入数组下标超界,则清零数组下标,退出等待下一次中断。否则查看通 信状态,如果是接受帧头状态,检查接受的数据与帧头是否一致,否则清零数组下 标,退出等待下一次中断。如果一致则数组下标加l ,如果数组下标是帧格式中目 标地址的位置,设置通信状态模式为控制字状态,数组下标加1 ,否则清零数组下 标并退出。新的中断产生,如果通信状态为控制字状态,新接受的数据送到输入数 组中,数组下标加1 ,判断新接受的数据是否为本机地址,是的话则设置通信状态 为c r c 状态,否则清零数组下标并退出。新的中断先判断通信状态,如果是c r c 状态,将数据送入到输入数组中,数组下标加l 。新的中断先判断通信状态,直到 数据域的所有数据接受完毕,通信状态设置为帧尾状态。新的中断先判断通信状态 假如为帧尾状态,新接受的数据送到输入数组中,直到2 个帧尾接受完毕,再判断 帧尾是否正确,如果一致,再判断c r c 位是否正确,如果不一致则清零输入数组 指针。如果正确,则判断帧中命令行是广播帧则向服务器中发现应答信号。如果不 是广播帧,则向服务器发送最大等待号和最大服务号。中断程序结束【l 。 3 2 2 2 数据结构设计 图3 7 通信中断程序 1 2 硕士学位论文 m a s t e r st h e s i s l e d 显示屏通信软件涉及到服务信息、窗口工作模式、通信状态信息。而状态 信息包括本机服务号,最大服务号、最大等待号和业务类型。通信模式包括串口通 信数据位长度、停止位和奇偶校验位。通信状态信息则空闲状态包括未通信状态,接 收帧头状态,接收控制字状态,接收数据和c r c 状态,接收帧尾状态,本次通信 完成。根据系统的需要设计了下面3 个数据结构类型【1 2 1 。 ( 1 ) 服务信息结构体:包括本机服务号,最大服务号,最大等待号 s t r u c ts e r v l n f o u i n t l6u l6 l o c s e r v i n g s n ;本机服务号 u i m l6u 16 m a x s e r v i n g s n ; 最大服务号 u i n t l 6u 1 6 m a x w a i t i n g s n ; 最大等待号 u i n t 8u 8 s e r v t y p e ;业务类型 ; ( 2 ) 通信模式结构体 t y p e d e fs t r u c tu a r t m o d e u i n t 8d a t a b i t ; 字长度,5 6 7 8 可选 u i n t 8s t o p b i t ; 停止位,1 2 可选 u i n t 8p a r i t y b i t ; 奇偶校验位,o - 无校验,1 奇校验,2 偶校验 u a r t m o d e ; ( 3 ) 通信状态结构体 e n u m c o m m s t a t e i d l e ,c o m m _ s t a t _ h e a d ,c o m m s t a t _ c t r l , c o m m _ s t a t _ d a t a _ c r c ,c o m m _ s t a t _ t a i l ,c o m m _ s t a t _ o v e r ;空闲状态 ( 未通信) ,接收帧头状态,接收控制字状态,接收数据和c r c 状态,接收帧尾状态, 本次通信完成。 : 硕士学位论文 m a s t e r l st h e s i s 3 2 2 3s p i 传输函数 ( 1 ) s p i 接口初始化函数 v o i d m s p i _ i n i t ( v o i d ) 函数功能:设置s p i 时钟分频,设置s p c r 寄存器即s p i 工作模式,c p h a = 0 , 数据在s c k 的第一个时钟沿采样。c p o l = l ,s c k 为低有效。m s t r = l ,s p i 处 于主模式。l s b f = 0 ,s p i 数据传输m s b ( 位7 ) 在先。s p i e = 0 ,s p i 中断被禁止。 ( 2 ) s p i 接口数据发送函数 u i n t 8 m s p i _ s e n d d a t a1 ( u i n t 8d a t a ) 函数功能:向s p i 总线发送数据【字模高位在左】。将待发送数据赋给s p i s p d r , 循环查询( s p i _ s p s r & 0 x s 0 ) ,直至u ( s p i _ s p s r & 0 x 8 0 ) 一1 才会将数据发送完毕。 输入参数:d a t a待发送的数。 ( 3 ) 4 1 6 译码器i o 口初始化函数 v o i dd e c o d e p i o _ i n i t ( v o i d ) 函数功能:4 1 6 译码器i o 口初始化。 ( 4 ) 逐行扫描函数 v o i dc h o i c e r o w ( u i n t 8l i n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论