基于单片机控制的自动售货机系统设计内容摘要:

和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。 其中, 中央处理器 CPU 是整个单片机的核心部件,是 8 位数据宽度的处理器,能处理 8 位二进制数据或代码, CPU 负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 8751 内部有 128 个 8 位用户数据存储单元和 128 个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访 问,而不能用于存放用户数据,所以,用户能使用的 RAM 只有 128 个,可存放读写的数据,运算的中间结果或用户定义的字型表。 图 8751 内部结构 11 MCS51 的引脚说明: 图 8751 引脚图 MCS51 系列单片机中的 803 8051 及 8751 均采用 40Pin 封装的双列直接 DIP 结构,上图是它们的引脚配置, 40 个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根, 8751 共有 4 组 8 位 I/O 口 P0、 P P2 或 P3,用 于对外部 , 4数据的传输。 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。 货币识别系统 货币识别分别有对硬币和纸币的识别,由此在下文中分别介绍说明: 1. 我国目前发行的 1 元、 角和 1 角硬币的金属原材料是为造币而专门使用的特殊合金,因此在它通过投币入口进入由电感和电容组成的特定高频振荡线路所产生的磁场时,金属材质和体积的体积的差别对电感量的影响大小也出现微弱差异,电感量的变化引起振荡频率的变化,与设定值进行比较,确定某种硬币后,经窄带选频电路将频率信号变为电压信号输出,完成对金 属硬币的识别。 金属硬币识别器种类繁多,但存币退币机构基本上分为两类:一类是平面是存币,电磁阀退币;另一类是圆筒式存币,步进机退币。 当硬币投入后经过识别识别出电信号后,伪币和异物被排出真币按面值由几组分配电磁阀分配到不同存币腔体内备用。 当收到退币找零电信号后,通过退币电磁阀或者退币电机拉杆,将存币 12 腔内下部依电信号程序退出,完成自动售货机的退币找零功能。 2. 硬件数据采集设备的电源为发光二极光,所发出的光的波长峰值在红外线波段,但不是单光谱,其中红外光成分达到 90%以上,因此,光源辐射光中起主要作用的实际上是红外 辐射。 实验中对各种纸币的特征的识别也主要是根据纸币的表面特征对红外辐射的敏感。 红外辐射是光辐射中的一种类型,它具有普通光辐射的共性。 这主要是因为不同的纸币表面特征不同,所以在相同的光辐射下会呈现不同的反映,从而可以用来识别不同的纸币,具体地说,首先,钞票的纸张材料是特定的,所以同一种钞票具有一定程度的共性;其次,钞票表面的图案差异,对于相同面值的钞票而言,其表明的各种图案相同,不同面值的钞票之间表明图案有较大区别,所以,根据所述的光的辐射理论,也可以根据它们对相同光辐射的不同反映来判断起面值归属;再次,钞票 流通过程中所造成的不同程度的污 .就会造成钞票表面特征的变化。 因此,光辐射可反映钞票的新旧程度;另外,相对于尾部的鉴别,因为伪币的一般无法 拥有 真钞纸的特性, 而且,伪币中的某些图案达不到钞票的实际标准,如水印是造纸过程中通过特殊工艺抄制上去的无色图案,而伪钞的水印则是通过一定方式轧印或扫描印上去的 ,这都能在钞票对光辐射的接受信息中反映出来。 作为整个货币识别系统的核心部分,纸币控制器必须有一颗功能相对较强的嵌入式 微处理器以及一系列外围器件构成。 在这里选用的是 8751 单片机, 8751 拥有四个 I/O 口即 P0、 P P P3,它有两个可编程的定时器 /计数器,分别称为定时器 /计数器 0 和定时器 /计数器 1。 它们都是 16 位加法计数结构,分别有 TH0 和 TL0 及 TH1 两个 8 位计数器组成。 其主要功能是:处理器通过控制发光二级管发光,当纸币进入时,入口处发光二极管投射过纸币的光变强变化,被相应入口处的光电三极管 接受到后转换成为电信号,传给 8751 处理器,经过判断,处理器直接控制。 货物选择系统 货物选择系统主要通过键盘操作来完成。 键盘是人机交换的装置,价格低廉,使用方便,带单片机应用系统中得到了广泛的应用。 按键按照 接口原理可分为编码键盘和非编码键盘两类,它们的主要区别是识别键符及给出相应键码的方法。 编码键盘主要用硬件来实现对键的识别,非编码键盘主要是由软件来实现 13 键盘的定义与识别。 在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外其它按键都是以开关状态来设置控制功能或输入数据的。 当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能。 出货及显示花钱数系统 由于还要实现显示花钱数这项功能,这样导致 I/O 接口紧张考 虑到 8751自身资源有限,并不能很好的满足系统的要求,明显需要实现并行接口扩展,在本设计中 采用了 8255A 实现扩展并行 I/O 接口功能。 8255A 是一个具有两个 8位( A口和 B口)和两个 4 位( C 口高 /低 4位)并行输出输入端口的接口芯片。 8255A 可作为提供 TTL 电平兼容接口,如打印机、 A/D、 D/A 转换器、键盘以及需要同时两位以上信息工作的一切形式的并行接口,还提供按位控制的功能。 8255A 能适应 CPU 与 I/O 接口之间的多种数据传送控制方式要求,如无条件传送,应答方式传送和中断方式传送。 8255A 使用方 式字控制和位置 /复位控制字因而执行功能很强。 其内部结构如下: 图 8255A 内部结构图 图中 A A0 和 RD、 WR 及组合所实现的端口寻址各种结构功能 14 表 引脚功能 CS RD WR A1 A0 操作 0 1 0 0 0 向 A 口写数据 0 1 0 0 1 向 B 口写数据 0 1 0 1 0 向 C 口写数据 0 1 0 1 1 写控制字 0 0 1 0 0 从 A 口读数据 0 0 1 0 1 从 B 口读数据 0 0 1 1 0 从 C 口读数据 1 X X X X 呈高阻态 0 1 1 X X 呈高阻态 0 0 0 X X 非法操作 8255A 的工作方式有三种,在本设计中只采用了方式 0 方式 0—— 基本的输入 /输出方式 8255A 的 PA、 PB、 PC7~ P3~0 可分别被定义为方式 0输入或方式 0输出。 方式 0输出具有所存功能,输入没有锁存。 方式 0适用于无条件传 输数据设备,双方不需要握手信息,局可以使数据简单的写入或写出。 找钱及显示找钱数系统 本设计中,货币识别器能识别 1元、 2元、 5 元货币。 并能实现货币累加功能。 再通过投币后,将会把产生的信号输入给 8751 的 和 的引脚上,其中 控制货币的累加, 控制货币的有效时间 30 秒。 在经过 8751 处理后,将会在找钱输出端产生与其相对应的信号输出,控制所选钱的掉出,并实现找钱功能。 出错报警系统简介 在本设计中,只有在按键选错的情况下,导致系统无法正常处理,才会出现报警现象。 当出现错误时候 , 8751A 将会控制 8255A 的 PC 端输出信号,再通过光电耦合,在这样来驱动一个扬声器工作,实现报警功能。 15 第三章.自动售货机的系统软件程序设计 自动售货机货币识别系统程序流程图 图 识别货币系统程序流程图 自动售货机货物选择系统的程序流程图 本设计中,分别设置了价格为 1 元、 2 元、 3 元不等的货物,这里只列出 1 元货物处理子程序的流程图: 16 图 按键选择程序流程图 17 18 19 图 1 元钱货物处理子程序流程图 自动售货机出货,显示 花钱数系统流 程图 本设计设置了价格为 1元、 2 元、 3元不等的货物,一共 12件。 再通过按键选择货物后,将会把产生的信号输入给 8255A 的 P1引脚上, 8255 接收信号后,经过处理将会在货物输出端产生与其相对应的信号输出,控制所选货物的掉出。 图 报警功能驱动程序流程图 20 由找钱系统 1 图(图见附录)我们可以看到芯片 8255A 与 8751 的 相连,A0、 A1 分别与 74LS373 的 3Q、 4Q 相连。 当 3Q、 4Q 输出不同组合时,则控制选择了 8255A 的 PA、 PB、 PC 口,当取 10 时对应 PC 口输入输出;由于也受到 的控制,只有当 输出为 0 时,才能选到该芯片 8255A。 最后我们可以计算出 PA、 PB、 PC 及控制口对应的地址分别为 BFF3H、BFF7H、 BFFBH 和 BFFH。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。