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

张开发
2026/4/19 19:57:52 15 分钟阅读

分享文章

基于单片机自动售货机系统设计
一、系统功能自动售货机是自动化技术在人们生活中的重要应用。随着人们生活质量的不断提高,对自动售货机的性能要求越来越高。自动售货机的主要功能是通过人机对话的形式完成自动售货这一过程。本文设计了一款以INTEL公司出品的80C51单片机为核心的自动售货机并且着重详细地介绍了自动售货机的整体系统设计方案、硬件选择基础、软件使用方法及技巧。以80C51作为CPU处理单元连接各个功能模块以4*4矩阵键盘作为输入控制模块对货物进行种类和数量的选择以及模拟货币的投入功能以LCD1602液晶作为显示模块来显示当前的购物状态以及货币状态以LED的显示来表示当前选择货物以及出货的状态。通过Protues7.5单片机电路原理图进行连接布线连接各个模块再用Keil uVision3专业编译软件完成源程序编译和调试最终进行自动售货机的实验电路仿真来模拟自动售货。结合工作原理、系统设计、软件编译和实验仿真来实现自动售货这一相关功能。本课题研究的是通过核心单片机80C51控制的自动售货机。涉及到用keil Uvision3来进行C语言程序的编译调试通过protues7.5电路连接来设计系统电路。通过80C51与输入模块、输出显示模块、找零模块、显示模块的连接来系统模拟自动售货这一功能。设计从能根据投入的钱币自动售货的机器。用4*4矩阵键盘来模拟货物种类以及数量的选择再通过键盘其他按键来模拟投币功能。用LCD1602作为输出显示模块通过液晶显示来明确按键的功能以及自动售货机的购货状态等。用LED灯来表示货物的种类。因为货币识别功能是在自动售货机的外部硬件电路方面来加以具体实施的而本设计是模拟自动售货机的功能所以不考虑货币识别的模块设计在这里只作原理介绍。二、总体设计① 本设计以这样的工作流程 开始自动售货机的自动售货过程1)启动系统开始待机2)顾客通过按键选择商品的种类以及数量并确认3)售货机检查是否有足够的货物并通过LCD 提示等待顾客投币4)顾客投入货币售货机自动检测金额是否足够5)金额足够多售货机将推出顾客选择的相应数量的商品若金额不足则直接退还货币6)推出商品售货机转入找零系统退出余币7)系统自动复位完成售货② 系统采用硬件设计思路如图2.31)采用单片机80C51作CPU2)采用P3.5口作为投币的输入端3)采用LCD1602液晶为显示模块4)采用4*4矩阵键盘连接P1口作为货物选择选择端5)采用P0口实现出货、找零功能图2.3 自动售货机系统原理图③ 硬件端口的选择思路1)输入由于本设计模拟输入功能是由4*4矩阵键盘来完成的而键盘连接在80C51的P1口上则货币投入设定为P1口的按键值为0X04的时候代表1元货币的投入P1口的按键值为0X05的时候代表5元货币的投入P1口的按键值为0X06的时候代表10元货币的投入P1口的按键值为0X07的时候代表20元货币的投入P1口的按键值为0X08的时候代表50元货币的投入P1口的按键值为0X09的时候代表100元货币的投入P1口的按键值为0X0f的时候代表购物确定“OK”按钮P1口的按键值为0X0e的时候代表购物取消“NO”按钮本设计假定自动售货机的商品种类为8种价格为1、2、3、4、5、6、7、8元。每一个价格代表一种商品且一经售出就由外部电机自动完成补货。规定每次最多只能购买10个。货物选择P1口的按键值为OX00的时候代表选择货物价格“price”P1口的按键值为OX01的时候代表选择货物价格“price-”P1口的按键值为OX02的时候代表选择货物数量“num”P1口的按键值为OX03的时候代表选择货物价格“num-”2)输出选择商品由P0口控制的相应LED指示灯选择商品1用P0.0控制D1LED灯亮选择商品2用P0.1控制D2LED灯亮选择商品3用P0.2控制D3LED灯亮选择商品4用P0.3控制D4LED灯亮选择商品5用P0.4控制D5LED灯亮选择商品6用P0.5控制D6LED灯亮选择商品7用P0.6控制D7LED灯亮选择商品8用P0.7控制D8LED灯亮3)显示本设计的显示端口由P2端口和P3.2RS、P3.3(RW)、P3.4(E)控制LCD1602液晶来显示购货状态用P0口控制LED灯表示货物种类。通过它可以显示购货的种类、数量、总价以及找零等。三、效果图源码获取下方名片联系我即可大家点赞、收藏、关注、评论啦 、查看获取联系方式

更多文章