(模式识别与智能系统专业论文)基于arm嵌入式系统的自动售货机控制器研发.pdf_第1页
(模式识别与智能系统专业论文)基于arm嵌入式系统的自动售货机控制器研发.pdf_第2页
(模式识别与智能系统专业论文)基于arm嵌入式系统的自动售货机控制器研发.pdf_第3页
(模式识别与智能系统专业论文)基于arm嵌入式系统的自动售货机控制器研发.pdf_第4页
(模式识别与智能系统专业论文)基于arm嵌入式系统的自动售货机控制器研发.pdf_第5页
已阅读5页,还剩97页未读 继续免费阅读

(模式识别与智能系统专业论文)基于arm嵌入式系统的自动售货机控制器研发.pdf.pdf 免费下载

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

文档简介

t h ed es i g na n di m p l e m e n t a t i o no f v e n d i n gm a c h i n ec o n t r o l l e rb a s e d o na 剐m , ad i s s e r t a t i o ns u b m i t t e dt o s o u m e a s tu n i v e r s 时 f o rt l l ea c a d e m i cd e g r e eo fm a s t e ro fe n g i n e e 血l g b y c a oy u n s u p e i s e db y p r o f e s s o ry eh u a s c h o o lo f a u t o m a t i o n s o u t h e a s tu n i v e r s i t y m a r c h2 0 l o 2 东南大学学位论文独创性声明 , 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。 尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过 的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过的材料。与我 一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 研究生签名: 东南大学学位论文使用授权声明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文的复印 件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质 论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布( 包括 以电子信息形式刊登) 论文的全部内容或中、英文摘要等部分内容。论文的公布( 包括以电 子信息形式刊登) 授权东南大学研究生院办理。 。研究生躲嘣师签名 _ - _ _ _ - _ _ _ 摘要 摘要 自动售货机的诞生和发展,充分地体现了当代科学技术正向着高度的智能 化、网络化方向的发展。作为整个自动售货机系统的核心,主控制系统主要负责 协调各种外部设备的工作,以实现各个外设的功能最大化,完成销售过程。目前, 基于a i 洲7 微处理器的控制器以其突出的优势占据了自动化设计的主要市场, 经常作为科研人员进行控制系统设计时的第一选择。另一方面,自动售货机的控 制器与外部设备之间的通信技术基本成熟,主流的通信协议包括m d b i c p 和 e v a d t s 协议。基于以上两个方面的考虑,本课题在设计时,采用了基于a 蹦7 微处理器的微控制器l p c 2 2 1 4 作为控制核心,遵循m d b i c p 和e v a d t s 协议, 并参考、借鉴了国际上成功的经验和成熟的技术,提出了许多新的设计方案。 论文从科研背景和当前研究现状着手,概括总结了课题研究前进行的一些调 查研究工作,并对课题研究及系统设计过程中所使用的重要技术、重要协议进行 综述。 论文从需求描述入手,在硬件和软件两个方面进行需求分析,明确了课题研 究的具体任务,并且在此基础上分别给出了硬件模块化设计和软件层次化设计方 案。这一总体设计方案的介绍为接下来的具体设计过程做了很好的铺垫。 在介绍完总体设计方案后,论文从器件选型、电路原理设计、印刷电路p c b 板图绘制等方面,详细地描述了硬件电路板的设计过程,制作出以微控制器 l p c 2 2 1 4 为核心,由m d b 通信接口、数据下载接口、电机驱动接口、信号检测 和调理电路、实时时钟、人机界面和信息存储单元等模块组成的自动售货机控制 系统的硬件电路板,并进行了硬件电路调试。 在硬件电路的基础上,进行了软件部分的设计。软件的设计包括三个层次: 1 ) 底层驱动层软件程序的编辑,实现了简单的、基于硬件的功能以及底层硬件 的驱动;2 ) 功能驱动层软件程序的编辑,在底层硬件驱动的基础上,通过调用 相关的函数实现m d b 会话、存储数据下载、温度检测和时间设定读取等功能; 3 ) 应用层软件程序的编辑,根据一个自动售货机在正常工作时的需要,合理地 调用底层驱动层和功能驱动层的相关函数,实现管理员对自动售货机的设置和消 费者从自动货机购买商品的过程。 由于m d b i c p 协议中规定的通信格式和微控制器自身串行接口的通信协议 并不完全一致,所以m d b 通信的实现成为了在这个设计过程中的重点和难点。 问题的解决基于充分地利用了l p c 2 2 1 4 微控制器串行通信中的奇偶校验模式。 经过以上软件和硬件两方面的设计后,本课题的研究成果能够达到相关技术 标准和功能需求,支持自动售货机行业的m d b i c p 和e 、,a d t s 主流协议,销 售模式多样等特点。 在论文的最后对这次的课题研究工作做了总结,并指出了未来本课题研究中 的发展方向。 关键词:自动售货机,l p c 2 2 1 4 ,m d b i c p 多点传输总线协议,e 、,a - d t s 数据 传输标准,1 2 c 实时时钟 i i t h ed e si g na n di m p l e m e n 仉气t i o no fv e n d i n g 队c h i n ec o n t r o l l e r b a s e do na i 之m m 舔缸c 龃d i 妇e :a 旧y u n s u p e n ,i s 叱h l l a s o u t h e 船tu n i v e 瑙i t y a b s t r a c t b e c a u s eo f 廿l ed e v e l o p m a l ti ns c ie :n c e 孤1 dt e d m o l o g 弘m ev c i l d i n gm a c h i n ei s b e l 删n g 珈o r ei n t e l l i 霉:e n t 锄dh l m l a n i z e d 毋l d u a l l ya sai n u l t i 一向【n c t i o n a lm a c e , v 即d i n gm a c h i n ei sm a d eu po fag r e a tm a l l yo fm o d u l 韶i i lo r d e ft or e a l i z et h es a l e p r o c e d 切旧,m ec o n t r o l l e rm u s tw o f k sa sac 0 n m 1 龇l d e ri i lr e a s o n a b l e 觚do p t i m i z e d p r o c e s s 鹪t 0m a k es u r ea l l l o s em o d u l 懿劬嘶o nh a m o i l i o u s l y w l l i c hm a k 髂廿l e c c 旺l t r o l l e r 廿l em o s ti l 】叩o r t 锄tp a r to ff h ew h o l ei n t e l l i 星彤l tm a 出n e a sar e s u l t ,也e d e s i 觋o ft h ec o n t r o l l e ri sm e 锄p h a s i so f “st h e s i s a c c o r d i n gt oo m e r s s u c c e s so n v e n d i n gm a c h i n ea b r o a d ,s o m en e wt h o u 擘虹sa r ei i l 乜o d u c e di l lt l l i st h e s i sa sw e l l a tt l l ev e f yb 铭;i 砌n go ft h i sm e s i s ,l e1 1 i s t o r yo fm ed e v e l o p m e n to fv 锄m n g m a c t l i n e 锨l dc l m e mr e s e a r c _ hs t a t u so nt t l i s 驯b i e c ta l la r o u n dt h ew o r l da r e i n t r o d u c e dt oi n u s 仃a t en l em e 撕n go f 蚰sm e s i s t h e nm 血p r o t o c o l 锄dt e c h n o l o 踽 叭c h 嬲arm 7 - b a s e ds y s t 即1 ,m u l t i d r o pb u s h l t c m a lc o i i l 】m u n i c a t i o np r o t o c o l ( m d b i c pp r o t o c 0 1 ) ,c o n c e m c dt o 坞d e s i 鼬a r ei n 乜0 d u c e d 弱w e l lt 0m a k et l l e 如n o w i i l gd e s c r i p t i o ni i mc :hm o r eu n d e r s t a n d a b l ea 1 1 dd e a r e c 1 1 1 e l l ,a l l a l y s 懿a r em a d ea c c o r d i n gt ot h e 州r e m e m s f 而mt h ed i 饥t s ,f o l l o w i n gt h e 制冷控制系统用于控制机箱的温度,确保商品保存在适宜的环境中; 货币识别模块包括了硬币器、纸币器和读卡器,实现货币的接收以及充 值功能; 商品传输模块完成根据消费者的选择送出相应的商品的工作; 信息检测模块包括三个方面: 检测商品是否被送出; 测量机箱温度; 检测传输系统中电机工作是否正常; 人机交互模块由键盘和液晶显示器构成,主要完成货物的选择和重要信 息的显示; 数据处理模块将系统设置、销售数据等记录在相应的存储器中,方便工 作人员对数据进行下载。 货币识别,是整个自动售货系统正常工作的关键环节,通过货币接收设备与 4 控制器之间的数据交换来实现其功能,例如货币接收、退款、充值等。这里的数 据交换必须严格遵守由n a m a 、e v a 、e v m m a 三个协会共同制定的m d b i c p 协议,以保证系统的兼容性。因此,对m d b i c p 通信功能的实现是本课题研究 的重点,也是难点。 , 为了能让经销商及时地了解市场供求关系,以便做出合理的商业决定,销售 数据的存储和下载也是非常重要的一个部分。数据传输作为外界与自动售货系统 的数据交换过程,必须严格遵守由n a m a 定制的e v a d t s 协议。这里的数据 传送不仅包含了销售情况,更包括了系统的设置情况。这样,经销商不仅能实时 地分析出市场需求,更能通过对比原先的销售策略,进行策略的改动,达到增加 利润的目的。 除了数据的传送,对整个系统的控制以及监测也是十分重要的。例如对电机 组的工作情况的实时监控以及电机的驱动,对机箱温度的测量和控制等。这些都 要求通过控制器的协调来完成,因此不仅要设计出控制或监测的相应的硬件电 路,还要给出相应的驱动程序。 最后,为了能使得自动售货系统可以正常运作,还必须给出应用程序。考虑 到自动售货系统的状态可能有多种,例如销售状态、服务设定状态和数据下载状 态等,因此在设计应用程序的时候要根据不同的状态分别设计,至于状态之间的 切换则参照有限状态自动机模型的特点,通过判定是否满足状态切换的相应的输 入条件来进行。由于自动售货系统的复杂程度较高,所以在进行应用程序编辑的 时候要进行全面地、仔细地分析,才能保证程序的严谨,防止系统运行时出现可 以避免的错误。 1 4 论文章节安排 由于“基于a r m 嵌入式系统的自动售货机控制系统的设计与实现这一课 题的研究不仅包括了最基本的硬件研究的部分,更是包含了系统软件的设计。考 虑到系统的复杂性,以及应用到了多种协议与理论知识,为了在之后能够对设计 过程做更加清晰的描述,所以对本篇论文的章节做如下安排: 第一章作为绪论部分,介绍课题的选题背景、研究意义以及研究现状,并对 研究内容做一个简单明确的描述。 第二章介绍了在研究过程中用到的相关的重要的理论知识,包括控制核心 3 2 位基于a r m 7 的微控制器的信息和有限状态自动机的理论,以及两个重要的 通讯协议- m d b i c p 协议和e v a d t s 协议和设计时所用到的重要芯片的描 述。 。 第三章首先对自动售货机系统需求进行分析,分类到硬件和软件两个部分的 需求,并根据分析结果设计出总体设计方案。 5 1 。1 。1 1 。1 。_ _ 。_ _ _ 。_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 东南大学硕上学位论文 第四章为硬件部分的介绍。在对硬件需求做出陈述和分析后,将功能模块化, 并详细叙述各个模块的设计思路和设计方案,包括控制器的选型,驱动电路的设 计等等。 。 第五章分别从底层驱动、功能驱动和应用软件三个方面介绍了程序的编辑。 在底层驱动方面分模块进行描述,在应用程序部分则是根据有限状态自动机的原 理,按照不同的状态进行介绍。 第六章介绍了对系统测试和验收的成果。 最后一章对这次的课题研究进行了小结,并对今后本课题的继续深入研究前 景进行展望。 6 2 1a r m 7 控制器吲 2 1 1a r m 的体系结构 第二章相关理论知识 a i 蝴是精简指令集计算机( s c ) ,集成了非常典型的r i s c 结构特性,此 外还提供: 每一条数据处理指令都对算术逻辑单元( a l u ) 和移位器控制,以实现 对a l u 和移位器的最大利用。 地址自动增加和自动减少的寻址模式实现了程序循环的优化。 多寄存器装载和存储指令实现最大数据吞吐量。 所有指令的条件执行实现最快速的代码执行。 这些在基本r i s c 结构上增强的性能使得删处理器在高性能、低代码规 模、低功耗和小的硅片尺寸方面取得良好的平衡。 在指令集方面,a r m 公司定义了5 种重要的a r m 指令集体系结构版本 ( v l v 5 ) 。版本l 和版本2 只有2 6 位的寻址空间,从版本3 开始寻址范围扩展 到3 2 位。在版本4 ( v 4 ) 中,不再强制要求与以前的2 6 位体系结构版本兼容, 并且清楚地指明了哪个指令会引起未定义的异常发生,同时添加了: 半字加载存储指令。 字节和半字的加载和符号扩展指令。 在t 变量中,转换到n u m b 状态的指令。 使用用户模式寄存器的新的特权处理器模式。 2 1 2a r m 7 t d m l 删7 ) m i 基于删体系结构v 4 版本,是删通用3 2 位微处理器家 族的成员之一,包含了3 2 位a i 蝴指令集和1 6 位t l l l l m b 指令集。数据可以是8 位字节、1 6 位半字或者3 2 位字。删7 t d m i 处理器通过对速度有严格要求的 控制信号使用流水线,以此来增加处理指令流的速度,支持l i n u ) 【、s y i 】似觚o s 和w i n d o w sc e 等操作系统,具有广泛的应用,尤其是在i n t e n l e t 设备、网络和 调制解调器设备以及移动电话、p d a 等无线设备中。 a r m 7 t d m i 完全支持a l 姒体系结构所支持的7 种处理器模式:用户模式、 快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式。除用户 模式外,其他模式均为特权模式,可以自由地切换处理器模式,但是用户模式不 7 _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - - _ _ _ _ _ 东南大学硕士学位论文 能直接切换到别的模式。 表2 1 处理模式 处理器模式说明备注 羽户( u s r )正常程序t 作模式不能直接切换到其他模式 快中断( f i q )支持高速数据传输及通道处理f m 异常响应时:进入此模式 中断( 姻) 用于通用中断处理 m q 异常响应时,进入此模式 管理( s v c )操作系统保护代码系统复位和软件中断响j 、旺时,进入此模式 中止( a b t ) 用于支持虚拟内存和或存储在删7 t d m i 没有人用处 器保护 未定义( u n d )支持硬件协处理的软件仿真朱定义指令响应时,进入此模式。 系统( s ) r s ) 用于支持操作系统的特权任务与用户类似,但具有可以直接切换到其他模式 等等特权 在调试方面,由于a r m 7 t d m i 处理器的高级调试特性使应用程序、操作系 统和硬件的开发变得更加容易。一个典型的调试系统由调试主机、协议转换器和 调试目标三个部分组成( 如图2 1 ) 。a r m 7 t d m l 支持j t a g 调试,在处理器中 有两个扫描连用于实现调试和e m b e d d e d i c e i 玎编程。 2 1 3l p c 2 2 1 4 a 跚控制器 图2 1 典型的调试系统 l p c 2 2 1 4 是基于一个支持实时仿真和跟踪的3 2 位删7 t d m i s 删c p u 的 微控制器,其特性如下: 3 2 位1 4 4 脚a l t m 7 t d m i s 微控制器。 1 6 l 静态r a m 。 2 5 6 k b 片内f l a s h 程序存储器。1 2 8 位宽度接口,加速器实现高达6 0 m h z 的操作频率。 外部3 2 位总线。 通过外部存储器接口可将存储器配置成4 组,每组的容量高达1 6 m b 。 8 片内b o o t 装载程序实现在系统编程( i s p ) 和在应用中编程( 肿) 。f l 嬲h 编程时间为l m s ,可编程5 1 2 字节,扇区擦除或整片擦除只需4 0 0 m s 。 e m b e d d e d i c e r t 接口使能断点和观察点。当f j 台任务使用片内 r e a l m o n i t o r 软件调试时,中断服务程序可继续执行。 嵌入式跟踪宏单元( e t m ) 支持对执行代码进行无干扰的高速实时跟踪。 8 路1 0 位加转换器,转换时间低至2 4 4 u s 。 2 个3 2 位定时器( 带4 路捕获和4 路比较通道) 、p w m 单元( 6 路输出) 实时时钟和看门狗。 多个串行接口,包括2 个1 6 c 5 5 0 工业标准u 6 唧、高速1 2 c 接口 ( 4 0 0 k b p s ) 和2 个s p i 接口。 通过片内p l l 可实现最大为6 0 m h z 的c p u 操作频率。 向量中断控制器。可配置中断优先级和向量地址。 多达1 1 2 个通用i o 口( 可承受5 v 电压) ,1 2 个独立外部中断引脚( e i n t 和c a p 功能) 。 晶振频率范围为1 3 0 m h z ,若使用p l l 或i s p 功能,则为1 0 2 5 m h z 。 2 个低功耗模式:空闲和掉电。 通过外部中断将处理器从掉电模式中唤醒。 可通过个别使能禁止外部功能来优化功耗。 双电源: c p u 操作电压范围:1 6 5 1 9 5 v ( 1 8 ( 1 + 8 3 ) ) ; i o 操作电压范围:3 0 3 6 v ( 3 3 幸( 1 1 0 ) ) 。 2 2 有限状态自动机 1 9 3 6 年,t u 豳g 定义了一类简单的机器图灵机,是现代计算机最早的 数学模型。有限状态自动机就是在图灵机的模型上加入了一些特定的限制而产生 的【8 1 ,是许多重要类型的硬件和软件的有用模型,包括数字电路的设计和性能检 测软件;典型编译器的“词法分析器;文本搜索的软件;系统的验证软件等【9 】。 有限状态机模型的建立描述了一个系统的多个状态以及状态之间通过不同 的输入进行跳转。有限状态机模型的建立,必须满足以下几个条件: 系统的状态是有限的,用集合q 表示。 系统的输入是有限的,用集合表示。 状态间的跳转指令,6 ( q ,) ,系统根据判断输入值,经跳转指令由当 前状态切换到下一状态。 唯一的初始状态q o 。 结束状态是有限的,用f 表示,并且f c q 。: 。 由此可以看出,有限状态自动机m 是一个五元组,可以表示为: m = ( q ,6 ,q o ,f ) 9 。1 1 。1 1 1 。1 。_ 。_ _ 。_ _ _ _ _ 。_ _ 。1 。_ - 。 东南大学硕上学位论文 图2 2 有限状态自动机状态图 图2 2 更加形象地描述有限状态自动机。由此可见,在设计自动售货机系统 应用程序的时候,考虑到系统的功能复杂性、状态的多样性和有限性,可以借鉴 有限状态自动机模型的原理来进行设计。 2 3 ) b i c p 协议 2 3 1m d b ic p 协议概述 m d b i c p 协议( m u l t i d r o pb u s i n t e m a lc o l l l m 吼i c a t i o np r o t o c 0 1 ) 【1 0 】是欧洲 售货机制造商协会( e 、侏n 噍a ) 、美国自助营销协会( n a m a ) 和欧洲自动售货 协会( e v a ) 共同制定的用于协调自动售货机的主控制器( v m c ) 与多个外设 ( p 甜p h e f a l ) 之间通信的协议f l l 】。 协议中规定,自动售货机的主控制器和外设之间工作在主从模式下。作为 主设备,v m c 可以和多达3 2 个被分配了特殊地址和指令系统的从设备进行通 信,其中包括了硬币器、纸币器和读卡器等。外设根据接收到的来自c 的指 令,向v m c 发送确认( a c k ) 、否定( n a k ) 或相应的数据信息。 2 3 2m d b i c p 通信方式 m d b i c p 通信实际上是工作在9 6 0 0 波特率下的主从式的串行通信方式,所 有外设均为v m c 的从机。一个数据帧由1 l b i t s 组成( 如图2 3 所示) ,依次包括 1 位起始位,8 位数据位,1 位模式位和1 位停止位。其中模式位根据数据传送 的方向不同,定义也有所不同。 ;l 1 0 l s bm s b s t a r t0l23456 7m o d c s t o p 图2 3m d b 数据帧 当数据由v m c 发出,传向外设时:模式位置位表示传送的是地址字节, 被所有外设接收;模式位清零表示传送的是数据字节,只被相应的外设 接收。 当数据由外设发出,传向v m c 时:模式位置位表示发送的是最后一个 字节的数据;模式位清零表示还有数据等待发送。 一个从c 发出的m d b 数据包最多可以传送包括地址帧、数据帧和校验 帧在内的3 6 帧信息。其中地址帧的8 位数据位的高五位用于定义外设的地址, 每一种外设都被赋予特定的、唯一的地址;低3 位包含了外设指令系统中的特定 的指令。因此地址帧应该位于整个数据包的第一帧,最先发送。c 在数据发 出后的5 m s 内应该接收到来自外设的响应信号,a c k 、n a k 或r e t ( 重发信号) , 根据相应信号做出下一步的操作。如果v m c 在5 m s 内没有收到响应信号,将会 重新发送刚才的数据包或新的数据包,直到接收到来自外设的相应信号或达到无 响应时间限制。 外设对c 发出的命令的响应分为4 种: 确认信号( a c k o o h ) 否认信号( n a k f f h ) 重发信号( 刚玎a a h ) 数据包:包括数据信息和校验帧在内的最多3 6 个数据帧。 除了发送a c k 、n a k 或者r e t 响应,每发送一个数据包的时候,都要发 送一个校验帧作为数据包的结束。8 位的校验数据就是当前数据包中所有数据字 节与地址字节的和的低8 位。 2 3 3m d b i c p 协议软件工作规则 目前为止,根据外设的指令系统的不同,同类型的外设可以分为3 个不同的 指令级别。例如,级别3 中的指令只能被同等级别或更高级别的外设识别并执行。 因此,v m c 向外设发出命令之前,必须先发送s e t u p 命令,用于掌握外设的指 令系统的级别,这样才能确保发出去的命令能被外设接收并识别出。在掌握了外 设的指令系统的级别以后,应该每2 5 2 0 0 m s 向每一个外设发送p o l l 指令,实 时掌握外设的最新的动作和状态。 “ : c 与外设之间的整个通讯过程称为“会话( s e s s i o n ) 一,图2 4 列举出 了五种典型的m d b 会话的例子( a d d 木表示地址字节,c h k 表示校验字节) 。 v m c p e 蛐e r a l v m c p 甜p h 啪l v m c p 砸p h e m l ia d d + c h k i a c k a 外设空闲 i a d d 毒c h ka c k l d 觚ad 觚ac h k b 外设有数据需要传送 i a d d d 觚ad a t ac h k i a c k c v m c 有数据传送 a d d d 觚ac h ki 迁 ta c k d 觚ac h k d a t ac h k 朗融 a d d d 觚ac h kn a k d 觚ac h k 暾l v m c p “p h d 涯c 检测到数据校验错误 a d d c h ka d d c h k c h k 重l e v m c 在5 m s 内没有检测到响应 图2 4 五种典型的皿b 会话流程 2 3 4m d b i c p 硬件接口规定 。 订c 输出电压标准: m i n i m u m = 2 0 v d c n o m l a l= 3 4 v d c 2 4 v d c m a x i m 啪= 4 2 5 v d c 1 2 c 发送高电平信号时,最小电流为1 0 0 m a ,当连接超过6 个外设时,每 增加一个外设,最小电流增加1 5 m a ;发送低电平信号时,最大漏电流为1 0 0 u a 。 v m c 接收信号“l 时,最大输入电流为1 5 m a ;接收信号“o ”时,最大输入 电流为l m a 。 2 4e v a - d t s 协议 2 4 1e v a _ d t s 协议概述 由e v a 和n a m a 组织共同建立的e v a d t s 协议【1 2 l 为自动售货机的销售记 录数据的下载提供了统一的准则,规范了数据内容的结构和数据的传输方式。销 售数据的下载为经销商能够及时地了解市场、做出正确的商业规划需求提供了有 力的数据支持。销售管理人员通过数据下载器( d a t ac a r r i e r ,d c ) 将自动售货 机( v 踯d i n gm a c m n ed e v i c c ,v m d ) 中的数据下载并上传给数据中心的计算机。 e v a d t s 协议规定了两种数据传输的标准,d e x 舢c s 标准和d d c m p 标准,目 前被广泛使用的是d e x 似c s 标准。 2 4 2 数据报告 自动售货机和控制用上位机之间通信时所发送的数据报告有两种:监听报告 ( a u d i tr 印矾) ,由存放在d 中的数据所组成,包括了销售统计数据等;结 构报告( c o n f i g u r a t i o nr 印o n ) ,由从上位机发送到v m d 的数据组成。在这次的 课题研究中,只用到了监听报告,所以对其做重点描述。 监听报告是以一连串的a s c i i 码的形式的数据块加上换行标识符( c r l f ) 组成的,每个数据块包含了几个类似的单独的数据单元,并以宰作为数据单 元的分隔符( 图2 5 ) 。图2 5 中数据块名称定义了当前数据块传送数据的内容, 后面的数据单元表示了相应的数据值。数据在传输时采用循环冗余校验( c r c 1 6 校验) 方法产生校验数据,用于产生校验数据的多项式为: g ( 工) :石1 6 + 工1 5 + 工2 + 膏o 。 数据块名称数据单元l 数据单元2 ”善数据单元n c i u l f 图2 5 数据块格式 一个完整的监听报告必须包含表头、传输数据和结尾三个部分组成( 图2 6 ) 。 其中表头由两个数据块组成:d x s 数据块,依次记录了当前自动售货机的编号 ( i d ) 、功能定义( v a ) 、应用的协议版本号、传输命令控制信号等;s t 数据块, 依次记录了数据交换设置起始号,数据交换设置控制信号等。传输数据包含了所 有经销商定义的需要传输的数据。结尾部分由3 个数据块组成:g 8 5 数据块,报 1 。1 。1 。1 。1 。1 。_ _ 。_ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 。_ _ _ _ _ _ _ _ _ _ _ _ _ _ 。 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 。- _ _ _ _ _ _ _ _ _ _ 。 _ _ 。- _ _ 。 。1 。1 东南大学硕士学位论文 告完整性检查;s e 数据块,依次为报告包含的数据块数目和数据传输设置控制 号;d ) ( e 数据块,由两个1 组成。 d x s 枣r s t 7 6 5 4 3 21 幸、丘事o 6 宰l s t 幸0 0 l 霉0 0 0 l ( :b l 幸 c a l g 8 5 幸1 2 3 4 s e 毫5 牛0 0 0 1 d x e 辜l l 2 4 3d e ) ( u c s 通信标准 图2 6 监听报告举例 d e x ,u c s 通信标准在形式上与国际标准化组织( i s o ) 规定的“开放系统 互联参考模型相似,分为物理层,数据链路层,会话层和应用层。 物理层规定了d e x 硬件下载接口必须能够接收并发送r s 一2 3 2 的双极信号 或t t l 单极信号。 数据链路层规定了d e x 仙c s 数据通信必须工作在以9 6 0 0 作为波特率的异 步半双工串行通信模式下。每个字节由8 比特组成,无奇偶校验位,数据字节以 a s c i i 码的形式传输,以c r c l 6 作为校验方式,允许以数据包的形式发送数据, 但是每个数据包只能包含2 4 5 个字节的数据。其中特殊控制字符包括: 0 l hs o ho a hl f1 0 h3 0 h d l e 0 ( a c k 0 ) 0 2 hs t x0 d hc rl o h3 l h d l e l ( a c k l ) 0 3 he t x1 0 hd l e1 0 h3 b h d l e ;( w a c k ) 0 4 he o t1 5 hn a k 0 5 he n q 1 6 hs y n 1 7 hm 会话层通过两次握手( 图2 7 ) 建立了数据传输的通道:第一次握手,由于 数据的下载是由下载器( d c ) 提出数据请求开始的,所以在第一次的握手过程 中,下载器作为主设备,将自己的信息( 包括通信i d ,操作请求,版本号) 发 送给自动售货机的主控制板( v m d ) ;第二次握手,此时自动售货机作为主机, 将自己的信息( 包括对上位机操作请求的响应信号,自身的通信i d 和版本号) 发送给数据下载器。 5 。 1 4 一。-_-_。_-。_-_。_。_。_ 第二二章相关理论知识陈述 第次握手第一次握予 d cv m dd cv m d e n q e n q o l e o d u ! 0 1 d l es o h - d l es o h c o 蚴岫i 嘣i i d _ - i _ - l h s p o n 辩c o d e o i 盯a t i o nr o q u c s t 斗- c o f n m t i n i c a t i d r c “s i o n l c v d - - _ _ t e 删l e v c l d l ee t xc i t c _ - - - - - - i _ d l e 印( c r c d u ! i d l e i 三 e o t 卜屯 图2 7d e x 数据传输通道建立 其中,数据下载器在第一次握手时发送的操作请求有两种情况:“s ,请求 发送结构报告给d ;“r ,请求读取监听报告。在第二次握手时,v 1 d 根据 第一次握手时接收到的操作请求做出响应,若确认操作则回复( o o h ) ,若无法执 行操作,则根据不同的错误类型回复相应的代码。 数据从v m c 传至d c d cv m d 吒n q d l e o 上 卜_ o l e 吼x 卜- d 越ab l o c ki 一卜o iee t bc r c d l e l 工- - , 卜巾l e 娜c _ - d a t ab i o c kn 卜d l e 明( c r c d u ! o ,l l 卜- e a r 图2 8d e x 第三次握手 在数据传输通道建立以后,真正的数据传输才开始,称作第三次握手( 图 2 8 ) 。事实上,在数据传输的时候,传输过程仍然被认为是会话层的一部分,而 传送的数据内容属于应用层。数据在传输的时候,既可以一个字节一个字节地传 递,也可以以数据包的形式进行传递。当数据以数据包的形式进行传递的时候, 由于每个数据包最多只可包含2 4 5 个字节的数据( 不包括d l e 和c r c ) ,所以 每发送完2 4 3 个字节必须插入特殊字符串“d l ee t bc r c ,表示一个数据包传 递完成,直到接收到来自下载器的确认信号( d l e o 或d l e l ) 后,再以“d l es t x ” 作为下一个数据包的开始。当数据全部发送完成,需向下载器发送“d l e e t xc r c ,等收到确认信号后再发送“e o t 表示数据发送完毕,结束d e x 通信。 2 5a t m l 6 0 2 s f l y b w - 0 2 b 液晶显示芯片n 3 1 字符点阵系列模块是_ 类专门用于显示字母、数字、符号等的点阵型液晶显 示模块。分4 位和8 位数据传输方式,提供5 木7 点阵加光标和5 l o 点阵加光标 的显示模式。通过对其内部寄存器的设置来设置显示方式,通过设置显示位置和 显示内容的方式来显示字符。主要工作时序如图2 9 描述,工作参数为: 逻辑工作电压:+ 4 5 十5 5 v 1 5 l c d 驱动电压:+ 3 0 计1 0 0 v 洋 一 _ j 寸 一 一 t -l t -ll 拄匹1 。f一 1 耋, 曹 x 叫dh t i 写时序 图2 9 液晶显示模块读写时序图 读时序 相关控制寄存器主要包括: 清显示 r s咖 d b 7d b 6 d b 5d b 4 d b 3d b 2d b ld b 0 00o0000ool 光标设置 r s删d b 7d b 6 d b 5 d b 4 d b 3 d b 2d b ld b 0 oooo0o0ol 模式设定 r s删d b 7 d b 6 d b 5 d b 4 d b 3d b 2d b ld b o oooo00o l ds d 置位表示光标按增加地址移动,清零表示光标按减小地址移动;s 置位表 示光标移动,清零表示光标不移动。 显示开关 r s删d b 7 d b 6 d b 5 d b 4 d b 3 d b 2d b ld b 0 0o0oo0ldcb d 置位时开显示,清零时关显示;c 置位时表示开光标显示,清零时表示关 光标显示;b 置位表示开规定显示边界,清零时表示关规定显示边界。 光标显示 r s洲d b 7 d b 6 d b 5d b 4d b 3 d b 2d b ld b o o00ools cr l d b 3 置位时表示移动一个字符;d b l 置位表示向右移动,清零表示向左移 动。 系统设置 r sl v wd b 7 d b 6 d b 5d b 4d b 3 d b 2d b ld b o 00o00d lnf d b 4 置位表示8 b i t s 数据输入,清零表示4 b i t s 数据输入;d b 3 置位表示2 行显示,清零表示1 行显示。 设置显示数据地址寄存器 1 6 。1 。1 。1 。_ _ _ _ 。_ _ _ _ _ - 。_ _ 。_ _ _ _ _ _ _ _ _ _ _ _ _ 。_ _ - 。_ _ _ _ _ _ 。_ _ 。_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ 第二章相关理论知识陈述 r si v wd b 7 d b 6 d b 5d b 4 d b 3 d b 2d b l d b 0 00l 显示地址 写入d d 洲地址,即数据需要显示的位置。由于此液晶显示模块可以显 示2 行1 6 列的字符,所以每行每列对应的d d 洲的地址为 行列 l234567891 0l l1 21 31 41 51 6 l 0 0 o l 0 2 0 3 0 4 0 5 0 6 0 70 8 0 9ab c def 24 04 l4 24 3 4 4 4 54 64 74 84 94 a4 b4 c4 d4 e4 f 读忙标志 r s删 d b 7 d b 6d b 5d b 4d b 3d b 2d b ld b 0 0lb f d b 7 为1 时表示显示模块忙,为o 时表示显示模块可以接收数据。 在液晶显示模块显示之前应该先进行初始化设置,主要包括显示方式设置、 光标设置等。由于显示的是数字、字母或者字符,所以只需要先写入相应的 d d 黜蝴显示地址后,再对显示地址寄存器写入要显示内容的a s c 码即可。 2 6i s l l 2 0 8 时钟芯片 i s l l 2 0 8 是一款由

温馨提示

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

评论

0/150

提交评论