超市存物箱模拟装置超市存物箱模拟装置作者:汤伟单位:南京信息职业技术学院一、设计的任务与要求利用单片机制作超市存物箱模拟装置,模拟的内容包括:用户存物,用户取物,满箱提示,管理员取物,管理员修改密码,存物时用户密码通过数码管输出,存物箱状态指示灯,自动开关箱,有效按键提示音,密码输入提示,密码正确提示,密码错误提示
二、硬件电路设计及原理图1、存物箱模拟装置的面板设计:图(1)面板设计1超市存物箱模拟装置2、电路原理图如下:图(2)超市存物箱模拟装置原理图如图(2)所示:P0
7用于接4×4矩阵键盘;P1口作为四位数码管的数据端口,P3
3分别作为四位数码管的位选;P2
7作为存物箱是否存物的状态指示;P3
4接绿色的LED,提示“请输入密码”;P3
5接红色的LED,提示“密码错误”;P3
6接蜂鸣器作为按键提示音的输出
该模拟装置的输入量均来自4×4矩阵键盘,由程序对相应管脚进行查询并处理,运行结果通过其它管脚以不同的方式输出给用户
程序处理过程以下将详细介绍
2超市存物箱模拟装置三、存物箱程序流程图及实施细则1、主程序(START):40H单元的8个二进制位对应8个存物箱的存物状态,若某位为0,则说明此位对应的存物箱已存物,反之则为空箱
当40H的8个二进制位都为1(即40H的内容为FF)时,此时8个存物箱都为空箱,程序跳过查询“取”键,按此键无提示音
3超市存物箱模拟装置10H、11H两个单元为四位随机密码产生单元,10H每经过1次查询后内容增1,11H在当10H的第5位为1时内容增1,这样是为了增加密码产生的随机性
若没有按键请求,则两个单元记满重新再记,不断循环计数,直至查询到按键请求计数才停止
2、管理员程序(ADMIN):将立即数00H放入R0中作为管理员使用存物箱的确定,因为本装置的程序多处用到“键盘查询”(KEY)程序,如: