石家庄铁道大学四方学院毕业设计
主程序流程图如图5-1所示。进入主程序后首先进行数码管、定时器的初始化,然后进行矩阵键盘的扫描,判断是否有键按下,如果按下的是储物按键,就调用储物程序[9]。如果按下的是取物按键,就调用取物程序,如果为其他按键则返回重新扫描。
5.1.2 储物程序模块
开始 储物箱空闲检验 否 告警声 有空闲?
输出密码(打印出密码) 打开空闲储物箱 是
返回
图5-2 储物程序流程图
21
保存密码及对应保险箱号码 石家庄铁道大学四方学院毕业设计
储物流程图如图5-2所示。首先判断是否有空余的储物箱,如果没有蜂鸣器发出报警声,如果有打开相应的箱子并由数码管显示出箱号、由打印机打出产生的密码,保存好相应的箱号和密码,其中四位随机密码是由TH0和随机函数rand()相异或后产生的[9]。
5.1.3 取物程序模块
开始 等待密码输入 输入完成? 是 否 否 密码正确? 是 找到相应储物箱 告警声 调用显示程序 打开储物箱 删除密码
返回 图5-3 取物程序流程图
取物流程图如5-3所示。等待密码输入,判断键入的密码是否输入完成如果没有
22
石家庄铁道大学四方学院毕业设计
完成重新判断,如果完成判断密码是否正确,如果不正确蜂鸣器报警如果正确确定相应的箱子并显示箱号打开箱子,然后清除密码程序结束。
5.1.4 矩阵键盘的流程图
是所有行线为0,读入列 线 开始 是 列线全为1? 否 延时10ms再读入列线 状态
是 列线全为1? 否 输出行扫描码,读入列 状态 是 列线为0? 否 确定闭合键位置并输出键代码 修改行扫描码 否 各行扫描完? 是
否 返回 图5-4 矩阵键盘流程图
23
石家庄铁道大学四方学院毕业设计
矩阵键盘的扫描流程图如5-4所示。首先使所有行线为低电平(即为0),然后从输出口读入所有列线的状态,若列线全为高电平则结束;若为低电平,延时10ms再读入列线状态是否全为高电平,若为低电平输出行扫描码,读入列状态;判断列状态是否为低电平,若为低电平则确定闭合键位置结束,若为高电平修改扫描码,判断各行是否扫描完若扫描完结束若没有则重新输入行扫描码。
5.1.5 定时器流程图
图5-5 定时器流程图
开始 定时器初始化 数码管扫描 返回 定时器在单片机里是一个非常重要模块,充分利用定时器可以使系统性能较稳定可靠,在单片机程序设计中,常有键盘扫描,数码显示,蜂鸣器,秒,分,时,在设计各模块程序时,为了使各模模块程序的执行时间可控性,本系统的数码显示,键盘扫描都给定了工作时间平台,这样可以使键盘响应均匀(不会因为主函数程序太多使键盘响应时间不确定性)可以使数码显示亮度均匀,如果用软件廷时实现片选更新的话,可能使各数码明亮程度不一样,本系统利用定定时器用于数码管扫描。
5.1.6 打印机驱动流程图
如图5-6,是打印机整个系统工作的软件流程图。本系统采用的微型热敏打印机的驱动设计主要是通过25针的并口直接和单片机的P1口连接传入数据,当接收到数据时,首先要判断是命令字还是字符数据,如果是命令字,则打印机按照命令动作,如果判断为字符数据,则从字库中提取字符点阵,按行打印、走纸。
24
石家庄铁道大学四方学院毕业设计
送出数据 开始
送打印命令
返回
图5-6 打印机驱动流程图
5.2 系统调试
该系统的软件采用89C52单片机型号,在Keil Vision 4软件开发环境下进行程序的编写和调试的,取物程序的调试,密码生成和比较程序的调试,LED显示的程序的调试,随机密码程序的调试的开机显示界面,打印机程序的调试[10]。以上各个程序调试的成功可用以下几个图表示的现象来做说明,主要流程依次如下图所示:
图5-7 系统开始界面
25
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库毕业设计论文模板 - 图文(8)在线全文阅读。
相关推荐: