毕业论文基于单片机的自动售货机系统设计.docx

上传人:b****9 文档编号:135819 上传时间:2022-10-04 格式:DOCX 页数:48 大小:339.24KB
下载 相关 举报
毕业论文基于单片机的自动售货机系统设计.docx_第1页
第1页 / 共48页
毕业论文基于单片机的自动售货机系统设计.docx_第2页
第2页 / 共48页
毕业论文基于单片机的自动售货机系统设计.docx_第3页
第3页 / 共48页
毕业论文基于单片机的自动售货机系统设计.docx_第4页
第4页 / 共48页
毕业论文基于单片机的自动售货机系统设计.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

毕业论文基于单片机的自动售货机系统设计.docx

《毕业论文基于单片机的自动售货机系统设计.docx》由会员分享,可在线阅读,更多相关《毕业论文基于单片机的自动售货机系统设计.docx(48页珍藏版)》请在冰豆网上搜索。

毕业论文基于单片机的自动售货机系统设计.docx

目录

摘要 2

Aastract 3

一、自动售货机的系统结构 4

1.1自动售货机的总体系统结构 4

1.2自动售货过程的控制子系统简述 5

二、自动售货机的功能介绍 6

2.1此次设计的自动售货机的功能简介 6

2.2实现自动售货机的功能的设计思路 7

三、硬件接口电路 7

3.1中央控制元件简介 8

3.2投币及投币总数LCD显示系统 9

3.2.1投币系统 9

3.2.2货币累加的实现 10

3.2.3LCD显示 10

3.3货物选择系统 14

3.3.1独立式键盘按键的识别 14

3.3.2键盘的编码 14

3.3.3货物选择系统的程序流程图 14

3.4出货系统 24

3.4.1出货功能的描叙 24

3.4.2出货程序流程图 24

3.5找钱系统 25

3.5.1找钱系统的描述 25

3.5.2程序流程图 25

四、设计仿真 26

4.1Proteus简介 26

4.2仿真电路 26

附录 33

参考文献 48

致谢 49

摘要

本文详细介绍了自动售货机系统的方案设计、硬件选择、软件规划和编写,并重点描述了自动售货机系统的工作原理、系统设计、软件编程的原则和技巧。

该系统以单片机AT89C51芯片为核心,采用集中控制方式实现了对自动售货机全过程的自动控

制。

本系统选择独立式键盘按键作为货物选择端,实现了投币总数的显示功能。

此外,系统程序采用keil软件进行程序的编写和编译,该软件具有编程简单、查错方便、阅读容易等特点。

汇编语言是程序的基本语言,具有容易理解,便于记忆和使用等特点。

关键词:

自动售货机,AT89C51,LCD显示

TheVendingMachineDesignBasedOnMCU

Abstrct

Thispaperdescribesavendingmachinesystemdesign,hardwareselection,softwareplanningandpreparation,anddescribesthefocusoftheworkvendingmachinesystemtheory,systemdesign,softwareprogrammingprinciplesandtechniques.AT89C51inthesystemasthecorechip,therealizationofacentralizedcontrolofthevendingmachine'sautomaticcontroltheentireprocess.Choiceofthesystemasastand-alonekeyboardkeystochoosethegoodsside,therealizationofthecoinshowsthetotalnumberoffeatures.Inaddition,thesystemprogramusingkeilsoftwaretoprepareandcompileprocedures,thesoftwareprogrammingissimple,convenienterrorchecking,easytoreadandsoon.Assemblylanguageisthebasiclanguageprogramwitheasytounderstand,easytorememberanduseandsoon.

Keywords:

VendingMachines,AT89C51,LCDDisplay

一、自动售货机的系统结构

1.1自动售货机的总体系统结构

自动售货机是集光、机、电一体化的独立机构,它只需要顾客投币和按购物键选

择即可自动售货及退找零钱,其工作程序如下图 1.1

[1]

售货机的工作原理是:

(1)从投币口送入货币,然后通过传感器采集数据、识别器判断货币的真伪并判别面值。

(2)识别器把信息数据传给通信模块。

(3)通信模块与售货机的主控系统通信,主控系统显示面值,启动售货机的面板键,显示出哪个货道有货,哪个货道已经售完,并等待顾客按键选择商品。

(4)顾客选择商品后,售货机自动把商品送出,等待顾客取走。

(5)显示余额,如果金额足够多,顾客可以选择找币或者继续买商品;如果款额不够,售货机经过延时予以退币。

退币分为两种情况:

一种是由货币识别器完成退纸币,另

一种是由硬币的通信模块完成退硬币。

(6)系统复零,完成售货。

自动售货机的硬件原理构成如下图 2.2所示

综合所述,售货机系统可以分为三部分组成,即自动售货机的控制子系统、通讯子系统、硬币器子系统以及纸币器子系统。

其中控制子系统是本设计研究重点。

1.2自动售货过程的控制子系统简述

控制子系统由以下四个部分组成,分别是预设自动售货机系统、金额累计、可售指示和退币系统、售完检测系统、售出累计及自测功能系统。

1、预设自动售货机系统。

自动售货机售出的同类商品可分为若干品种,其售前设定价格须预先寄存在控制系统内。

售货机的价格设置由按键和存储器组成。

通过按键选择被设价商品的种类及价格,并将价格写入存储器中,该存储器本身具有掉电保护功能,属于软件设置方式。

此外,在简易售货机中,由于出售商品的种类少,价格变化下,使用币种单一,也可以用硬件设置价格,才用拨码开关对应方式,结构简单,操作方便。

2、金额累计、可售指示和退币系统。

控制系统的核心 CPU对识币、退币、无货检验及购货信号进行循环检查,当有识币信号后,将金额数值送入金额累计存储器中进行累计,并通过串行接口使可售指示灯亮,提示购货。

此时可以按下购货按钮,由于CPU检测到有购货信号后,如金额累计器中的数值与预设价格相等,则通过并行扩展接口驱动电磁阀或者微电机驱动出商品,并将金额累计存储器清零,完成一次售货过程,如累计金额大于预设价格时,驱动商品后,相减差额由信号驱动退币,实现退币和找钱功能。

3、售完检测系统。

在自动售货机商品存储存道下方按照有接触行程开关,当存储存道有商品时,压下行程开关,自动售货机正常工作;当商品出售完毕时,行程开关被释放,向CPU发出无货信号,经过检测通过串行扩展接口向相应的售完指示灯发出信号,使机身“售完”指示灯亮,此种商品自动停售,即使投币金额达到该道商品预设价格数值,可售按钮仍然无法启动信号,金额累计存储器也不清零。

4、自动售货机售出累计及自测功能系统。

该机 CPU在每次售出商品后,向售出累计存储器中累计售出数据,通过自动售货机内部的按键可在金额显示窗口中读到累计结果。

此外,在按下自测功能键后,出现自测功能信号,由外部按键操作,可检测

各商品存储道的驱动商品功能。

[2]

二、自动售货机的功能介绍

2.1此次设计的自动售货机的功能简介

基本原理:

货币识别器对所投货币进行识别,根据金额将商品选择权提供用户,用户选择后,控制芯片发出指令将所选择商品从储备料道中送达取物口。

其功能描述:

货物种类一共设有3种,这3种物品分别对应着3个不同的按键选择,其中2

元,3元,4元价格不等的物品各1种;自动售货机能够投币总数 LCD显示功能。

如果累计投入的货币数目超过物品的预设价格,机器能够实现找钱功能;如果投入

的货币没有达到所选择物品的预设价格时,投入的钱将全部退还;在投入一次累加货币后选择物品,如果投入的累加货币数目大大超过所选择物品的预设单个价格时,那么能够实现选择同一个物品购买多个,在本设计中设为可以同时购买 2个或3个物品。

本设计中有一共有7个按键选择,其中3个是货物选择键,有2个是多选键(一

次购买2个或3个货物),还有1个确定键和1个取消键。

如果没有按照预先设计的流程顺序进行按键选择,自动售货机将会自动返回操作前的状态,等待再次正确的按键选择。

自动售货机的原理框图如图1.2所示

2.2实现自动售货机的功能的设计思路

采用单片机89C51作为中央控制元件;用P3.4(XO)口作为识别货币输入端;

P1口作为货物选择选择端(采用独立式键盘做为选择货物端);采用P0口实现掉出货物功能、找零功能;

三、硬件接口电路

图3.0硬件接口电路

如图3.0所示,本次设计的自动售货机系统包括以下几个部分 :

中央控制元件

89C51、投币及投币总数LCD显示系统、货物选择系统、出货系统、找钱系统。

3.1中央控制元件简介

在本次设计中,中央控制元件采用 MCS-51系列单片机中的89C51。

如图3.1所

示.

图3.1 89C51引脚图

1.主要特性:

与MCS-51兼容;4K字节可编程闪烁存储器;寿命:

1000写/擦循环;数据保留时间:

10年;全静态工作:

0Hz-24Hz;三级程序存储器锁定;128*8位内部RAM;32可编程I/O线;两个16位定时器/计数器;5个中断源;可编程串行通道;低功耗的闲置和掉电模式 片内振荡器和时钟电路

2.管脚说明:

VCC:

供电电压。

GND:

接地。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在 FLASH编程和校验时,P1口作为第八位地址接收。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出

4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:

口管脚备选功能

P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3.3/INT1(外部中断1)

P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)

P3口同时

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1