版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 西安工业大学北方信息工程学院 本科毕业设计(论文) 题目:RFID储物柜的软件设计 系 别 光电信息系 专 业 光电信息工程专业 班 级 B100105 姓 名 吴 剑 学 号 B10010526 导 师 李党娟 2014年5月6日毕业设计(论文)任务书系别 专业 班级 姓名 学号 (只占一行) 1.毕业设计(论文)题目: RFID自动储物柜软件设计 2. 题目背景和意义:自动储物柜在现实生活中应用广泛,为超市、图书馆、展览馆、酒楼、车站、码头、迪厅、溜冰场、其它娱乐等场所提供短期寄存保管服务,也可以作为工厂、机关、医院及特种行业员工的更衣柜,因此其具有工程意义。传统的自动储物柜采用条形码扫
2、描开箱,它克服了传统的人工寄存所带来的费人力,速度慢,易冒领,不安全等诸多弊端。但是它只适用于超市等来往人群众多的公共场所,而在学校、企业等特殊场所,这种方案就显得繁琐且没有必要。 根据学校、企业等地点的学生、员工都持有ID卡,该项目采用RFID射频技术,实现ID卡刷卡开箱。并根据不同场所的使用特点,可以开发不同的产品,具有成本底,操作简单等特点。 3.设计(论文)的主要内容(理工科含技术指标): 学生主要研究内容:1、完成按键扫描程序的编写与调试; 2、完成12864液晶显示程序的编写与调试; 3、完成EEPROM相关程序编写与调试; 4、完成串口收发程序的编写与调试; 5、按照题目要求完成
3、以上程序的整合与调试 4.设计的基本要求及进度安排(含起始时间、设计地点): 第14周 查阅资料,明确设计任务,提出设计方案,完成开题。 第57周 熟练掌握单片机相关应用并熟悉其开发环境。 第810周 完成各个部分程序的编写与调试。 第1112周 与硬件进行联合调试,并进行进一步完善。 第1315周 撰写论文,准备答辩。 5.毕业设计(论文)的工作量要求: 15000字左右 实验(时数)*或实习(天数): 实验室电路连接及调试30天 图纸(幅面和张数)*: 1张 其他要求: 英文文献翻译不少于3000字 指导教师签名: 年 月 日 学生签名: 年 月 日 系主任审批: 年 月 日说明:1本表一
4、式二份,一份由学生装订入册,一份教师自留。2 带*项可根据学科特点选填。 3 字体:五号,宋体。RFID储物柜的软件设计摘 要近年来,随着生活水平的提高,人们对社会消费的质量和数量的要求以及对社会的服务质量也在逐渐的增加。各种各样的自动储物柜陆续的产生了。它具有使用操作简单、安全可靠、抗干扰性强的特点,能够更好的服务于不同市场的广大群众。本论文主要阐述一种基于单片机储物柜的设计,以STC89C52单片机为核心,RDM6300读卡模块、EM4100ID卡、24C02存储芯片以及12864液晶显示组成。文章主要采用24C02最为存储芯片,12864液晶显示屏为显示界面,利用C语言进行软件的编程,最
5、终实现刷卡开门功能,其次利用单片机中断功能还增加了修改密码、密码开锁、以及绑定卡号等功能,最终实现多功能化的储物柜开门方式。最终通过对硬件和软件的结合调试,系统的性能稳定,反应灵敏,满足设计要求。 关键词:单片机;C语言;中断;LCD液晶显示The Software Design Of RFID LockerAbstractIn recent years, with the improvement of living standards, people's requirements to the quality and quantity of social consumption an
6、d quality of service to society is gradually increased. Automatic lockers various have produced. It has the characteristics of simple operation, safety and reliability, strong anti-interference, can better serve the masses of different market.This paper mainly expounds a kind of design based on MCU
7、lockers, with the core of STC89C52, RDM6300 card reader module, EM4100ID card, 24C02 memory chips and liquid crystal display 12864.This paper mainly uses the 24C02 memory chip, 12864 LCD screen to display interface, the software using C language programming, realize the function of credit card to op
8、en the door, followed by the interruption function also increased the change password, password lock, and the binding number and other functions, lockers open ultimately functional.Finally through the combination of hardware and software debugging, stable performance, the system response is sensitiv
9、e, meet the design requirements.Key Words: MCU; C language ; Interrupt ; LCD liquid crystal displayI 目 录1 绪论1 1.1题目背景和意义11.2国内外相关研究情况1 1.2.1国内研究状况.1 1.2.2国外研究状况.11.3课题研究的主要内容21.4论文的组织结构32 系统的总体方案设计42.1任务分析与实现42.2系统的硬件方案设计42.3系统的软件方案设计53 系统的软件程序设计.7 3.1外部存储AT24C02的程序设计.7 3.1.1 I2 C总线接口.7 3.1.2 89C52单
10、片机的I2C总线时序模拟.10 3.1.3 89C52与AT24C02的接口.10 3.2 LCD12864的程序设计.12 3.2.1 LCD12864显示模式.12 3.2.2 LCD12864与微处理单元的连接.12 3.3自动储物柜的总体程序设计14 3.4主程序的设计163.4.1主程序的初始化设计163.4.2主程序的初始化相关代码173.5子程序的设计193.5.1绑定卡号子程序设计193.5.2修改密码子程序设计22 3.5.3延时子程序的设计.28 3.5.4短暂延时的程序.28 3.5.5 I2C总线的典型信号模拟子程序.28 3.5.6基本操作子程序.29 3.5.7 L
11、CD12864显示子程序.32III 3.6键盘扫描子程序的设计333.6.1键盘扫描程序相关代码34 3.7串口中断服务函数设计35 3.7.1串口中断服务函数相关代码354 系统调试与分析374.1KEIL C51的简介374.2源程序的调试374.3调试故障及原因分析384.4调试结果385 结论与展望395.1结论395.2展望39参考文献40致 谢41毕业设计(论文)知识产权声明42毕业设计(论文)独创性声明43附录44附录一:软件源程序代码44IV第一章 绪论 1 绪论1. 1题目背景和意义近年来,随着生活水平的提高,人们对社会消费的质量和数量的要求以及对社会的服务质量也在逐渐的增
12、加,为了更好的为广大群众服务,在一些商场、影楼等公共场合通常有自动储物柜,来方便顾客朋友们。各种各样的自动储物柜陆续的产生了。它具有使用操作简单、安全可靠、抗干扰性强的特点,能够更好的服务于不同市场的广大群众。自动储物柜可以避免开放式存包带来的不必要的纠纷,又可以节约人员的开支,达到减员增效的目的。射频识别即RFID技术,又称无线射频识别,是一种通信技术电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触。常用的有低频(125k134.2K)、高频(13.56Mhz)、超高频,微波等技术。RFID读写器也分移动式的和固定式的,目前RFID技术应用很广,如:自动储物柜
13、,图书馆,门禁系统,食品安全溯源等。 根据学校、企业等地点的学生、员工都持有ID卡,该项目采用RFID射频技术,实现ID卡刷卡开箱。并根据不同场所的使用特点,可以开发不同的产品,具有成本底,操作简单等特点。1. 2国内外相关研究情况1.2.1国内研究情况2004年姜耀锋1的RFID条形码的更新换代技术,介绍了RFID术相比较条形码技术而言,RFID具有更大的信息存储量,并且语言将取代条形妈技术,这也代表了当时的学术主流观点。 王若琳2在RFID技术及其在我国图书馆领域的应用前景分析文中,概述了RFID在图书馆行业应用所具有的优越性,最后也对我国图书馆RFID技术的应用前景进行了展望。 张颖3无
14、线射频识别技术在图书馆的应用优势一文中总结出大致有以下几点优势:资料可更新、信息读取穿透性强、储存容量大、重复使用、快速扫描,可同时读取数个资料、较强的安全性和抗污染能力。 蔡孟欣4发表的RFID在图书馆应用的可行性研究,文中表示图书馆RFID技术的应用受关注程度越来越多,全方面的分析了图书馆RFID应用的可行性,并以应用RFID的圣弗朗西斯科公共图书馆的为例,论述了图书馆是否引进RFID技54西安工业大学北方信息工程学院毕业设计(论文)术,应该一切从自身的馆情出发综合多方面考虑,进行慎重的决策。吴啼,甘琳5合作的迈向智能化图书馆无线射频识别技术在图书馆的应用和创新,文章从图书馆馆藏文献管理智
15、能化的视角出发,并以深圳图书馆自身的RFID文献智能管理系统的实际应用效果阐述RFID技术在图书馆领域的应用及创新,最终方便读者,为图书馆带来巨大的社会效益。张谦6图书馆应用自动识别技术问题的思考文屮,主要提出了图书馆在引进采用RFID技术时自己的一些观点,这与当时的主流的学术观点不相一致,也论述了图书馆对RFID技术的优势性能的认识存在的一些误区。叶莉7RFID技术在图书馆的应用实例及障碍分析-以武汉图书馆为例一文屮指出在图书馆技术应用方面,对比条形码技术阐述了RFID技术所具有的独特的优势,也对图书馆RFID应用的情况进行了简述,分析了图书馆RFID应用中可能出现的问题。1.2.2国外研究
16、情况 Kern Christian8的图书馆利用RFID实现自动化的过程,文章主要的写作依据是为20多个图书馆RFID技术安装的讲演。Karen Coyle9的图书馆RFID的管理,文中指出图书馆RFID的应用的是较大的项目,要综合考虑各个图书馆的实际馆情、管理模式等因素确保RFID的成功应用。 Lee Tien10在定点跟踪:RFID与图书馆、Molnar和Wagner合作的图书馆RFID的隐私和安全:问题、实践与建构,两篇文章中都阐述了RFID侵犯读者隐私的几种原因。在检索出的文献中,其中Smart Laura在RFID的意义中谈到RFID的投资回报的话题。目前关于这个主题的外文文献不是很
17、多。1.3课题研究的主要内容本次课拟设计一个RFID自动储物柜的软件设计,采用RFID射频技术实现ID卡刷卡开箱功能,本系统主要以STC89C52单片机为核心进行单片机最小系统的电路设计,通过按键来进行选择具体的哪一项功能,采用24C02为寄存器进行信息的存储与对比,最终统过12864液晶显示屏来显示。 软件设计内容:(1)串口中断程序的设计;(2)绑定卡号以及修改程序的设计;(3)12864液晶显示的程序设计;(4)寄存器的读写程序设计等。1.4论文的组织结构第一章:绪论,简述本课题背景意义,相关研究情况,主要研究内容及技术指标。第二章:系统的总体方案设计。 第三章:系统的硬件电路设计。第四
18、章:系统的软件程序设计。第五章:系统调试与分析。第六章:结论与展望。 第二章 系统的总体方案设计 2 系统的总体方案设计2.1任务分析与实现本设计的任务是:以通用MCS-51单片机为处理核心,通过读卡器刷卡将其数据通过串口通信传给单片机通过对按键的扫描进行相对应的功能选择与存放在寄存器当中的数据进行比对判断。其结果通过LCD显示器显示出来。本系统总体设计思路如下:首先,本次课题它主要是建立在单片机最小系统上的,因此单片机最小系统是必不可少的,其次本次课题功能较多需要用到矩阵键盘来进行操作,阅读器读取卡号之后通过串口数据传送给单片机,根据按键的选择进行数据的读取与保存,通过指示灯来显示开门信号,
19、通过蜂鸣器来判断卡号是否正确,正确则蜂鸣器响指示灯亮,否则蜂鸣器一直报警,一切操作按键操作在液晶显示屏幕上显示。要求实现的功能及方法如下:(1)ID卡刷卡开门;(2)ID卡绑定卡号;(3)ID卡修改密码;(4)密码开锁功能;实现:利用软件编程,对数据进行处理,存储并显示。2.2系统的硬件方案设计本系统采用的硬件器材主要包括:RDM6300读卡模块、EM4100 ID卡、STC89C52单片机、24C02存储芯片、12864液晶显示。 本系统主要围绕STC89C52单片机为核心进行一系列的操作,通过读取ID卡号利用串口通信将数据进行解码处理后传送给单片机,通过自己的按键选择,选择绑定卡号、修改密
20、码、ID卡号等功能,最终通过与存储器中的信息进行比对或者存储给予相应的开门信号或者存储信号。 ID卡读取卡号是整个系统的基础部分,包括信号的捕获、放大、转换,液晶的实时显示和单片机外围基本电路的设计,两大主要器件就是读卡器和单片机11。RFID读卡器是一种能阅读电子标签数据的自动识别设备。RFID射频识别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无需人工干扰,可工作于各种恶劣环境。当标签进入磁场后,接受 西安工业大学北方信息工程学院毕业设计(论文)解读器发出射频信号,凭借感应电流所获得的能量发送出存储在芯片中的信息,解读器读取并且解码之后送至单片机进行
21、处理12。单片机是本次设计的核心部件,利用单片机自身的中断功能,实现数据的处理,通过LCD12864来显示内容,AT24C02实现掉电保护。如图2.1为硬件电路系统框图。 图2.1 硬件电路系统框图 本次课题是建立在单片机的基础上外加AT24C02外部存储芯片、LCD12864液晶显示屏幕、EM4100读卡器、矩阵键盘、蜂鸣器、一起开门指示灯,将其结合起来组成的整个电路的设计。一切操作按键操作在液晶显示屏幕上显示。2.3系统的软件方案设计 通过软件控制单片机实现功能是单片机的特点和优点,程序的设计需要考虑其合理性和可读性。通过C语言进行单片机的编程,从而实现信号的读取与显示。数据存入外部存储,
22、液晶显示等都通过软件控制。软件设计包括主程序、延时子程序、中断服务子程序、绑定卡号子程序、修改密码子程序、密码开锁子程序、存储子程序、显示子程序等。中断服务子程序能极大地提高单片机的工作效率和处理问题的灵活性并且具有实时处理功能以及故障处理功能。 绑定卡号子程序是将一张没有识别的卡号通过读取卡号存放在寄存器中,以供下次使用。修改密码子程序是将原密码通过按键操作进行修改,防止密码被盗。密码开锁子程序是不通过ID卡刷卡而通过输入密码进行识别认证达到最终西安工业大学北方信息工程学院毕业设计(论文)目的。 存储子程序是将ID卡号存入外部存储中,以供下次使用。显示子程序是将修改密码以及绑定卡号界面呈现在
23、液晶显示。系统软件总体流程图如图3.14所示。 第三章 系统的软件程序设计 3 系统的软件程序设计 在硬件电路设计完成之后,接下来是本次设计中最核心的软件程序设计。所谓软件设计就是把设计需求变换成软件的具体设计方案(即模块结构)的过程。模块化结构设计是根据要求和硬件设计的结构,将整个系统的功能分成许多小的功能模块,再根据这些小的功能模块进行程序编写的过程。这样的设计方法,使得整个系统的功能和各部分的功能趋于明朗化。当系统出现问题,就可以根据功能设置找出问题的根源,从而更快地解决问题。所以说,在整个设计过程中,软件设计必须与硬件设计紧密地结合在一起。 基于RFID自动储物柜的软件设计包括初始化程
24、序、延时子程序、中断服务子程序、绑定卡号子程序、修改密码程序、LCD显示子程序、AT24C02程序设计等几大部分。由于要实现很多功能,所以采用模块化设计,下面就其主要部分分别加以分析。软件程序源代码如附录二所示。3.1外部存储AT24C02的程序设计3.1.1 I2C总线接口a、I2C总线基础本设计中使用的AT24C02芯片,与单片机之间交换数据使用的是I2C总线。I2C总线是Philips公司推出的一种串行总线,用于连接微控制器及其外设。目前很多接口器件采用了I2C总线接口。如AT24C系列的E2PROM,LED驱动器SAA1064等。I2C总线只有两根双向信号线。一根是数据线SDA,另一根
25、是时钟线SCL。所有连接到I2C总线上器件的数据线都接到SDA线上,各器件的时钟线均接到SCL线上。I2C总线的基本架构如图3.1所示13。 西安工业大学北方信息工程学院毕业设计(论文) 图3.1 I2C总线的基本架构图 I2C总线通过上拉电阻接正电源。当总线空闲时,两根线均为高电平。连到总线上的任一器件输出的低电平,都将使总线的信号变低,即各期间的SDA及SDL都是线“与”关系。每个接到I2C总线上的器件都有唯一的地址。主机与其它器件间的数据传送可以是由主机发送数据到其它器件,这时主机即为发送器。由总线上接收数据的器件则为接收器。在89C52单片机应用系统的串行总线扩展中,经常遇到的是以89
26、C52单片机为主机,其它接口器件为从机的情况。b、I2C总线的特点(1) 采用2线制由于采用2线制,器件引脚少,器件间连接简单,电路板体积减小,可靠性高。(2) 传输速率高标准模式传输速率为100 kbps,快速模式为400 kbps,高速模式为3.4Mbps。(3) 支持主/从和多主两种工作方式多主方式时,要求单片机配备I2C总线接口。标准型89C52单片机没有I2C总线接口,只能工作于单主方式(扩展外围从器件)。c、I2C总线的数据传输 在I2C总线上,每一位数据位的传输都与时钟脉冲相对应。逻辑“0”和 逻辑“1”的信号电平取决于相应的电源电压Vcc(I2C总线可适合于不同的半导体制造工艺
27、,如CMOS、NMOS等各种类型的电路都可以接入总线)。数据传输时,SCL为高电平期间,SDA上的数据必须保持稳定,在SCL为低电平期间,SDA上的电平状态才允许变化。(1) 起始和终止信号I2C总线规定,SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。起始和终止信号如图3.2所示。 图3.2 起始和终止信号 起始信号和终止信号由主机发出。在起始信号发出后,总线就处于被占用的状态;在终止信号发出后,总线就处于空闲状态。从器件检测开始和终止信号。从器件收到一个数据字节后,如果可以马上接受下一个字节,要发出应答信号
28、。若无法立刻接受下一个字节,可将SCL线拉成低电平,使主机处于等待状态,直到准备好接收下一个字节时,再释放SCL线使之为高电平。(2) 字节传送与应答数据传输字节数没有限制。但每个字节必须是8位长度。先传最高位(MSB),每个被传输的字节后面都要跟随应答位(即每一帧共有9位),如图3.3所示。 图3.3 应答时序 如果从器件进行了应答,但在数据传输一段时间后无法继续接收更多的数据时,从器件可以通过对无法接收的第一个数据字节的“非应答”通知主机,主机则应发出终止信号以结束数据的继续传输。当主机接收数据时,它收到最后一个数据字节后,必须向从器件发出一个结束传输的“非应答”信号。然后从器件释放SDA
29、线,以允许主机产生终止信号。(3) 寻址字节 在主机发出起始信号后要在传输1个寻址字节:7位从器件地址,1位传输方向控制位(用“0”表示主机发送数据,“1”表示主机接收数据)。寻址字节的格式如图3.4所示。D7 D6 D5 D4 D3 D2 D1 D0器件地址R/W图3.4 寻址字节的格式 D7-D1位组成丛机的地址。D0位是数据传送方向位。AT24C02器件固定地址的固定部分为1010,器件引脚A2、A1和A0的不同连接可以选择8个同样的器件,本次设计中仅扩展一个器件,所以A2、A1、A0这3条地址线接地,片内256个字节可以由单字节寻址,页面写字节数为814。3.1.2 89C52单片机的
30、I2C总线时序模拟对于没有配置I2C总线接口的单片机,可以利用通用并行I/O口线模拟I2C总线接口的时序。a、I2C总线的典型信号I2C总线的数据传输有严格的时序要求。I2C总线的起始信号、终止信号、发送应答(“0”)及发送非应答(“1”)的时序如图3.5所示。 图3.5 典型信号的时序3.1.3 89C52与AT24C02的接口串行E2PROM的优点是体积小、功耗低、占用I/O口线少,性能价格比高。本设计中采用Atmel公司的AT24C02。AT24C02内含256字节(2K位),擦写次数大于一万次,写入速度小于10 ms。A2、A1和A0正好与芯片的1,2,3引脚对应,本设计仅扩展一个器件
31、,所以这3条地址线接地,数据线SDA接P3.4,时钟线SCL接P3.5,WP为写保护控制端,接地时允许写入15。a、写操作过程对AT24C02写入时,单片机发出初始信号之后在发送的是控制字节,然后释放SDA线并在SCL线上产生第9个时钟信号。被选中的存储器器件在确认是自己的地址后,在SDA线上产生一个应答信号,单片机收到应答后就可以传送数据了。传送数据时,单片机首先发送一个字节的与写入存储单元的首地址,收到正确的应答后,单片机就逐个发送各数据字节,但每发送一个字节后都要等待应答。单片机发出停止信号P后,启动AT24C02的内部写周期,完成数据写入工作(约10ms内结束)。AT24C02片内地址
32、指针在接收到每一个数据字节后自动加1,在芯片的“一次装载字节数”(页面字节数)限度内,只需输入首地址。装载字节数超过芯片的“一次装载字节数”,数据地址将“上卷”,前面的数据将被覆盖。当要写入的数据传送完后,单片机应发出终止信号以结束写入操作。写入n个字节的数据格式如图3.6所示。S 写控制字节A写入首地址AData 1AData nAP 图3.6 写入n个字节的数据格式b、读操作过程对AT24C02读出时,单片机也要发送该器件的控制字节(“伪写”),发送完后释放SDA线并在SCL线上产生第9个时钟信号,被选中的存储器在确认是自己的地址后,在SDA线上产生一个应答信号作为响应。然后,单片机再发送
33、一个字节的要读出器件的存储区的首地址,收到器件的应答后,单片机要重复一次起始信号并发出器件地址和读方向位(“1”),收到器件应答后就可以读出数据字节,每读出一个字节,单片机都要回复应答信号。当最后一个字节数据读完后,单片机应返回以“非应答”(高电平),并发出终止信号以结束读出操作。读出n个字节的数据格式如图3.7所示。S器件地址+0A读出首地址A器件地址+1AData 1AData nP 图3.7 读入n个字节的数据格式3.2 LCD12864的程序设计3.2.1 LCD12864显示模式如图3.8为12864显示方式控制。 图3.8 LCD12864的显示方式控制3.2.2 LCD12864
34、与微处理单元的连接在电路中,LCD12864 与单片微机的接线如图3.9。此时,LCD12864 可通过单片机的P1 口选择控制。由显示器的时序图(图3.10、图3.11) 可知每向显示器写入一个数据/ 指令或读出一个数据/ 状态时,均需给使能端E一个脉冲的下降沿,这时可考虑使用单片机的读/ 写信号的下降沿来驱动16(图3.12、图3.13) 。在本电路中采用单片机的读信号和写信号相与输出的信号接入使能端E 即可完成对显示器的操作。 图3.9 显示模块与微处理单元的连接 图3.10 LCD12864 的读操作 图3.11 LCD12864 的写操作 图3.12 单片机读外部RAM的时序 图3.
35、13单片机写外部RAM的时序3.3自动储物柜的总体程序设计系统主程序流程图,系统开始完成初始化,然后对绑定卡号与修改密码以及密码开锁按键进行扫描,如果它们被长时间按下则进入相应子程序,否则继续判断是否选择ID卡开门按键是否被按下,如果被按下,则将串口中断打开,接收串口数据,接收结束进行相应处理,否则返回继续判断。数据处理以及显示部分即将串口数据接收完成之后,将其转换成八位数据与事先绑定的卡号进行比对,如果与其中一个卡号一致,则给相应的继电器一个开门信号,否则提示卡号错误蜂鸣器报警。主程序流程图如图3.14所示开始循环结束 返回数据处理,与保存信息对比初始化是否绑定ID卡绑定ID卡程序是否是否选
36、择ID卡开柜方式打开串口 读取ID卡号是信息是否正确开柜 返回否是否提示错误之后返回是否选择密码开锁方式密码开锁子程序是否是否修改密码修改密码子程序是否 图 3.14 主程序流程图主程序相关代码:void main(void)Lcd_Init();InitUart();while(1)KeyNum=Get_KeyValue();Welcome();ReadID();LockID();SetPassword();UsePassword(); 3.4主程序的设计3.4.1主程序的初始化设计主程序的初始化流程图如图3.15所示。 图3.15 主程序的初始化流程图3.4.2主程序的初始化相关代码uch
37、ar ID14=0;/ID卡号缓存uchar ID_View16=0;uchar Num=0; /读取ID计数uchar KeyNum=0; /读取按键值uchar LockNum=3; /绑定ID卡uchar Flag=0; /ID卡号输入完毕uchar R_Flag=0; /开始接收标志位uchar Store14=0; /存储缓冲区uchar Turn7; /格式转换缓冲区bit ID_Flag=1; /ID卡号比较标志位uchar G_Num=0; /柜子编号uchar R_Pass6=0;void InitUart(void) /串口初始化TMOD = 0x20; /定时器1设置为8
38、位自动重装模式SCON = 0x40; /串口工作在方式1,8位数据位TH1 = 0xfd; /波特率发生器,波特率为9600TL1 = 0xfd; /重装值REN = 1; /允许串行接收TR1 = 1; /打开波特率发生器ES = 1; /打开串行口中断EA = 1; /打开总中断void Lcd_Init(void) /LCD_PSB = 1; /并口方式 LCD_RST = 0; /液晶复位 Delay(60); LCD_RST = 1; Delay(60); Lcd_Write_Cmd(0x34); /扩充指令操作 Delay(5); Lcd_Write_Cmd(0x30); /基本
39、指令操作 Delay(5); Lcd_Write_Cmd(0x0C); /显示开,关光标 Delay(5);/Lcd_Write_Cmd(0x1c); /Delay(5); Lcd_Write_Cmd(0x01); /清除LCD的显示内容 Delay(20);void Clear_Screen(void) Lcd_Write_Cmd(0x34); /扩充指令操作 Delay(5); Lcd_Write_Cmd(0x30); /基本指令操作 Delay(5); Lcd_Write_Cmd(0x01); /清屏 Delay(5); 3.5子程序的设计3.5.1绑定卡号子程序设计 ID卡刷卡之后通过
40、对按键的扫面选择是否绑定卡号,选择则进入相对应的子程序:首先通过按键选择绑定卡号子功能,系统进行一次清屏,LCD界面会显示绑定“3”或者“4”号柜子的界面,选择完成之后串口中断将打开接受数据,完成之后关闭串口中断,进行ID计数,ID卡号输入完毕之后,完成之后关闭掉电保护将转后之后的十进制数组中的每一位数据存放在存储芯片中,开启24C02掉电写保护,显示绑定成功。 如果绑定的卡超过五张则自动绑定三号柜子,绑定期间可以随时通过按键选择退出,结束绑定操作。绑定卡号流程图如图3.16结束将卡号存入改柜子的指定存储区收到的数据是否正确指定要绑定的柜子数据接收是否完成打开串口,接收数据绑定按键按下否 是否
41、是 图3.16 绑定卡号流程图绑定卡号相关代码:oid LockID(void) /绑定ID卡uchar s;if(KeyNum=13)Clear_Screen();LCD_WriteString(2,1,"请放上您的卡");while(1)if(LockNum=3)LCD_WriteString(3,1,"绑定03号柜子");if(LockNum=4)LCD_WriteString(3,1,"绑定04号柜子");ES=1; /打开串口中断if(Flag=1) /接受ID完成ES=0;Num=0;Flag=0;IDTurn();for
42、(s=0;s<14;s+)Stores=ID_Views;WP=0;WrToROM(Store,LockNum*14,14);WP=1;LCD_WriteString(4,1,"绑定成功");Delay_1ms(5000);LockNum+;if(LockNum>=5)LockNum=3;Num=0;Flag=0;Clear_Screen();break;KeyNum=Get_KeyValue(); /取消if(KeyNum=11)Clear_Screen();Clear();Flag=0;ES=0;break;3.5.2修改密码子程序设计 首先通过按键的选择进入修改密码子程序,清屏后通过键盘的扫描显示相应的柜子进行密码修改,选择完成之后,输入此对应柜子的原密码,通过按键的扫描读取按键值,与对应存储区数据读出比较是否正确,如果正确输入新的密码,关闭掉电写保护将输入的新密码存放在指定的区域当中覆盖原来的密码。开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 下学期教皇的奶牛-课件
- 《证券投资相关》课件
- 《湖泊的水文特征》课件
- 《语文下册《雪》鲁迅》课件
- 七年级英语上册期末复习课件
- 单位管理制度集粹选集人力资源管理
- 单位管理制度汇编大全人力资源管理篇
- 单位管理制度合并汇编【人事管理篇】
- 单位管理制度范文大合集员工管理篇
- 单位管理制度范例汇编人事管理篇
- 2024年人工智能发展引领AI应用创新
- 智能智能化智能眼镜
- 四川省眉山市2023-2024学年高二上学期期末生物试题【含答案解析】
- 中国动画赏析
- 浙江省温州市2023-2024学年八年级上学期道德与法治期末测试(含答案)
- 地方国企重组改制实施方案
- 空压机及气罐故障事故应急救援预案
- 工程建设标准强制性条文清单
- 护理晨查房课件
- 儿童ERCP的应用及技巧课件
- 叙事疗法的实践与麦克持续对话
评论
0/150
提交评论