当前位置:文档之家› 基于单片机的自动售货机的系统设计

基于单片机的自动售货机的系统设计

基于单片机的自动售货机的系统设计
基于单片机的自动售货机的系统设计

摘要

本文设计了一种以STC89C52单片机为核心,采用集中控制方式实现了对自动售货机全过程的自动控制。本系统选择3×3矩阵式键盘作为控制按键,实现货物的掉出、退币以及货币数的LCD显示等功能。

关键词:STC89C52,自动售货机,键盘控制,LCD显示

Design of automatic system of vending machine based on

Microcontroller

Abstract

This paper introduces a design of STC89C52 microcontroller as the core, adopts the centralized control method to realize the automatic control of the whole process of automatic vending machine. In this system, 3 * 3 matrix keyboard as the control button, realize the goods out of, the coin and currency number LCD display and other functions.

Keywords:STC89C52, vending machine, keyboard control,LCD display

目录

1绪论 (1)

2 自动售货机系统总体设计方案 (2)

2.1 工作原理 (2)

2.2 项目要求 (3)

2.2.1 硬件设计要求 (3)

2.2.2 软件设计要求 (4)

3 控制系统的硬件电路设计 (5)

3.1 硬件设计概述 (5)

3.2 微控制器 (5)

3.3 货币识别系统 (6)

3.3 LCD显示系统模块 (8)

3.4 提示程序模块 (9)

4 控制系统的软件设计 (10)

4.1软件设计概述 (10)

4.2 主程序 (10)

4.3 键盘程序设计 (12)

4.4 字符型液晶显示模块程序设计 (13)

4.5 提示模块程序设计 (16)

5 结论 (18)

致谢 (19)

参考文献 (20)

附录1 主函数程序 (21)

附录2 TC1602AL显示程序 (24)

附录3 提示程序 (27)

附录4 总原理图 (28)

1 绪论

自动售货机是一种全新的商业零售形式,20世纪70年代自日本和欧美发展起来。它又被称为24小时营业的微型超市。从自动售货机的发展趋势来看,它的出现是由于劳动密集型的产业构造向技术密集型社会转变的产物。大量生产、大量消费以及消费模式和销售环境的变化,要求出现新的流通渠道;而相对的超市、百货购物中心等新的流通渠道的产生,人工费用也不断上升;再加上场地的局限性以及购物的便利性等这些因素的制约,无人自动售货机作为一种必须的机器便应运而生了。

从广义来讲投入硬币、纸币、信用卡等后便可以销售商品的机械,从狭义来讲就是自动销售商品的机械。从供给的条件看,自动售货机可以充分补充人力资源的不足,适应消费环境和消费模式的变化,24小时无人售货的系统可以更省力,运营时需要的资本少、面积小,有吸引人们购买好奇心的自身性能,可以很好地解决人工费用上升的问题等各项优点。此次自动售货机的设计是以单片机为核心的自动化控制装置,它集按键选择技术、单片机技术和显示技术于一体。因此,在商业、生活中得到了广泛的应用。有些自动售货机不仅能够自动识别1元、5角硬币,而且能够自动识别20元、10元、5元纸币,还会自动找零,人机对话的应用性提高使自动售货机在国内外大面积普及成为可能。

随着科技的发展及人们生活水平的提高,自动售货机市场越来越呈现出多元化及个性化的需求。人们通过自动售货机自助购物,这种简单、快捷的方式正逐渐成为市民的一种新的消费时尚,并且满足了人们在当今科技高速发展的现代社会追求高品质生活的需要。自动售货机在城市商业区、写字楼大厅、风景区、车站、码头、繁华街道等公共场所的布设能够美化城市环境,方便群众生活,它已经成为城市各角落的一道亮丽风景线。

自动售货机必将在国内普及,并成为城市现代文明程度的一种象征性标志。本文详细介绍了如何控制、要求进行自动售货机系统的方案设计、硬件选择、软件规划和编写,并重点描述了自动售货机系统的工作原理、系统设计、软件编程的原则和技巧。

2 自动售货机系统总体设计方案

该章节对自动售货机的控制系统进行完整的功能需求分析,并确定总体设计方案,这是完成系统设计的前提。这不仅有助于时间的合理计划和安排,还可以避免因盲目进行设计而达不到要求的情况。

2.1 工作原理

自动售货机是集机、电的独立智能化售货设备,只需顾客进行投币、选货、退币等简单的操作选择,就能够方便快捷地购买到想要的商品。其工作程序如下图2.1

顾客投入钱币

机器记录金额

顾客选取货物

机器送出货物

顾客取出货物

机器计算余额

顾客取出余币

图2.1 自动售货机的工作时序图

自动售货机的工作时序是:

顾客从投币口投入货币,然后通过货币识别器采集数据、识别判断货币的真伪并判别面值,并把信息数据传给主控系统通信,启动售货机的货物选择键和退币按钮,并等待顾客按键选择货物。顾客选择货物后,自动

售货机把货物准确送出领货口,顾客再取走货物。如果售货机内还有顾客未用完的货币,顾客可以选择按下退币按钮进行取零或者继续买商品;如果款额不够但还有余额,顾客依然可以按下退币按钮取零;如果没有余额,售货机将自动调成售货结束。最后系统复零,完成售货。

2.2 项目要求

此次自动售货机设计将满足一下几点要求:主控制系统对货币识别器识别的金额进行记录,根据金额数通过LCD显示器跟踪显示,同时售货机将货物选择权提供用户,用户选择货物后,单片机发出指令将所选商品从储货仓送到取物口。其功能描述:货物种类一共设有8种,这8种物品分别对应着8个不同的按键选择,其中价格不等的物品各3种,1元的有3个可选按键,2元的有3个可选按键,3元的有2个可选按键;自动售货机将顾客投的货币进行金额累加。投了几次货币后,这样机器就会把投入的货币总额数目大小输入中央控制元器件,进行处理。如果累计投入的货币数目多于物品的设定价格,机器能够实现找钱功能,或者顾客可以继续选择货物;如果投入的货币没有达到所选择物品的预设价格时,投入的钱将全部退还。

2.2.1硬件设计要求

控制系统要完成图2-1中的各个环节,应具备中央处理模块(微控制器),键盘输入模块,报警提示模块,数额显示模块、货币识别模块和电机驱动模块等,电机驱动模块是自动售货设计当中比较重要的一块,涉及到送出货物的功能。对于驱动电机是如何设计、如何工作的,在这里将不做进一步的研究。本课题设计主要是要实现自动售货机的投币总数显示、货物选择、出货(用发光二极管替代)以及找零功能。在本次设计中用P2.0~P2.7作为送出货物输出接口,以发光二极管作为出货状态。这就需要控制系统提供如表2.1中所列的外设器件。

表2.1 硬件电路接口列表

外 设 名 称

数 量

用 途

备 注

MDB 货币识别器 1 货币识别、找零 硬币器要符合国际标准MDB 接口 键盘输入 1 输入设备 采用3×3键盘,和1个退币按键 报警提示 1 语音提示 采用语音提示功能

显示模块

1

显示货币金额

采用TC1602的LCD 显示器

这些外设元器件的总体原理框架如图2.2所示

图2.2 硬件系统总体框架图

2.2.2 软件设计要求

控制系统的软件应包括主程序、启动退币系统程序、货币数额显示程序以及提示程序四个部分。参照国内外自动售货机的系统设计实例,结合自身硬件特点,系统要编写的程序需满足以下特点和要求:1、友好的人机交互界面,简易的操作步骤和可靠的销售流程;2、键盘模块能够激活自动售货机的售货系统,同时完成对商品的选择操作以及对货币识别器的退币系统的启动;3、语音提示模块要实现选取货物时金额不足的提示功能。本文第四章将重点讲述软件程序的设计。

MCU STC89C52

语音模块

货币识别模

显示器

提示模块

键盘模块

3 控制系统的硬件电路设计

3.1硬件设计概述

硬件是控制系统的物理载体,硬件设计是整个设计的基础环节。根据对第2.2.1节的硬件设计要求可知,此次控制系统的构成模块应包括:中央处理模块(微控制器),键盘输入模块,语音提示模块,LCD显示模块和MDB货币识别模块。各元器件的选用质量在此次设计中很重要,是否合理直接影响控制系统的设计质量,要以经济适用、稳定可靠为原则进行设计。

3.2 微控制器

微控制器是将微型计算机的主要部分集成在一个芯片上的单芯片微型计算机。微控制器诞生于20世纪70年代中期,经过30多年的发展,其成本越来越低,而性能越来越强大,这使其应用已经无处不在,遍及各个领域。例如电机控制、条码阅读器/扫描器、消费类电子、游戏设备、电话、HV AC、楼宇安全与门禁控制、工业控制与自动化和白色家电(洗衣机、微波炉)等。微控制器主要分为单片机、DSP、ARM等等,其中单片机体积小、使用灵活方便、价格便宜,主要应用于工业控制和智能仪表等领域;DSP芯片具高速运算能力,常用来处理大量数据或数字信号;ARM凭借低功耗、高性能的特点,广泛应用在移动通信和手持设备领域。

综合考虑技术指标、接口需求和经济性等因素,本设计采单片机STC89C52最合理。STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

该单片机具有以下标准功能:8k字节Flash,512字节RAM,32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级

中断结构),全双工串行口。

该单片机的引脚配置如图3.1所示:

图3.1 STC89C52引脚配置图

3.3 货币识别系统

货币识别分别有对硬币和纸币的识别,由此在下文中分别介绍说明:

我国目前发行的1元、5角和1角硬币的金属原材料是为造币而专门使用的特殊合金,因此在它通过投币入口进入由电感和电容组成的特定高频振荡线路所产生的磁场时,金属材质和体积的体积的差别对电感量的影响大小也出现微弱差异,电感量的变化将引起振荡频率的变化,与设定值进行比较,确定某种硬币后,经窄带选频电路将频率信号变为电压信号输出,完成对金属硬币的识别。金属硬币识别器种类繁多,但存币退币机构基本上分为两类:一类是平面是存币,电磁阀退币;另一类是圆筒式存币,步进机退币。当硬币投入后经过识别识别出电信号后,伪币和异物被排出真币按面值由几组分配电磁阀分配到不同存币腔体内备用。当收到退币找零电信号后,通过退币电磁阀或者退币电机拉杆,将存币腔内下部依电信号程序退出,完成自动售货机的退币找零功能。硬件数据采集设备的电源为发光二极光,所发出的光的波长峰值在红外线波段,但不是单光谱,其中

红外光成分达到90%以上,因此,光源辐射光中起主要作用的实际上是红外辐射。实验中对各种纸币的特征的识别也主要是根据纸币的表面特征对红外辐射的敏感。红外辐射是光辐射中的一种类型,它具有普通光辐射的共性。这主要是因为不同的纸币表面特征不同,所以在相同的光辐射下会呈现不同的反映,从而可以用来识别不同的纸币,具体地说,首先,钞票的纸张材料是特定的,所以同一种钞票具有一定程度的共性;其次,钞票表面的图案差异,对于相同面值的钞票而言,其表明的各种图案相同,不同面值的钞票之间表明图案有较大区别,所以,根据所述的光的辐射理论,也可以根据它们对相同光辐射的不同反映来判断起面值归属;再次,钞票流通过程中所造成的不同程度的污损,就会造成钞票表面特征的变化,接受光辐射的特性就是有所变化。因此,光辐射可以反映钞票的新旧程度;另外,相对于伪币的鉴别,因为伪币的纸张一般都无法满足真钞的纸张特性,而且,伪币中某些图案达不到钞票的实际标准,如水印是在造纸过程中通过特征工艺抄制上去的无色图案,而伪钞的水印则是通过一定方式轧印或描绘上去的等等,这都能在钞票对光辐射的接受信息中反映出来。但是光辐射在传输过程中,会受外界环境的影响而产生能量损失。比如经过大气传输时,就会受到大气成分的吸收,而在不同的环境条件下,大气的成分含量有某些程度的变化,因而导致能量损失的程度不同。所以光辐射到钞票介质的传输距离越短,所造成的能量损失的影响就越微小,如果硬件的性能较好,外界的这种影响可以不予考虑。

作为整个货币识别系统的核心部分,纸币控制器必须由一颗功能相对较强的嵌入式微处理器以及一系列外围器件构成。

89C52拥有4个I/O口即P0、P1、P2、P3,它有两个可编程的定时器/计数器,分别称为定时器/计数器0和定时器/计数器1。它们都是16位加法计数结构,分别由TH0和TL0及TH1和TL1两个8位计数器组成。

其主要功能是:处理器通过控制发光二极管发光,当纸币进入时,入口处发光二极光投射过纸币的光强变化,被相应入口处的光电三极管接受到后转换为电信号,传给89C52处理器,经过判断,处理器直接控制;当用户按下退币按钮时,单片机将信号发送到MDB中,再施行退币功能。其中注意的是,当选取货物后,货币器能监测到金额的减少,在退币系统启动时退出相应的金额。

MDB的通信接口是全双工的主从式接口,使用标准的专用6针插头连接,

其中4号接口与P3.0相连,CPU接收到信号并记录金额,5号接口与P3.1相连,CPU通过发送信号控制退币系统的运行。由于货币识别器的核心内容是保密的,可供参考的资料较少,因此本系统中的MDB的使用仅限1元的投币、退币方式,同时下一章的软件设计中不做详细的介绍。MDB接口电路设计如图3.2所示。

图3.2 MDB接口电路图

3.3 LCD显示系统模块

在用户操作自动售货机时,为了让用户(顾客或运营商)更加简便、容易达成交易,本设计选用广州捷胜吉电子科技公司的TC1602AL型液晶显示模块实现此功能。其规格参数如下:外形尺寸:80×36mm;视域尺寸:64.5×13.8mm

点尺寸:宽×高=0.52×0.6mm

本文设计的电路如图3.3所示。

图3.3 液晶模块电路图

表3.1 液晶显示模块接口说明

标 号 功 能 说 明

备 注

Vss 逻辑负电源输入引脚,0V Vdd 逻辑正电源输入引脚,+5V

V 0 LCD 驱动电源输入引脚,大小可调先是对比度 一般接0V

E

读写使能引脚:

高电平有效,下降沿锁定数据

RS

数据/指令寄存器选择引脚:

RS=“1”:数据D0-D7与数据寄存器通信 RS=“0”:数据D0-D7与指令寄存器通信

R/W 读/写选择引脚: 高电平:读数据 低电平:写数据 若不须读操作功能,该引脚可直接接地

D0~D7

8位数据线引脚

目前,液晶显示模块在国内已经规范化。其引脚接口形式都是标准统一的,只要在指令设置上稍加改动,就可驱动各规格的字符型液晶显示模块,因此使用起来非常方便。关于图3.3中各引脚的功能如表3.1中所描述。

3.4 提示程序模块

提示模块电路图,如图3.4所示。

图3.4 提示模块电路图

1.此次提示电路的功能是当用户投入金额不够并且按下货物选择按键时,短暂发出提示音,会给用户提示作用。 2.参数计算:这是一个报警提示电路它由电阻、三极管、蜂鸣器组成,R4作为保护电阻它的阻值范围:330~1K 。

4 控制系统的软件设计

4.1软件设计概述

C语言是编译型程序设计语言的一种,它兼顾了各种高级语言和汇编语言的特点。使用C语言进行程序设计已经成为单片机软件开发的主流。其有以下优点:

1、C语言具有语法简洁的特点

2 、运算符丰富,夺得我有时后都分不清

3 、数据结构类型丰富

4 、结构化,就是想一小块一小块的程序,这样写起来容易

5 、语法要求不严格,这样的话相对容易一些,但有时喉也不爽,有错的时候不知道语言的语法错了

6 、功能强大,现在诸如nuix这样的操作系统就是用c 语言写的

本设计使用被广泛应用的Keil uVision2 C语言编译器为开发环境,进行了单片机的C语言程序设计。

综合考虑自动售货机的功能需求和硬件设计,软件程序的编写应该包括以下几个内容:主程序;键盘模块程序;液晶显示模块的程序;提示模块程序。

4.2 主程序

在程序层次结构方面,当系统上电之后,应先对其进行相关初始化(如对每种饮料价格的设定和商品原始库存数量的设定等)。然后程序应当进入无限循环,再根据相应的触发条件进入相应的子程序,完成相应的状态下的工作。由于系统在多个状态间跳转切换,所以在程序编写时比较适合应用循环结构实现。自动售货机工作的整个流程图如图4.1所示。

N

N

N

Y

N Y Y

Y N

Y

图4.1自动售货机的流程图

开始 顾客投币

显示货币数 顾客退币? 顾客选货 有货? 金额足够? 顾客取走货物 有零?

顾客退币? 退币 交易结束

主程序将调用其他子程序以达到自动售货机的完整工作。例如,当用户按下按键并顺利取得货物时,主程序将调用TC1602AL显示程序,以达到显示余额的功能,再让用户选择是否继续交易。主程序详见附录。

4.3 键盘程序设计

主程序中将直接对键盘实施控制,当用户在与自动售货机进行交易时,键盘则是重要的人机交互设备,对键盘的识别流程如图4.2。

开始

初始化

按下按键?

去抖动

行扫描

键值计算等待释放N

Y

图4.2 按键识别模块原理图

此次的键盘设计是以3X3矩阵形式,其中前八个按键是货物选择键,第九个键盘是作为退币系统启动按键,当用户按下键盘,程序通过去抖动的方法来解除干扰,再以行扫描的方式来确定所按键盘,并确定键值,最后再等待顾客释放。

4.4 字符型液晶显示模块程序设计

TC1602AL液晶模块的功能相对简单,而控制器的设置也不多,下面就介绍常用的控制驱动特性。

TC1602AL的基本操作分为以下4种,如表3-1所示。

表3-1 TC1602AL的基本操作

类别名称输入输出

状态字的读操作RS=L;RW=H;EP=H DB0-7读出为状态字

数据读出操作RS=H;RW=H;EP=H DB0-7读出为数据

指令写入操作RS=L;RW=L;EP=上升沿无

数据写入操作RS=H;RW=L;EP=上升沿无

TC1602AL指令的描述(其中:L=0,H=1,X=0/1)

1、清显示CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L L L L H 功能:送20H“空代码”到所有的DDRAM中,清楚所有的显示数据,

并将DDRAM地址计算器(AC)清零,光标返回到原始状态,设置I/D=H,AC为自动加一的输入方式。

2、返回CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L L L H X 功能:设DDRAM地址为零,显示回原位,DDRAM内容不变。

3、输入方式设置CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L L L I/D SH 功能:设置光标移动方向并指定整体显示是否移动。

I/D表示地址的修改方式,也是光标的移动方式:

I/D=1:光标由左向右移动且AC自动加一;

I/D=0:光标由右向左移动且AC自动减一。

SH表示是否允许显示画面的滚动方式:

SH=0::禁止滚动;SH=1:允许滚动。

SH=1且I/D=0:显示画面向右移动一个字符。

SH=1且I/D=1:显示画面向左移动一个字符。

4、显示开关控制CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L H D C B 功能:控制整体显示开关(D),光标开关(C)及闪烁开关(B)的开关。

D=1:整体显示开;D=0:整体显示关。

C=1:光标显示开;C=0:光标显示关。

B=1:光标闪烁;B=0:光标不闪烁。

5、光标或整体显示移位位置CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L H S/C R/L X X 功能:移动光标或整体显示,同时不改变DDRAM内容,S/C和R/L置位不同时对应的操作:

00:光标左移;01:光标右移。

10:所有显示左移:11:所有显示右移。

6、功能设置CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L H DL N F X X 功能:设置接口数据位数(DL)、显示行数(N)以及字形(F)。

DL=1:8位数据接口模式,DL=0:4位数据接口模式(DB4-7有效,在这种模式下,传送的方式为先高4位,后低4位)。

N=1:两行显示;N=0:单行显示。

F=1:5×10点阵模式加光标;F=0:5×7点阵模式加光标。

7、设置CGRAM地址CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L H ACG5 ACG4 ACG3 ACG2 ACG1 ACG0 功能:将CGRAM地址送入AC中。设置后MCU对数据的操作是对DDRAM 的读/ 写操作。

8、设置DDRAM地址CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L H ADD6 ADD5 ADD4 ADD3 ADD2 ADD1 ADD0 功能:DDRAM地址送入AC中。

当N=0时,DDRAM地址范围为:80H-FFH;

当N=1时:第一行的DDRAM地址范围为:80H-BFH;

第二行的DDRAM地址范围为:C0H-FFH。

9、读忙状态位(BF)及地址CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L H BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 功能:读最高位(BF)判断内部操作是否正在执行,并读低7位地址计数器的内容。

10、写数据CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

H L D7 D6 D5 D4 D3 D2 D1 D0

功能:写数据到CGRAM或是DDRAM.。

如果写数据到CGRAM,要先执行“设置CGRAM地址”命令;

如果写数据到DDRAM,则要先执行“设置DDRAM地址”命令。

11、读数据CODE:

RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

H L D7 D6 D5 D4 D3 D2 D1 D0

功能:从CGRAM或是DDRAM读出数据。

如果从CGRAM读数据,要先执行“设置CGRAM地址”命令;

如果写数据到DDRAM,则要先执行“设置DDRAM地址”命令。执行读操作后,地址自动加/减1(根据输入方式设置指令)。

TC1602AL显示器在交易过程能起到金额显示作用,对显示器的识别流程如图4.3。显示模块程序详见附录。

初始化

LCD是否忙碌?CPU向LCD送指令显示字符

返回Y

N

图4.3 LCD显示原理图

4.5 提示模块程序设计

本系统的提示模块将实现的功能是:当客户按下选货按键后,如果金额足够,蜂鸣器不工作;如果金额不足,蜂鸣器将工作两秒,以提示余额不足,之后再停止工作。提示模块程序原理如图4.4。提示模块程序详见附录。

初始化

蜂鸣器忙碌?CPU发送信号余额足够?

蜂鸣器工作

返回Y

N Y

N

工作2秒后停止

图4.4 提示模块原理图

基于单片机的自动售货机_毕业设计论文

基于单片机的自动售货机 摘要 自动售货机是自动化技术在人们生活中的重要应用。随着人们生活质量的不断提高,对自动售货机的性能要求越来越高。自动售货机的主要功能是通过人机对话的形式完成自动售货这一过程。 本文设计了一款以INTEL公司出品的80C51单片机为核心的自动售货机,并且着重详细地介绍了自动售货机的整体系统设计方案、硬件选择基础、软件使用方法及技巧。以80C51作为CPU处理单元连接各个功能模块;以4*4矩阵键盘作为输入控制模块对货物进行种类和数量的选择以及模拟货币的投入功能;以LCD1602液晶作为显示模块来显示当前的购物状态以及货币状态;以LED的显示来表示当前选择货物以及出货的状态。通过Protues7.5单片机电路原理图进行连接布线连接各个模块;再用Keil uVision3专业编译软件完成源程序编译和调试,最终进行自动售货机的实验电路仿真来模拟自动售货。结合工作原理、系统设计、软件编译和实验仿真来实现自动售货这一相关功能。 关键词自动售货机,80C51单片机,编译仿真

ABSTRACT The automatically vending machine is provided the the the important applications of the automation technology in people's lives. With the continuous improvement of people's quality of life, the increasingly high performance requirements of vending machines. Vending machines The main function of the form of man-machine dialogue vending this process. The designed a produced by Intel 80C51 microcontroller as the core vending machines, and emphasizes the detailed description of the overall system design of the vending machines, hardware options, software and the use of methods and techniques. As 80C51 CPU processing unit connected to the various functional modules; 4 * 4 matrix keyboard as an input control module of goods, the choice of the type and number of input and analog currency; LCD1602 LCD as the display module to display the current state of shopping as well as currency state; LED display indicates the current selection of goods and shipment status. By the Protues7.5 microcontroller circuit diagram connecting wiring each module; complete source code to compile and debug then the Keil uVision3 professional compiler software, eventually vending machine experiment circuit simulation to simulate the automatic vending. Combined with the working principle, system design, software compiler and experimental simulation to achieve automatic vending related functions. Keywords automatic vending machine, 80C51 MCU, compiled simulation

自动售货机控制系统的设计(最终版)

课程设计任务书 设计题目:饮料自动售货机PLC控制系统设计 学院:机械工程学院 专业:机械测控 班级: 姓名: 组员: 指导老师:

【摘要】 本文介绍了自动售货机的基本原理以及工作流程,然后以一次交易过程为例,把交易过程分为几个程序块,然后分别对程序块进行编程。具体说明了可编程序控制器在自动售货机中的作用。程序涉及到了自动售货机工作的绝大部分过程。利用PLC控制的自动售货机提高了系统的稳定性,保证自动售货机能够长期稳定运行。 关键词:自动售货机;可编程序控制器;梯形图 Abstract:This paper introduces the basic principles of vending machines, as well as workflow, and then to a transaction process as an example, the transaction process is divided into several blo ck, and then the block were programmed. Specify the PLC in the r ole of vending machines. Procedures related to the work of the va st majority of vending machine process. PLC control of the use of vending machines enhance the stability of the system to ensure t hat vending machines capable of long-term stable operation. Key words:Vending machines; PLC; Ladder Diagram 一.PLC的概述 1.1 PLC的产生

自动售货机控制系统的设计(已修)

自动售货机控制系统的设计专业:电子信息工程 班级:10级电信(1)班 学号:12010248815 姓名:李浩

1.1系统描述与控制要求 PLC 控制的自动售货机系统主要有三个可以感受到投币量的传感器,六个按钮开关(分别为启动按钮、停止按钮、退币按钮、汽水选择按钮、花茶选择按钮和咖啡选择按钮)三个指示灯,(分别为汽水指示灯,花茶指示灯和咖啡指示灯),和两个七段数码管。传感器用来接收投币信号,传送投币量的多少;按钮开关分别对系统功能进行控制,当投入的钱币够某一种饮料时,按下这种饮料的选择按钮时才会有饮料送出,有剩余钱币时,还可以通过按下退币按钮来找回剩余钱币;三个指示灯分别用来只是哪种饮料可以选择,只有投币量大于或等于这种饮料的价格时,这种饮料的指示灯才会亮;同时,还有两个七段数码管,用于显示当前剩余的总钱币。具体对自动售货机的控制要求如下: 1.自动售货机有3 个投币孔,分别为1 元、5 元和10 元。 2.售货共有3种饮料供选择,分别为汽水、花茶和咖啡。 3.如投币总额超过销售价格,将可由退币钮找回余额。 4.投币总额或当前值显示在7段数码管上。 5.投币值等于或大于12 元时,汽水指示灯亮,表示只可选择汽水。 6.投币值等于或大于15元时,汽水和花茶指示灯亮,表示可选择汽水和茶。 7.投币值等于或大于20元时,汽水、花茶和咖啡指示灯亮,表示3 种均可选择。 8.按下要饮用的饮料按钮,则相对应的指示灯开始闪烁,3s 后自动停止,表示饮料已经掉出。 9.动作停止后按退币钮,可以退回余额,退回金额如果大于10元,则先退10元再退1 元,如果小于10元则直接退 1 元的。 1.2控制工艺分析 自动售货机的基本功能就是对投入的钱币数进行计算, 然后根据运算结果做出相应的判断,看看哪种商品可以进行购买,哪种商品不能购买,本次课程设计的要求是可识别三种钱币,分别是 1 元,5元,10 元,采用三个按钮进行模拟, 自动售货机共出售3 种货物,其价格分别定为12 元,15元,20元,当投币数大于等于货物价格时,该种货物的指示灯亮,表示可以进行购买,3 种货物分别用3个信号灯进行指示.除此之外,本次设计还涉及了显示,找零等功能的实现, 其中显示部分采用数码管进行显示, PLC的外围接口由两个CD4511 连接两个数码显示管,以显示投币总数和购买后的余额;当按下找零按钮后,数码管显示进行清零。整个系统由三个可以感受到投币量的传感器,六个按钮开关,三个指示灯,和两个七段数码管和两片CD4511组成。

基于51单片机系统设计

基于51单片机的多路温度采集控制系统设计 言: 随着现代信息技术的飞速发展,温度测量控制系统在工业、农业及人们的日常生活中扮演着一个越来越重要的角色,它对人们的生活具有很大的影响,所以温度采集控制系统的设计与研究有十分重要的意义。 本次设计的目的在于学习基于51单片机的多路温度采集控制系统设计的基本流程。本设计采用单片机作为数据处理与控制单元,为了进行数据处理,单片机控制数字温度传感器,把温度信号通过单总线从数字温度传感器传递到单片机上。单片机数据处理之后,发出控制信息改变报警和控制执行模块的状态,同时将当前温度信息发送到LED进行显示。本系统可以实现多路温度信号采集与显示,可以使用按键来设置温度限定值,通过进行温度数据的运算处理,发出控制信号达到控制蜂鸣器和继电器的目的。 我所采用的控制芯片为AT89c51,此芯片功能较为强大,能够满足设计要求。通过对电路的设计,对芯片的外围扩展,来达到对某一车间温度的控制和调节功能。 关键词:温度多路温度采集驱动电路 正文: 1、温度控制器电路设计 本电路由89C51单片机温度传感器、模数转换器ADC0809、窜入并出移位寄存器74LS164、数码管、和LED显示电路等组成。由热敏电阻温度传感器测量环境温度,将其电压值送入ADC0809的IN0通道进行模数转换,转换所得的数字量由数据端D7-D0输出到89C51的P0口,经软件处理后将测量的温度值经单片机的RXD端窜行输出到74LS164,经74LS164 窜并转换后,输出到数码管的7个显示段,用数字形式显示出当前的温度值。89C51的P2.0、P2.1、P2.2分别接入ADC0809通道地址选择端A、B、C,因此ADC0809的IN0通道的地址为F0FFH。输出驱动控制信号由p1.0输出,4个LED为状态指示,其中,LED1为输出驱动指示,LED2为温度正常指示,LED3为高于上限温度指示,LED4为低于下限温度指示。当温度高于上限温度值时,有p1.0输出驱动信号,驱动外设电路工作,同时LED1亮、LED2灭、LED3亮、LED4灭。外设电路工作后,温度下降,当温度降到正常温度后,LED1亮、LED2亮、LED3灭、LED4灭。温度继续下降,当温度降到下限温度值时,p1.0信号停止输出,外设电路停止工作,同时LED1灭、LED2灭、LED3灭、LED4亮。当外设电路停止工作后,温度开始上升,接着进行下一工作周期。 2、温度控制器程序设计 本软件系统有1个主程序,6个子程序组成。6个子程序为定时/计数器0中断服务程序、温度采集及模数转换子程序ADCON、温度计算子程序CALCU、驱动控制子程序DRVCON、十进制转换子程序METRICCON 及数码管显示子程序DISP。 (1)主程序 主程序进行系统初始化操作,主要是进行定时/计数器的初始化。 (2)定时/计数器0中断服务程序 应用定时计数器0中断的目的是进行定时采样,消除数码管温度显示的闪烁现象,用户可以根据实际环境温度变化率进行采样时间调整。每当定时时间到,调用温度采集机模数转换子程序ADCON,得到一个温度样本,并将其转换为数字量,传送给89C51单片机,然后在调用温度计算子程序CALCU,驱动控制子程序DRVCON,十进制转换子程序MERTRICCON,温度数码显示子程序DISP。

自动售货机控制系统设计

综合课程设计报告书 自动售货机控制系统设计 题目: 学院:机械与电气工程学院 专业:电气工程及其自动化 班级:13级2班 姓名:付少官 学号: 指导教师:崔茂齐 教师职称:讲师 2016年6月29日

机械与电气工程学院综合课程设计任务书 专业:电气工程及其自动化班级:2013-2 姓名:付少官 自动售货机控制系统设计 (1) 摘要 (1)

Abstrct (1) 1、绪论 (1) 2、自动售货控制系统设计总体方案 (2) 元器件选择 (2) 开发工具 (2) 3、自动售货控制系统硬件设计 (3) 硬件总体框图 (3) AT89C51单片机模块(介绍本次设计所到的功能) (3) (3) (4) 本次所应用的管脚说明 (4) 单片机驱动模块 (5) 选择按键模块 (5) (6) (6) 系统显示模块 (6) 数码管显示器 (6) 显示器的驱动电路 (7) 出货以及退币模块 (8) 4、自动售货控制系统软件设计 (8) 系统流程图 (8) 元器件计算 (9) 5、系统总电路图及调试仿真 (10) 总电路图 (10) 系统调试 (11) 系统仿真 (11) 总结及致谢 (14) 参考文献 (15) 附录 (16) 附录1、元件清单 (16) 附录2、源程序 (16) 附录3、自动售货机控制系统protel99se原理图 (23)

自动售货机控制系统设计 付少官 摘要本文详细介绍了自动售货机系统的方案设计、硬件选择、软件规划和编写,并重点描述了自动售货机系统的工作原理、系统设计、软件编程的原则和技巧。该系统以单片机AT89C51芯片为核心,采用集中控制方式实现了对自动售货机全过程的自动控制。本系统选择独立式键盘按键作为货物选择端,实现了投币总数的显示功能。此外,系统程序采用keil软件进行程序的编写和编译,该软件具有编程简单、查错方便、阅读容易等特点。汇编语言是程序的基本语言,具有容易理解,便于记忆和使用等特点。 关键词:自动售货机,AT89C51,LCD显示 Abstrct T his paper describes a vending machine system design, hardware selection, software planning and preparation, and describes the focus of the work vending machine system theory, system design, software programming principles and techniques. AT89C51in the system as the core chip, the realization of a centralized control of the vending machine's automatic control the entire process. Choice of the system as a stand-alone keyboard keys to choose the goods side, the realization of the coin shows the total number of features. In addition, the system program using keil software to prepare and compile procedures, the software programming is simple, convenient error checking, easy to read and so on. Assembly language is the basic language program with easy to understand, easy to remember and use and so on. Key words:Vending Machines,AT89C51,LED Display 1、绪论 自动售货机是一种全新的商业零售形式,从自动售货机的发展趋势来看,它的出现是由于劳动密集型的产业构造向技术密集型社会转变的产物。大量生产、大量消费以及消费模式和销售环境的变化,要求出现新的流通渠道;而相对的超市、百货购物中心等新的流通渠道的产生,人工费用也不断上升;再加上场地的局限性以及购物的便利性等这些因素的制约,无人自动售货机作为一种必须的机器便应运而生了。 随着科技的发展及人们生活水平的提高,自动售货机市场越来越呈现出多元化及个性化的需求。人们通过自动售货机自助购物,这种简单、快捷的方式正逐渐成为市民的一种新的消费时尚,并且满足了人们在当今科技高速发展的现代社会追求高品质生活的需要。自动售货机在城市商业区、写字楼大厅、风景区、车站、码头、繁华街道等公共场所的布设能够美化城市环境,方便群众生活,它已经成为城市各角落的一道亮丽风景线。 自动售货机必将在国内普及,并成为城市现代文明程度的一种象征性标志。本文详细介绍了如何控制、要求进行自动售货机系统的方案设计、硬件选择、软件规划和编写,并重点描述了自动售货机系统的工作原理、系统设计、软件编程的原则和技巧。

单片机课程设计—自动售货机

中南大学 《微控制器应用系统综合设计》课程设计报告 设计题目 指导老师 设计者 专业班级 设计日期

目录

第一章微控制器应用系统综合课程设计的目的意义 (1) 1.1 设计目的 (1) 1.2课程在教学计划中的地位和作用 (1) 第二章自动售货机设计任务 (3) 2.1 设计内容及要求 (3) 2.2 课程设计的要求 (3) 2.2.1 控制要求 (3) 2.2.2 设计要求 (3) 第三章系统的硬件设计与选型 (4) 3.1 总体设计思想与选型 (4) 3.2 硬件设计方案 (5) 3.3 硬件设计概要 (5) 3.4 硬件设计系统原理图 (6) 3.5 选型芯片及其各自功能说明 (7) 3.5.1 89C51的引脚与功能简介 (7) 3.5.2 8155的引脚与功能简介 (10) 第四章软件设计 (15) 4.1 软件系统的设计方案概要 (15) 4.2 源程序流程图及其说明 (15) 4.2.1 主程序流程图及其说明 (15) 4.2.2 装货子程序流程图及其说明 (17) 4.2.3 投币子程序流程图及其说明 (17) 4.2.4 货物选择子程序流程图及其说明 (18) 4.2.5 显示子程序流程图及其说明 (19) 4.2.6 中断子程序流程图及其说明 (20) 第六章系统调试及使用说明 (22)

5.1 系统使用说明 (22) 5.2 系统调试 (22) 收获、体会 (24) 附录系统源程序 (25) 参考文献 (35)

第一章微控制器应用系统综合课程设计的目的意义 1.1 课程设计目的 《微控制器应用系统综合设计》是为测控专业《微控制器技术》课程而开设的课程设计教学环节,其目的在于培养学生综合运用理论知识来分析和解决实际问题的能力,是通过设计以微控制器为核心的单片机检测系统,加深学生对微控制器技术的了解,进一步掌握其程序设计与硬件接口技术。 本课程的主要任务是运用所学微控制器技术、微机原理等方面的知识,设计出一台以80C32MCU为核心的单片机数据采集、通讯或测控系统,完成信息的采集、处理、输出及人机接口电路等部分的软、硬件设计。 1.2 课程设计在教学计划中的地位和作用 《微控制器原理及应用》是一门技术性、应用性很强的学科,实验课教学是它的一个极为重要的环节。不论是硬件扩展、接口应用还是编程方法、程序调试,都离不开实验课教学。如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节,学习与应用脱节的局面。任随书本上把单片微机技术介绍得多么重要、多么实用、多么好用,同学们仍然会感到那只是空中楼阁,离自己十分遥远,或者会因此而对它失去兴趣,或者会感到它高深莫测无从下手,这些情况都会令课堂教学的效果大打折扣。 《微控制器原理及应用》课程设计的目的就是让同学们在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高。使学生增进对单片机的感性认识,加深对单片机理论方面的理解。使学生掌握单片机的内部功能模块的应用,如定时器/计数器、

自动售货机PLC系统设计

+ 安徽汽车职业技术学院毕业设计(论文) 学生姓名:王家伟 系部:机电系 专业:机电一体化 班级:14-04班 指导老师;李明

自动售货机的PLC控制系统设计 摘要:本文介绍了自动售货机的基本原理以及工作流程,然后以一次交易过程为例,把交易过程分为几个程序块,然后分别对程序块进行编程。具体说明了可编程序控制器在自动售货机中的作用。程序涉及到了自动售货机工作的绝大部分过程。利用PLC控制的自动售货机提高了系统的稳定性,保证自动售货机能够长期稳定运行。 关键词自动售货机;可编程序控制器;梯形图 Abstract:This paper describes the basic principle of the vending machine and the working process, and then take a transaction process, the transaction process is divided into several block, then respectively for programming block. The concrete expression of the role of programmable controller in the vending machine. Program involves the vending machine work most of the process. Using PLC control of automatic vending machine to improve the stability of the system, and the vending machine to ensure the long-term stable operation. Keywords:The vending machine; Programmable controller; Ladder diagram

单片机系统的设计

单片机系统的设计 The Standardization Office was revised on the afternoon of December 13, 2020

第4章 单片机系统的设计 引言 用V/F 变换器作A/D 转换时,通常由一些硬件电路如振荡器、二分频器、计数器和门电路组成,而由计数器计得的计数值即A/D 转换结果再通过接口电路送入微计算机进行处理,较为复杂和不便,或者采用F/BCD 变换电路将V/F 变换器输出的频率信号变为BCD 码再通过接口电路送入微计算机,也较为复杂,而且还要对BCD 码进行变换。这些方法成本都较高。 本设计介绍一种以单片机直接与V/F 变换器接口进行A/D 转换的方法,不须额外的硬件电路,完全利用单片机内部的硬件资源,简单方便,成本最低,大大地提高了V/F 变换器作为A/D 转换电路的可行性。 当前,单片机特别是Intel 公司的MCS-51系列单片机已在智能仪器仪表和过程控制等方面得到广泛应用,大有取代Z80之势,因此A/D 转换电路与单片机的接口方法也是人们所关注的。下面将主要介绍MCS-51系列的单片机8031为主控器件的硬件电路。 主控器Intel 8031简介 P1.1P1.2P1.3P1.4P1.5P1.6P1.7P3.0P3.1P3.2P3.3 P3.4P3.5P3.6P3.7XTAL 1 XTAL 2 V SS RST/VPD RXD TXD T0 T10INT P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7 P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0 1INT WR RD EA /V P P ALE V CC PSEN 4039383736353433323130292827262524232221 2019181716151413121110 987654321 8031P1.0 图4-1 8031引脚图 8031 cite-feet figure

单片机应用系统设计工程实践报告

2016-2017学年第1学期 单片机应用系统设计/工程实践 (课号:103G06B/D/E) 实验报告 项目名称:基于AT89C51单片机温度报警系统 学号 姓名 班级 学院信息科学与工程学院 完成时间

目录 一、项目功能及要求 (3) 1.1、课程设计的性质和目的 (3) 1.3、项目设计要求 (3) 二、系统方案设计及原理 (3) 2.1、设计主要内容 (3) 2.2 、AT89C51单片机简介 (3) 2.3 、DS18B20简介 (4) 2.4 、数码管显示 (5) 2.5、报警电路 (6) 三、系统结构及硬件实现 (7) 3.1、总电路图 (7) 3.2、单片机控制流程图 (8) 四、软件设计过程 (8) 五、实验结果及分析 (8) 5.1 、Proteus仿真 (8) 5.2 、C程序调试 (9) 六、收获及自我评价 (14) 七、参考文献 (15)

一、项目功能及要求 1.1、课程设计的性质和目的 本温度报警器以AT89C51单片机为控制核心,由一数字温度传感器DS18B20测量被控温度,结合7段LED以及驱动LED的74LS245组合而成。当被测量值超出预设范围则发出警报,且精度高。 利用现代虚拟仿真技术可对设计进行仿真实验,与单片机仿真联系紧密的为proteus仿真,利用keil软件设计单片机控制系统,然后与proteus进行联合调试,可对设计的正确性进行检验。 1.2、课程设计的要求 1、遵循硬件设计模块化。 2、要求程序设计结构化。 3、程序简明易懂,多运用输入输出提示,有出错信息及必要的注释。 4、要求程序结构合理,语句使用得当。 5、适当追求编程技巧和程序运行效率。 1.3、项目设计要求 1、基于AT89C51单片机温度报警系统; 2、设计3个按键分别为:设置按钮、温度加、温度减; 3、DS18B20温度传感器采集温度,并在数码管上显示按键的区别; 二、系统方案设计及原理 2.1、设计主要内容 本设计以AT89C51单片机为核心,从而建立一个控制系统,实现通过3个按键控制温度,以达到设置温度上下限的功能,并在数码管上显示三个数字当前的温度上下限设置值和DS18B20温度采集值的显示(精确到小数点后一位),当温度高于上限或者低于下限蜂鸣器报警。 2.2 、AT89C51单片机简介 AT89C51是一个低功耗,高性能CMOS8位单片机,片内含4kBytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用A TMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及89C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案.AT89C51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器,32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,片内时钟振荡器。 此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。AT89C51单片机的基本结构和外部引脚如下图所示。

基于单片机的自动售货机设计

基于单片机的自动售货机设计 概括介绍了自动售货机的现状,针对电子创新实验室电子元件管理难题提出了一种能够自动管理与售卖电子元件的自动售货机的设计思路!给出了电子 元件自动售货机设计方案。首先研究了电子元件自动售货机的总体设计方案,分析了设计要求,接着设计了售货机的功能模块,最后给出了控制程序的设计方法。经过测试,该程序运行稳定符合设计要求。本文介绍了以AT89C51 单片机为核心的自动售货机的设备控制系统的设计。详细介绍了自动售货机系统的方案设计,硬件选型,软件的工作原理,并着重介绍了原理和技巧,自动售货机的系统设计,软件编程。该系统以AT89C51单片机为核心,采用集中控制方式实现自动售货机的全过程自动控制。使用汇编语言编写系统程序和C语言软件编程和编译,该软件具有编程简单的特点,方便检查错误,易于阅读,所以。汇编语言是一种基本的语言程序,简单易懂,便于记忆和使用等。 关键词:自动售货机;单片机;控制器;显示屏;AT89C51

1 绪论 1.1研究背景 随着经济的发展,传统的固定地点人员销售模式暴露了许多缺点:人力资源需求;所需的服务位置,地理条件;而不是服务时间的最大服务给消费者。自动售货机解决了问题。各种生活、覆盖面广的自动售货,效率高,可以24小时不间断运行,容易和方便的位置,改变网站;全职运作,也可以是兼职(副业业务;)作为广告载体,可以使高外块。投资风险低,高收入。把钱商品添加员工只需要做。如此多的优势,自动售货机在世界上被广泛使用。 智能自动售货机自动控制装置通过单片机为核心,它设置键选择技术,单片机技术和显示技术于一体,具有强大的特点功能,可靠性高,使用方便,维护简单等。因此,已广泛应用于商业和生活中。一些智能自动售货机不仅可以自动识别1元,5毛钱,还可以自动识别20元,10元,5元指出,将自动变化,应用人机对话来提高自动售货机在国内大面积推广成为可能。智能自动售货机越来越多的人性化设计将很快占领中国市场 1.2国内外研究现状 (1)发达国家现状 日本:各种自动售货机保有量超过600万台,平均20人一台,世界普及率第一。1990年通过自动售货机实现的销售额即已达到5兆日元(约3000亿人民币)。 美国:总的机器保有量大致和日本相当,2000年通过自动售货机实现的销售额达到250亿美元,其中OCS(Office Coffee Service)的销售额排第六位。 韩国:自动售货机的使用历史要远短于其它发达国家,仅有25 年,但据2001 年的统计,总保有量已超过80万台。在2001年韩国生产的自动售货机中OCS占32.7%,排第一位,咖啡自动售货机占18.1% ,排第三位,仅次于18.6% 的充电自动售货机。瓶罐饮料自动售货机和复合型自动售货机(同机销售瓶罐饮料和热咖啡)都仅占8.6%,并列第四位。 (2)国内现状 保有量约2万台,且品种单一,主要以瓶饮料售货机为主,技术质量还未完全过关,生产和运营成本较高,收益也不高。导致此现状的主要原因是中国有关的自动售货机企业未能有效解决成本,质量,运营等诸多问题。但由于随中国经济的快速发展和社会的巨大进步,自动售货机的实际需求已相当大。

自动售货机控制系统的设计

课程设计题目:自动售货机控制系统的设计 目的与任务: (1)进一步掌握MAX+PLUSⅡ软件的使用方法; (2)会使用VHDL语言设计小型数字电路系统; (3)掌握应用MAX+PLUSⅡ软件设计电路的流程; (4)掌握自动售货机的设计方法; (5)会使用GW48实验系统。 内容和要求: 设计一个简易的自动售货机,它能够完成钱数处理、找零、显示、退币等功能。 (1)用3个键表示3种钱,再用3个键表示3种物品。 (2)用2个数码管显示输入的钱数,再用2个数码管显示所找的钱数,以元为单位。 (3)买东西时,先输入钱,用数码管显示钱数,再按物品键,若输入的钱数大于物品的价格,用数码管显示所找的钱数,并用发光二极管表示购买成功。 (4)若输入的钱数少于物品的价格,用数码管显示退出的钱数,并用发光二极管表示购买失败。

设计内容(原理图以及相关说明、调试过程、结果) 一、系统设计方案 根据系统要求,系统的组成框图如图1所示。 (1) 即可,改变设 (a2)控制模块是这个系统的核心模块,它具有判断按键、计算输入钱数总和、计算找零、控制显示四个作用。它的工作原理是每当时钟上升沿到来时,判断哪个按键按下,若按下的是钱数键,则将钱数保存于中间信号COIN,若下次按下的仍是钱数键,COIN的值则加上相应的值并显示于数码管;当物品键按下时,则将COIN的值与物品价格进行比较,然后控制找零。 (3)由于钱数可能大于9,所以译码显示模块的作用就是将钱数译码后用两个数码管显示,这样方便观察。 根据各个功能模块的功能并进行整合,可得到一个完整的自动售货机系统的整体组装设计原理图,如图2所示。 图2 设计原理图 二、系统主要VHDL源程序 (1)分频器的源程序(外部时钟选用3MHz,实现3万分频)

基于单片机的自动售货机的系统设计

摘要 本文设计了一种以STC89C52单片机为核心,采用集中控制方式实现了对自动售货机全过程的自动控制。本系统选择3×3矩阵式键盘作为控制按键,实现货物的掉出、退币以及货币数的LCD显示等功能。 关键词:STC89C52,自动售货机,键盘控制,LCD显示

Design of automatic system of vending machine based on Microcontroller Abstract This paper introduces a design of STC89C52 microcontroller as the core, adopts the centralized control method to realize the automatic control of the whole process of automatic vending machine. In this system, 3 * 3 matrix keyboard as the control button, realize the goods out of, the coin and currency number LCD display and other functions. Keywords:STC89C52, vending machine, keyboard control,LCD display

目录 1绪论 (1) 2 自动售货机系统总体设计方案 (2) 2.1 工作原理 (2) 2.2 项目要求 (3) 2.2.1 硬件设计要求 (3) 2.2.2 软件设计要求 (4) 3 控制系统的硬件电路设计 (5) 3.1 硬件设计概述 (5) 3.2 微控制器 (5) 3.3 货币识别系统 (6) 3.3 LCD显示系统模块 (8) 3.4 提示程序模块 (9) 4 控制系统的软件设计 (10) 4.1软件设计概述 (10) 4.2 主程序 (10) 4.3 键盘程序设计 (12) 4.4 字符型液晶显示模块程序设计 (13) 4.5 提示模块程序设计 (16) 5 结论 (18) 致谢 (19) 参考文献 (20) 附录1 主函数程序 (21) 附录2 TC1602AL显示程序 (24) 附录3 提示程序 (27) 附录4 总原理图 (28)

基于PLC的自动售货机的设计说明

一、实训题目: 自动售货机控制 实训目的及要求: 1、掌握欧姆龙PLC的指令,具有独立分析和设计程序的能力 2、掌握PLC梯形图的基本设计方法 3、培养分析和解决实际工程问题的能力 4、培养程序设计及调试的能力 5、熟悉传输带控制系统的原理及要求 实训设备:PLC设备器 二、总体方案设计 自动售货机设计中,从控制角度来说可采用继电器控制、单片机控制和可编程控制器控制。 (一)方案论证 1.方案一继电器控制 它的控制思想是以继电器为核心,采用硬接线方式把各种继电器、定时器、接触器及其触点按照一定逻辑关系连接起来组成控制系统,控制相关生产机械工作。例如要通过接触器实现两台电机设备的同步运行,采用继电器控制,其控制系统简图如图1。 SF1 KF 电电 源源 母母 线线 图1 继电器控制系统简图

由图可知它的三条支路是并行工作的,当按下按钮SF1,中间继电器KF得电,KF的两个触点闭合,接触器QA1、QA2同时得电并产生动作,所以其控制逻辑关系为由继电器、接触器硬接线(硬件)方式。 2.方案二单片机控制 它的控制系统是基于芯片级的系统,设计开发一个单片机系统,需要先设计硬件系统,画硬件电路图,制作印刷电路板,购置各种所需的电子元器件,焊接电路板,进行硬件调试,进行抗干扰设计和测试的大量工作;需要使用专门的开发装置和低级编程语言编制控制程序,进行系统联调。 3.方案三可编程控制器控制 它的控制思想是采用可编程的存储器,用来在其部存储逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字式和模拟式的输入和输出,控制各种类型机械的生产过程。PLC是一种工业控制计算机,故它的工作原理是建立在计算机工作原理基础之上,即通过执行反映控制要求的用户程序来实现的,这种方案的控制功能接线图如图2。

单片机最小系统设计

单片机最小系统设计 ?单片机最小系统部分 ●AT89C52的结构特点及引脚特 ●硬件框图 ?键盘部分 ?电源部分 ●固定电源 ●可调电源(5—12V) ?软件编程 ?单片机最小系统部分 ●AT89C52的结构特点及引脚特性: 为40 脚双列直插封装的8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通

信等。 各引脚特性: 1.P0 口 P0 口是一组8 位漏极开路型双向I/O 口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的 2.P1 口 P1 是一个带内部上拉电阻的8 位双向I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑 3.P2 口 P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑 4.P3 口 P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻 5.RST 复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。 6.ALE/PROG 当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC指令才能将ALE 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。 7.PSEN 程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 8.EA/VPP 外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000H—FFFFH),E A 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU 则执行内部程序存储器中的指令。Flash 存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V 编程电压Vpp。

基于单片机的自动售货机逻辑电路设计

基于单片机的自动售货机逻辑电路设计 发表时间:2019-07-05T14:59:32.447Z 来源:《教育学文摘》2019年8月总第308期作者:赵丹[导读] 自动售货机这种新颖的无人零售方式已逐渐被人们所接受和信赖。日照市技师学院山东日照276800 摘要:本文简述了单片机控制的自动售货机系统的设计,本文阐述了系统硬件电路设计、软件程序设计流程图,硬件电路是由键盘电路和显示电路组成,其中键盘电路采用了4*4的矩阵式的键盘与89S51单片机的接口相连构成,通过键盘电路来选择你要购买的物品;显示电路采用了74LS164 和数码管构成的串行口显示电路构成,通过显示电路显示。 关键词:自动售货机键盘显示自动售货机这种新颖的无人零售方式已逐渐被人们所接受和信赖。自动售货机的普及在某种程度上能反映一个国家的经济发展水平,是一个国家繁荣程度的象征。 一、系统设计 1.硬件设计。系统框图包括:控制器键盘电路、复位电路、保护电路、Money键盘输入电路、显示电路(如图1)。 图2:电源电路(2)键盘电路的设计。键盘是按键或开关的有序组合。按照工作原理的不同,键盘可分为编码键盘和非编码键盘。编码键盘是由硬件完成的,非编码键盘是由软件完成的。非编码键盘有独立式键盘和矩阵式(行列式)键盘两种。键盘电路的主要工作步骤如下:①判别键盘上是否有按键按下。②如果有键按下,则应对其进行扫描,判别是哪一个键按下。③去抖动常采用延时程序。④读取闭合按键的特征值(行和列的位置编码)。⑤对特征值进行译码,获得按键的相应顺序号,而后再按各键的实际定义去执行相应的服务程序。⑥应采用双键锁定或N键轮回解决双键同时按下的问题。根据对键盘的了解,本设计所采用的是4*4的矩阵式键盘与89S51的P1口相连,通过扫描键盘来选择自己要购买的物品。(3)显示电路的设计。在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。本设计采用3片74LS164首尾相串,而时钟端则接在一起,这样,当输入8个脉冲时,从单片机RXD端输出的数据就进入到了第一片74LS164中了,而当第二个8个脉冲到来后,这个数据就进入了第二片74LS164,而新的数据则进入了第一片74LS164,这样,当第六个8个脉冲完成后,首次送出的数据被送到了最左面的164中,其他数据依次出现在第一、二、三片74LS164中。 2.软件设计。 (1)系统设计原理:

相关主题
文本预览
相关文档 最新文档