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

2018-09-04 14:08冯浩
西部论丛 2018年9期
关键词:液晶显示单片机

摘 要:自动售报机的功能是通过按键和显示等人机对话接口完成自动售报。以STC89C52单片机为自动售报机的核心控制芯片,以STC89C52作为CPU处理单元连接各个功能模块;以4*4矩阵键盘作为输入控制模块对报刊的种类和数量的选择以及模拟货币的投入功能;以LCD1602液晶显示作为显示模块来显示购物状态以及货币状态;以LED的显示当前选择报刊以及出货的状态。

关键词:单片机;自动售机;液晶显示

一 绪论

全世界范围内的自动售报机多种多样,使用的方式非常灵活,例如采用联机方式的自动售报机,可以通过网络通讯的方式将机内的库存信息传送各营业厅的中心计算机,可以保证自动售报机中的报纸库存,保持在合理的空间范围内。

二 系统总体设计方案

自动售报机的工作原理是:系统上电后首先进入初始的界面,提示顾客通过按键选择购买的报刊的种类和数量顾客投入钱币个数,当顾客操作完成后,按下确定等待售报机计算所购商品的总价,提示顾客投币。所投的货币通过传感器检测真假后,进行累加计数。如果顾客确认购买系统则跳转到下一界面,如果客户按下取消按键即退出货币返回到主界面,等待顾客继续操作。自动售报机通过计算商品的总价与收到钱的的总价进行对比完成找零。

1.主要器件选型

1、选用51系列单片机的STC89C52作为本设计的主控器可。

2、LCD1602液晶可以显示英文、汉字等信息,可以让用户对正在交易的流程有一个清晰的认识。

3、L298n电机驱动芯片具有4个输出端口,售报机的电机不需要正反转,所以L298n可以同时驱动4个电机。在总电路的负载之下,可以分配IO端口数据,给报纸的选择增添多样性。

2.设计方案确定

自动售报机控制系统是以单片微型计算机为核心的。本设计由单片机最小系统、液晶显示模块、按键采集模块、钱币采集模块、电机控制模块、电源模块等六部分组成。

三 系统硬件电路

设定方案决定后开始设定自动售报机的硬件。根据设定方案,可将自动售报机中的硬件电路分为电源电路、液晶显示电路、按鍵采集电路、电机控制电路、报警灯电路、货币检测电路。

1.电源电路

1、元器件选型。自动售报机的硬件由五个部分需要电源电路提供电源。本设计中采用的是AC220V的交流输入,通过开关电源转成24V的直流输出,通过电源芯片转成对应的5V为系统各个部分模块供电。

2、电源电路。电源供电路,由电源芯片、防反接二管、输入输出滤波电容和续流二极管组成。

2.按键采集电路

键盘是最常用的单片机系统的人机界面,阵列式是通过横向和纵向交叉检测,可以将IO口的使用数量呈指数减少,并且大增加了按键的数量。本系统需要一个确认按键、一个取消按键、一个功能按键和十三个不同种类报刊选择按键。

3.液晶显示电路

单片机可以通过并行方式的接口单片机通过,其中P25,P26,P27分别是RS,R/W和E三个控制位,P0.0-P0.7是8位数据线。三个控制位中,RS=0表示写或读指令,RS=1表示写数据。R/W是读写指令,R/W=1是读,R/W=0是写。E是使能信号,当E端由高电平跳变成低电平时,单片机可以执行对液晶模块的读写操作。

4.电机控制电路

售报机采用3块L298n电机驱动芯片来驱动使报纸掉落的电机,当系统启动后,单片机的I/O口输出控制脉冲,由L298n电机驱动芯片对脉冲信号进行处理,然后输出可以让电机运作的信号。在正常运行的基础上,对单片机上的I/O资源进行划分,在系统的负载能力的允许范围之内,并增加L298n电机驱动芯片的数量,就可以达到控制多台电机运作、停止控制。

5.报警灯电路

报警灯输出采用24v的报警灯,系统设计通过单片机P3.0口驱动三极管的通断控制继电器的线圈的通电和断电完成对继电器触点的常开和常闭的切换,完成直流电机的输出控制。

6.货币识别电路

由于传感器输出是模拟量无法被单片机直接识别,因此这里需要通过一个AD转换器进行数据转换,考虑到转换器转换位数和数据转化的速率会影响到货币识别电路的准确度。考虑以上几点采用ADS7825转换器。

四 系统软件设计

1.主程序设计

主程序设计首先是对各个功能器件进行初始化操作,初始化包括和键盘连接的IO口、液晶显示屏、电机的初始状态进行设置,这样可以保证系统的正常运行。在循环中,首先检测顾客是否投币,然后显示投币的金额。交易结束重新回到检测顾客是否投币操作,检测到客户投币后,程序检测客户选择报刊的类别,并对价格进行计算如果客户投入的金额超过报刊的价格,自动售报机进行出货操作,同时计算是否需要找零操作。如果需要找零操作,通过控制电机的动作将需要找出的零钱推出,结束此次交易。

2. 键盘程序设计

键盘程序是要检测客户输入的按键信息,来判断顾客需的报刊种类。按键是4*4矩阵形式,其中前13个按键是选择报刊选择键,一个键是确认按键、第一个是确认按键、一个是取消按键,一个是功能按键。

3.显示模块程序设计

需要显示客户输入的报刊类别、投入的金额和系统的运行状态信息,采用LCD1602液晶实现系统的显示任务,当调用到显示子程序时,将显示数据先送入显示缓冲区,随后取出要显示的信息个数,单片机的IO口通过数据线将要显示的信息发送到液晶显示屏上。显示一次显示的信息个数减1,直到显示个数减少到0返回到调用子程序处,继续向下执行。

4.提示模块程序设计

本系统的提示模块将实现的功能是:客户按下选货按键后,如果金额足够,LED灯不工作;如果金额不足,LED将工作两秒,以提示余额不足,之后再停止工作。

参考文献:

[1] 张毅刚等.新编MCS-51单片机应用设计.哈尔滨工业大学出版社,2008

[2] 张志良.单片机原理与控制技术.机械工业出版社,2011

[3] 陈涛等.货币识别器的原理与设计.贵州大学电气工程学院,2006年(第35卷)第6期

[4] 王琼.单片机原理及应用.合肥工业大学出版社,2008

[5] 彭保基.Keil C51入门教程.西安交通大学,2005

作者简介:冯浩(1996―),男,汉族,籍贯:山西太原,单位:太原理工大学,研究方向:自动化。

猜你喜欢
液晶显示单片机
一种颜色识别电路的设计
单片机在智能控制中的应用
基于TRIZ理论液晶显示模块开发板的创新设计
简易数字电压表设计
单片机在ATM机中的应用
基于单片机的电子密码锁设计
C8051F020与80C51单片机的异同点
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨
用PIC单片机制作的时间继电器