




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中北大学 2013 届毕业设计说明书第 1 页 共 36 页 基于 SLE4442 卡的食堂管理系统设计摘要随着中国经济的不断提高,人们生活水平的日渐提升,各单位企业的人数也在不断增加,解决员工就餐问题成了一些企业要解决的首要问题。在电子信息技术和计算机技术高度发达的今天,人们把智能 IC 卡应用到多个领域,当然也进入了食堂,这就为许多企事业单位解决了重要的问题。本此设计的食堂 IC 卡系统利用单片机 AT89S51 完成了充值、扣费报警、复位等功能。显示部分采用 LCD1602 液晶显示器,能够支持符号和数字输出,简单明了。键盘采用 4*4 键盘模块,输入方便。IC 卡采用了西门子公司的 SLE4442 逻辑加密卡。设计结果表明,此系统设计容易,结构简单,造价低廉,维修方便,能够广泛应用于各种单位的食堂中。关键词:AT89S51 单片机,SLE4442 卡,LCD1602中北大学 2013 届毕业设计说明书第 2 页 共 36 页 Design Of The Dining Room Management System Based On SLE4442 CardABSTRACTWith Chinas economy constant improving and the improvement of the living standards of people, increasing the number of many enterprises have also increased, solving this problem has become some more and more important. In the electronic information technology and computer technology is highly developed, people put smart IC card application to many field, of course, also entered the dining room, this is every important for many enterprises to solve the problem.The design of the dining room IC card system using microcomputer AT89S51 completed prepaid money and debits function. Show LCD1602 part adopts LCD monitor, able to support the character and digital output, simple and clear. The keyboard with 4 * 4 keyboard module, the input is convenient. IC card used the Siemens company SLE4442 logic encryption card. The results indicate that the system design, the design of simple structure, easy maintenance, low cost, convenient are widely used in many kinds of unit of the dining room.KEY WORDS: microcomputer, SLE4442 card, LCD1602中北大学 2013 届毕业设计说明书第 3 页 共 36 页 目 录1 绪 论 .11.1 选题背景 .11.2 IC 卡发展与应用 .21.3 设计意义 .32 系统总体方案及硬件选择 .52.1 系统功能说明 .52.2 系统总体方案设计 .52.3 IC 卡选择 .62.4 键盘选择 .62.5 显示器选择 .73 硬件电路设计 .83.1 单片机最小系统电路 .83.2 SLE4442 部分 .93.2.1 SLE4442 主要指标 .103.2.2 SLE4442 引脚的配置 .103.2.3 IC 卡接口电路 .113.3 LCD1602 液晶显示部分 .113.3.1 LCD1602 简介 .113.3.2 液晶显示器技术参数 .123.3.3 显示原理 .123.3.4 LCD1602 操作指令 .133.3.5 液晶显示电路 .153.4 4*4 矩阵键盘 .153.5 蜂鸣报警电路 .164 软件设计 .174.1 流程框图 .18中北大学 2013 届毕业设计说明书第 4 页 共 36 页 4.2 子程序流程图 .184.2.1 扣费子程序流程图 .194.2.2 充值子程序流程图 .195 软硬件调试 .215.1 在 PROTEUS 上仿真结果 .215.2 调试中出现的问题以及解决方法 .236 结束语 .246.1 结论 .246.2 展望 .24参考文献 .25附录 A:总电路图 .27附录 B:实物图 .28附录 C:主要程序 .29致谢 .31中北大学 2013 届毕业设计说明书第 5 页 共 36 页 1 绪 论IC 卡,又称集成电路卡(Integrated Circuit Card)或者智能卡(Smart Card) ,是继磁卡,光电卡之后的新一代标识卡。此类卡具有智能又方便携带的优点,为现代信息处理和传输提供了一种全新的方法。随着社会的不断进步,科学技术的进步,超大规模集成电路、大容量存储芯片以及信息安全技术的发展,IC 技术也在不断进步,应用领域不断地扩大,以 IC 卡为媒介的单片机售饭系统就是一个例子。IC 卡的应用提高了人们的生活水平和工作的效率,为人们带来了方便实惠,加快了现代化进度,已经成为一个国家科技水平现代化程度的标志之一。食堂 IC 卡是适应于就餐人数密集的食堂收费系统,该系统从根本上解决了餐券流通过程中的伪造、丢失,细菌交叉感染等一系列的问题,促进饮食服务管理向规范化、系统化和科学化的方向发展。本次设计采用单片机,外加液晶显示电路、按键控制电路、IC 卡接口电路、蜂鸣器报警电路,可以实现充值、扣费、报警等多项功能。本系统具有设计低功耗,可靠性,智能化及低成本等特点。系统采用 5V 的直流电源供电。整个系统程序编写所用的软件: Keil。本此设计的食堂 IC 卡系统利用单片机 AT89S51 控制整个系统。显示部分采用LCD1602 液晶显示器,能够支持字符和数字输出,简单明了。键盘采用 4*4 矩阵键盘模块,输入方便。IC 卡采用了西门子公司的 SLE4442 逻辑加密卡。最终实现了预期的充值、扣费、复位、报警等功能。设计结果表明,此系统设计容易,结构简单,造价低廉,维修方便,能够广泛应用于各种单位的食堂中。1.1 选题背景 以前,各种企事业单位的食堂,人员就餐所用的都是纸质或塑胶质的饭票、菜票、饭卡,或是直接使用现金交易,学校也不例外。但是,这种食堂运作方式存在着方方面面的不足:操作繁琐:传统的食堂收费方式从饭票的印制、售卖、回收、点数、结算每个环节都采用人工进行,且每天、每月都需进行着重复的统计工作,令人繁不胜烦。 随着社会不断进步,在我们生活的万千世界里,人类已进入了科学技术空前发展中北大学 2013 届毕业设计说明书第 6 页 共 36 页 的信息高速化社会。在这个瞬息万变的信息社会里,随着大规模集成电路、计算机技术的迅速发展,以及人工智能在测试技术方面的广泛应用,逐步形成了一种完全突破传统概念的新一代的仪器智能仪器。目前,而且还出现了不少全新的仪器类型,使现代电子仪器发生了根本性的变化。作为其中之一的 IC 卡也进入了人们的生活,给人们带来了很多方便实惠。这些电子仪器很多都是由芯片控制的,由于单片机有很多优点,比如集成度高,功能强,通用性好,尤其是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特的优点,使单片机迅速得到了推广应用。目前已经成为测量控制应用系统中的优选机种和新电子产品的关键部位。世界各大电气厂家,测控技术企业,机电行业,竞相把单片机应用于产品更新,作为实现数字化,智能化的核心部件。本次的食堂 IC 卡系统设计就是以单片机为核心的智能系统,实现了管理智能化,大大提高了餐饮单位的效率,因而受到了市场的青睐。 1.2 IC 卡发展与应用IC 卡的开发、研制与应用是一项系统工程,涉及到计算机、通讯、网络、软件、卡的读写设备、应用机具等多种产品领域的多种技术学科。因此,全球 IC 卡产业在技术、市场及应用的竞争中迅速发展起来。IC 卡已是当今国际电子信息产业的热点产品之一,除了在商业、医疗、保险、交通、能源、食堂、通讯、安全管理、身份识别等非金融领域得到广泛应用外,在金融领域的应用也日益广泛,影响十分深远。IC 卡虽然进入我国较晚,但在政府的大力支持下,发展迅速。1995 年底,国家金卡办为统筹规划全国 IC 卡的应用,组织拟定了(金卡工程非银行卡应用总体规划)。为保证 IC 卡的健康发展,在国务院金卡办的领导下,信息产业部、公安部、卫生部、国家工商管理局等各个部委纷纷制定了 IC 卡在本行业的发展规划。IC 卡在银行系统的应用。银行卡大体分为两类:信用卡和储值卡。信用卡,即贷记卡,有小额信贷功能,即可以小额透支。它要求持卡人有较高的信誉度,透支的钱应及时存入。储值卡,即借记卡,不需要建档案,不需要担保,不能够透支,一般用于小额提取或消费。目前国内各商业银行所发放的银行卡大多数为借记卡。IC 卡收费系统。它包括电费、水费、煤气费、通信费等各种消费资源费用的收取。该类系统可以提高管理效率和可靠性。通过预先收费,可以增加管理部门的可用资金,中北大学 2013 届毕业设计说明书第 7 页 共 36 页 为居民提供优质服务,改变对资源先消费后收费的不合理状况。对于用户而言,IC 卡收费可消除收费人员入户的骚扰和准备现金零钱的烦恼;同时,还有利于用户根据自家用电、用水、用煤气的情况,进行计划消费。IC 卡医疗保险系统。随着我国医疗体制的改革,居民持保险公司发行的 IC 卡到医院就医,就医费用将由保险公司支付。医疗 IC 卡除了具有医疗费用的支付功能外,卡内还可以存储病人的病历。公交管理系统。乘客持公交管理部门发行的预先付费 IC 卡乘车,上车时只需在汽车门口的收费机前晃一下(主动式卡),收费机自动完成收费。这样,能有效地减少上下车时间,加快车辆周转速度,提高管理效益,杜绝贪污、假币现象。食堂 IC 卡系统。随着中国人口的不断增加,IC 卡进入一些企事业单位就成了一种不可挡的趋势。消费者提前充入一定金额的钱,在就餐时就可以不用带上现金,只需要把卡插入刷卡机就可以显示余额,然后餐厅工作人员扣除此次消费金额,这样可以减少时间,提高效率。其它,还有交警管理系统、工商管理系统、IC 卡电子门锁、IC 卡税务管理系统、高速公路收费系统等多种 IC 卡应用系统。 IC 卡随着半导体技术、大规模集成电路芯片的发展而产生,也必将随着计算机技术、网络技术等的高速发展而迅速发展壮大。不断扩大 IC 卡的应用领域已成为社会发展的必然需求。在全球 IC 产业市场竞争更加激烈的情况下,IC 卡必然向更高层次方向发展。诸如从接触型 IC 卡向非接触型 IC 卡转移,从低存储容量的 IC 卡向高存储容量发展,从单功能 IC 卡向多功能 IC 卡转化,从单系统的 IC 卡向多系统 IC 卡转化,由非银行系统转向银行系统应用,由民用转向军用,由局域网向因特网迁移等。新技术不断涌现,IC 卡品种繁多,这充分说明了 IC 卡的强大生命力。在未来的几年中,IC 卡将会越来越多地渗入到人们的生活中。1.3 设计意义在经济高度发达的今天,单片机的应用是具有高度现实意义的。单片机拥有极高的可靠性,微型性和智能性(编写不同的程序后可以就完成不同的控制工作) ,单片机已成为工业控制领域中普遍采用的智能化控制工具,已经深深地渗入到我们的日常生活当中并且为我们的生活带来了很多便利。单片机在各个领域得到了广泛应用,许多用单片机做控制电子产品出现在人们的中北大学 2013 届毕业设计说明书第 8 页 共 36 页 生活中,食堂 IC 卡系统也应运而产生,本次设计用由编程控制液晶显示器和智能 IC卡接口电路。该系统具有充值、扣费、报警等功能。它具有价格便宜,性能稳定,操作方便等特点。适合各类学校或者各种企事业单位使用。食堂 IC 卡系统的成功设计,首先能够解决当前部分单位食堂存在的一些弊端,为消费者和餐厅工作人员带来大大的的方便。其次,在整个系统的软件的编写调试过程中,自己能够学会很多专业知识,进一步巩固自己的编程能力,使自己的计算机能力进一步提高。这样,不仅加强了自己的动手动脑能力,而且还查阅了不少有关方面的资料,也为以后的工作积累更多的资本。总之,通过本次食堂 IC 卡系统的软件设计,使自己受益匪浅。通过此次基于单片机设计的食堂 IC 卡系统,我可以更清楚详细的了解单片机程序设计的基本指令功能、编程步骤和技巧来讲述单片机编程,并对 AT89S51 单片机的结构和原理进行讲述,进一步了解基于单片机开发应用的相关芯片的工作原理,并且可以在将来的工作和学习中加以应用。加深了我对单片机的理解和应用以及掌握单片机与外围接口的一些方法和技巧,还更进一步掌握了 C 语言编程的一些技巧。本系统完成了充值和扣费的功能。显示部分采用 LCD1602 液晶显示器,能够支持数字和字符输出,简单明了。键盘采用 4*4 键盘模块,输入方便。IC 卡采用了西门子公司的 SLE4442 逻辑加密卡。设计结果表明,此系统设计容易,结构简单,造价低廉,维修方便,前些年广泛应用于各种单位的食堂中。本次毕业设计意义主要表现在以下一些方面:(1) 食堂 IC 卡系统电路包含了 51 系列单片机的最小应用系统的构成,同时在此基础上扩展了一些使用性强的外围接口。(2) 可以了解到 LCD1602 液晶显示器和 SLE4442 智能 IC 卡的结构、工作原理以及这种显示器的接口实例与具体连接与编程方法。中北大学 2013 届毕业设计说明书第 9 页 共 36 页 2 系统总体方案及硬件选择2.1 系统功能说明食堂IC卡售饭机系统作为食堂收费终端,根据实际使用环境,应具有如下功能特点,以适用不同阶段数据处理。(1)就餐阶段就餐阶段,即实现扣费功能,属于正常使用阶段。在IC卡插入售饭机后,系统能读出IC卡里面预先存储的金额,并能进行显示。售饭员利用键盘按下扣费键,液晶显示器显示“Ka Nei Yu E:”及可用余额,然后输入就餐者选定的食物的金额,按下确定键,售饭机自动用卡中的金额减去应付金额,操作完成后屏幕显示可用余额。如果就餐者卡中的余额小于消费的金额,售饭机则给出报警音,提示操作不能成功。(2)充值阶段充值阶段,插卡后IC卡售饭机读出卡里的余额,就餐者在充值交纳一定的金额后,通过键盘输入次此充值金额,售饭机自动将此次充值金额加入卡中。操作完成后,屏幕显示充值后卡中的余额。返回主页面可以按下复位键完成该项操作。2.2 系统总体方案设计根据所述 IC 卡售饭机的功能特点,售饭机系统需要完成数据的输入、显示和处理三种功能,整个系统的结构框图如图 2.1 所示。IC 卡接口单 片 机键 盘显 示驱 动显 示 屏 键 盘蜂鸣器复位电路图 2.1 系统总体框图由系统总体结构框图可知,食堂 IC 卡系统主要包括控制系统、显示模块、插卡系统模块、定时报警模块、键盘模块组成。通过这几个模块的协调工作就可以完成相应的操作控制和显示功能。中北大学 2013 届毕业设计说明书第 10 页 共 36 页 2.3 IC 卡选择根据 IC 卡的读写特点,IC 卡主要分为接触型 IC 卡和射频卡两类。(1) 接触型 IC 卡 接触型 IC 卡的表面有 6 个或 8 个金属触点,只有在 IC 插入读写器内后,在微处理器的控制下才能够完成的读写操作。(2) 射频卡 射频卡没有金属触点而是在卡内置有天线射频卡处在读卡器一定距离内时,读写卡器通过发射射频信号对卡进行读写操作。根据 IC 卡的内部结构,IC 卡又可以分为存储卡、逻辑加密卡和 CPU 卡。(1)存储卡存储卡的存储单元一般为电可擦除的存储器 EEPROM。存储卡的容量从几十字节到几千字节不等。这类卡具有操作简单、读写速度快,信息存储时间长等优点。如Atmel 公司 AT24C01 卡,具有 128B(bits) ,典型擦写寿命 10 万次,数据保存时间100 年。但是这类卡不具备加密功能,存储的数据可以很容易地被读出,因而卡内信息的安全性较差,常常用于安全性能不高的场合,如门禁卡、身份识别卡等。(2)逻辑加密卡逻辑加密卡内设有硬件逻辑加密电路,只有在输入密码正确后才能进行数据的改写,否则数据只能被读出。而且输入的错误密码达到规定次数后,IC 卡自动锁死报废,因而这种卡的安全性能很高。常见的如西门子的 SLE4442 卡,如果连续三次密码输入错误,卡就会报废。这种卡常常用于对信息保密性较高的领域,非常适合于涉及到金融等方面的应用。综合上述考虑,本系统选用西门子 SLE4442 逻辑加密型 IC 卡进行数据的存储和身份的识别。详细介绍见硬件设计部分。2.4 键盘选择单片机系统中常用的键盘有以下两种类型。(1)独立型按键独立型按键的一脚通过电阻接电源或者接地,而另一脚接单片机的 I/O 口。在按键被按下和没有按下时 I/O 口电平刚好相反。这样通过检测 I/O 口的电平状态即可判断哪一个按键被按下了。中北大学 2013 届毕业设计说明书第 11 页 共 36 页 此类按键的特点是按键电路配置灵活,按键的状态识别简单,程序编写相对简单,但是每一个按键需要占用一个 I/O 口,资源占用率较高,当按键的数量不是很多或者系统有比较多电热 I/O 口剩余时,可以采用此类设计。(2)矩阵式键盘矩阵式键盘有行线和列线组成。按键位于行列线的交叉点上,一个 4*4 的矩阵式结构就可以构成一个含有 16 个按键的键盘。按键设置在行列线的交叉点上,行列线分别接到按键开关的两端。行列通过上拉电阻接到+5V 上,平时当没有按键按下时,列线处于高电平状态;当有按键按下时,行列线导通,因此列线的电平将由此相连接,各个按键按下与否影响该键所在行列线的电平。这样行列线配合起来进行适当的处理,就可以确定按键的位置。与独立式键盘相比,要节省很多 I/O 口,适用于按键数量较多的场合。食堂 IC 卡售饭系统选用 AT89S51 的 I/O 端口较多,在实际使用中键盘最好集成在IC 卡售饭机以内以防止由于键盘的滑轮造成售饭员的误操作。综合考虑实际使用的情况和价格相比较,本设计采用矩阵式扫描键盘进行数据输入。由于有 0 到 9 十个数字键,再加一些功能键,因此采用 4*4 矩阵键盘。2.5 显示器选择显示器是最常用的输出显示设备,其种类很多,但在单片机系统设计中最常用的是发光二极管显示器(LED)和液晶显示器(LCD)两种。由于这两种显示器它们拥有成本低廉,结构简单,接口容易实现等特点,所以被广泛应用于各类单片机设计的系统之中。在现阶段常用的显示器包括 LED 二极管显示以及 LCD 液晶显示两种类型。LED 是自发光显示,价格便宜、体积大、耗电高、图像质量一般,适合于室外大屏幕展示,如广告牌、商场电子宣传栏等。LCD 液晶显示是投射光显示,价格稍高、体积小、耗电低、图像质量高,适用于各类显示屏的设计,如电脑液晶屏、手机屏幕等。二者在各个方面的比较都有其优势,但对于此次设计,需显示相关字符及金额操作的情况,显示内容较灵活,对数字和字符显示要求比较高。因此选用自带数据库类型的 LCD 液晶显示器。综合上述两种显示器的优缺点,因此在本设计中选用了目前常见的性能比较好的有串行数据端口及自带汉字数据库的 LCD1602 点阵液晶显示屏。中北大学 2013 届毕业设计说明书第 12 页 共 36 页 3 硬件电路设计本系统采用单片机作 AT89S51 为本设计的核心元件。利用两片 LCD1602 液晶显示器作为显示器件。通电后,未插卡时显示“CHU RU IC KA”,插卡后显示“KA NEI YU E”,按充值键后显示 “+”,按扣费键后显示“-”。在本次设计中,接入一个 4*4 的按键键盘,其中 0 至 9 号键用于数字0、1、2、3、4、5、6、7、8、9 的输出,10 号键用做操作完成后的确定键,11 号键用做充值键,12 号键用做扣费键,由于考虑到按键处接线电路较为复杂,13、 14、15号键空闲不用,在外板子上接上复位键,用于退回主页面。另外,本系统还有一个重要的组成部分插卡接口,即 SLE4442,该部分主要是用于 IC 卡插入,是本系统相当重要的组成部分。SLE4442 具有 7 种指令,包括读、写主存储器,读、写主保护器,读、写安全存储器和密码校验指令。因此本系统硬件由以下几个部分组成:(1)AT89S51 单片机电路(2)LCD1602 液晶显示电路(3)4*4 按键开关(4)蜂鸣器报警电路(5)SLE4442 智能 IC 卡,及插卡电路由于要给各个芯片提供电源,所以还包括 5V 电源电路。3.1 单片机最小系统电路单片机最小系统,也称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对 51 系列单片机而言,最小系统包括:单片机、晶振电路、复位电路。(1)时钟电路 AT89S51内部有一个可以用于构成振荡器的高增益反相放大器,而引脚 XTAL1和XTAL2分别是此放大器的输入端和输出端。此时钟可以由内部方式产生或外部方式产生。内部方式的时钟是在XTAL1和XTAL2 引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件一般通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.212MHz之间选择,电容值在530pF之间选择,电容值的大小能够对频率起微调的作用。外部方式的时钟电路XTAL1接地,XTAL2 接外部振荡器。对外部振荡信号没有特中北大学 2013 届毕业设计说明书第 13 页 共 36 页 殊要求,只要求保证脉冲宽度,因而一般采用频率低于12MHz的方波信号。(2)复位及复位电路 复位操作:复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,同时也需按复位键重新启动。复位信号及其产生:RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应该持续24个振荡周期(即二个机器周期)以上。整个复位电路主要包括芯片内、外两部分。外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。复位操作有上电自动复位相按键手动复位两种方式。单片机最小系统电路电路图如图 3.1 所示。XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD63P0.7/AD732P1.0/T21P1.1/T2EX2P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD1P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A92P2.2/A1023P2.3/A1 24P2.4/A1225P2.5/A1326P2.6/A1427U2AT89S51net=d7C430PFC530PF X2CRYSTAL+5vC610nFR21k复 位 电 路图 3.1 单片机最小系统原理图3.2 SLE4442 部分SLE4442 是西门子公司的一款具有可编程安全代码( PSC)和写保护功能的智能型存储芯片。它具有 256EEPORM 主存储器,不可逆的 4 个写保护器,1B 的错误计数中北大学 2013 届毕业设计说明书第 14 页 共 36 页 器具有 3B 密码保护功能。SLE4442 采用两线数据传输方式,符合 IS07186-3 标准。 SLE4442 具有一个安全逻辑,用于控制存储器的读写操作。在密码成功之前,除密码外,数据都可以读出,只有密码校验成功之后才可以执行数据的写入动作。SLE4442 卡为 256 字节加密卡,存在读、写数据、保护数据以及密码操作。 3.2.1 SLE4442 主要指标(1)字节数:256 字节 EEPROM(2)存储器:32 位保护存储器(3)密码:3 字节用户密码,密码错误计数:3 次(4)温度范围:070 (5)擦写次数:至少 100,000 次擦写循环 3.2.2 SLE4442 引脚的配置1) SLE4442 IC 卡 采 用 两 线 数 据 传 输 方 式 其 引 脚 配 置 如 下 图 3.2 所 示 :图 3.2 SLE4442IC 卡引脚的配置2) SLE4442 IC 卡 管 脚 功 能 说 明 如 表 3.1 所 示 。 表 3.1 SLE4442 IC 卡 管 脚 功 能引脚号 标记符号 功能CI VCC +5V 电压输入C2 RST 复位C3 CLK 串行时钟输入C4 NC 空C5 GND 地C6 NC 空C1C2C5C6C7C3C8C4VCCRSTCLKNCGNDNCI/ONC中北大学 2013 届毕业设计说明书第 15 页 共 36 页 C7 I/O 串行数据输入/输出C8 NC 空3.2.3 IC 卡接口电路在此电路中,由于 AT89S51 是主控芯片,因此 AT89S51 需要完成对 IC 芯片的复位、读写等操作。首先对于复位响应操作,由于复位响应是根据 ISO7816 标准来进行的。在操作期间的任何时候都可以复位,只有经过了复位才能对 IC 卡进行其他操作。开始时地址计数器随一个时钟脉冲而被设置成 0。当 RST 线从 H 状态置到 L 状态时,第一个数据位的内容被送到 I/O 线上。若连续输入 32 个时钟脉冲,主存储器中的前 4个字节地址单元中的内容被读出。在第 33 个时钟脉冲的下降沿,I/O 线被置成 H 状态而关闭。复位响应之后,芯片等待着命令。每条命令都以一个“启动状态” 开始。整个命令包括三个字节。随后紧跟着一个附加脉冲并用一个“ 停止状态” 来结束操作。当 CLK 为H 状态期间,I/O 线的下降沿为启动状态;当 CLK 为 H 状态期间,I/O 线的上升沿为停止状态。需要注意的是:脉冲的下降沿之后,I/O 线上的第一位数据变为有效。随后每增加一个时钟脉冲,芯片内部的一位数据被送到 I/O 线上。其输出的顺序是从每个字节的最低位开始。当所需要的最后一个数据送出以后,需要再附加一个时钟脉冲来把 I/O 线置成 H 状态,以便准备接受新的命令。在输出数据期间,任何“ 启动状态”和“停止状态”均被屏蔽掉。智能 IC 卡电路由 SLE4442 外接 5V 电源组成。如图 3.3 所示。图 3.3 SLE4442 智能 IC 卡电路中北大学 2013 届毕业设计说明书第 16 页 共 36 页 3.3 LCD1602 液晶显示部分3.3.1 LCD1602 简介LCD 1602 液晶也叫 1602 字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个 5X7 或者 5X11 等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义 CGRAM,显示效果也不好) 。1602LCD 是指显示的内容为 16X2,即可以显示两行,每行 16 个字符液晶模块(显示字符和数字) 。3.3.2 液晶显示器技术参数主要技术参数和性能:(1)供电电源 VDD:3.0V5.5V。(2)可显示内容:16(列)2(行)。(3)显示特点:全屏幕点阵。(4)内建有 192 个 5X7 点阵的字型的字符发生器 CGROM(5)有 80 字节显示数据存储器 DDRAM。3.3.3 显示原理1602 液晶模块内部的字符发生存储器(CGROM)已经存储了 160 个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A ”的代码是01000001B( 41H) ,显示时模块把地址 41H 中的点阵字符图形显示出来,我们就能看到字母“A” 。因为 1602 识别的是 ASCII 码,试验可以用 ASCII 码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如A。以下是 1602 的 16 进制 ASCII 码表地址:读的时候,先读左边那列,再读上面那行,如:感叹号!的 ASCII 为 0x21,字母 B 的ASCII 为 0x42(前面加 0x 表示十六进制) 。以下为 CGROM 中字符码与字符字模关系对照表,如下表 3.2:中北大学 2013 届毕业设计说明书第 17 页 共 36 页 表 3.2 字符码关系对照表3.3.4 LCD1602 操作指令对 DDRAM 的内容和地址操作,HD44780 的指令集及其设置说明,共有 11 条指令:基本操作时序: 中北大学 2013 届毕业设计说明书第 18 页 共 36 页 读状态 输入:RS=L,RW=H,E=H 输出: DB0DB7= 状态字 写指令 输入:RS=L,RW=L,E=下降沿脉冲,DB0DB7=指令码 输出:无 读数据 输入:RS=H,RW=H,E=H 输出:DB0 DB7= 数据 写数据 输入:RS=H,RW=L,E=下降沿脉冲,DB0DB7=数据 输出:无以下为几条常用的指令:(1) 清屏指令功能: 清除液晶显示器,将 DDRAM 的内容全部填入“空白”的字符码 20H; 光标归位,即将光标撤回液晶显示屏的左上方; 将地址计数器(AC) 的值设为 0。(2) 光标归位指令功能: 把光标撤回到显示器的左上方; 把地址计数器(AC) 的值设置为 0; 保持 DDRAM 的内容不变(3) 输入模式设置指令功能:设定每次写入 1 位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。(4) 显示开关控制指令功能:控制显示器开/关、光标显示/关闭以及光标是否闪烁。参数设定的情况如下: 中北大学 2013 届毕业设计说明书第 19 页 共 36 页 位名 设置 D 0=显示功能关 1=显示功能开 C 0=无光标 1= 有光标 B 0=光标不闪烁 1= 光标闪烁(5) 设定显示屏或光标移动方向指令功能:使光标移位或使整个显示屏幕移位。参数设定的情况如下: S/C R/L 设定情况 0 0 光标左移 1 格,且 AC 值减 1 0 1 光标右移 1 格,且 AC 值加 1 1 0 显示器上字符全部左移一格,但光标不动 1 1 显示器上字符全部右移一格,但光标不动3.3.5 液晶显示电路液晶显示电路原理图如图 3.4:D714D613D512D41D310D29D18D07E6RW5RS4VS1VD2VE3LCD1602+5v P3.4P3.5P3.6 P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7图 3.4 LCD1602 液晶显示电路AT89S51 单片机与 YJD1602A-2(LCD1602)接口电路如图 3.4 所示。这个方案接口电路简单,刷新速度快。3.4 4*4 矩阵键盘矩阵键盘又称行列键盘,它是用四条 I/O 线作为行线,四条 I/O 线作为列线组成的键盘。在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为 4*4个。这种行列式键盘结构能有效地提高单片机系统中 I/O 口的利用率。中北大学 2013 届毕业设计说明书第 20 页 共 36 页 0 等 于 清 屏7 8 94 5 6 扣 除1 2 3 充 值P2.0P2.1P2.P2.3 P2.4 P2.5 P2.6 P2.7图 3.5 4*4 矩阵键盘电路当无按键闭合时,P2.0 P2.3与 P2.4P2.7之间开路。当有按键闭合时,与闭合键相连的两条 I/O 口线之间短路。判断有无按键按下的方法是:第一步,置列线 P2.4P2.7为输入状态,从行线 P2.0P2.3输出低电平,读入列线数据,若某一列线为低电平,则该列线上有键闭合。 第二步,行线轮流输出低电平,从列线 P2.4P2.7读入数据,若有某一列为低电平,则对应行线上有键按下。综合以上一二两步的结果,就可以确定按键编号。但是键闭合一次只能进行一次键功能操作,因此须等到按键释放后,再进行键功能操作,否则按一次键,有可能会连续多次进行同样的键操作。4*4 键盘分配情况:S0S9:数字键 09S10:完成充值扣费后确定操作S11:充值键,按下后显示“请输入充值金额”S12:扣费键,按下后显示“请输入扣除金额”3.5 蜂鸣报警电路如图 3.6 所示,MCU 通过一 I/O 端口控制蜂鸣器,为确保输出电流信号有效驱动蜂鸣器,在蜂鸣器与端口之间采用一个 PNP 型三极管蜂鸣器进行驱动。它与单片机的连接方式如图所示,BUZ 接单片机 P1.1 口。单片机 P1.1 口通过PNP 型三极管驱动蜂鸣器, P1.1 口输出低电平时,三极管导通,蜂鸣器发出响声。中北大学 2013 届毕业设计说明书第 21 页 共 36 页 BUZ1BUZERQ1PNPR24.7kR52k+5vBUZ图 3.6 蜂鸣报警电路4 软件设计软件的编程设计是单片机系统设计的核心部分,是硬件系统的灵魂,也是能否实现预定功能的关键。单片机编程常用的语言是 C 语言和汇编语言,最终都要转为 Intel HEX 格式或二进制格式(Binary)文件拷入单片机芯片内。本次设计我们使用的是 C 语言进行编程设计。本次基于单片机的食堂 IC 卡系统设的软件设计部分采用模块化程序设计。从结构上看,系统控制软件主要包括一个主程序,显示器驱动程序和智能 IC 卡驱动程序。从功能上看,系统控制软件则主要由一个 IC 卡控制程序,按键处理程序,驱动程序等组成。主程序主要完成系统初始化、IC 卡插入检测、读写和键盘输入与处理、异常情况报警处理等工作,以完成人换的功能。程序按键处理程序是系统服务程序的一部分。按键处理程序完成按键的识别与处理工作。在确认按键被按下后,通过查找按键,区分功能键与数字键,从而根据不同的情况进行相应的处理。显示器驱动程序主要完成地址分配,余额显示,按键操作等。IC 卡驱动程序主要完成读、写主存储器,读保护存储器,读密码,密码校验,IC 卡复位等功能。中北大学 2013 届毕业设计说明书第 22 页 共 36 页 4.1 流程框图读卡按键处理系统初始化非法卡 报警Y卡插进否写卡延时NYN开始4.2 子程序流程图4.2 .1 扣费子程序流程图就餐阶段,即实现扣费功能,属于正常使用阶段。在IC卡插入售饭机后,系统能读出IC卡里面预先存储的金额,并能在面对就餐者和售饭员两方的屏幕上显示。售饭员利用键盘按下扣费键,液晶显示器显示“Ka Nei Yu E:”及可用余额,然后输入就餐者选定的食物的金额,按下确定键,售饭机自动用卡中的金额减去应付金额,操作完成后液晶显示屏显示可用余额并有成功提示音。如果就餐者卡中的余额小于消费的金额,售饭机则给出报警音,提示操作不能成功。图 4.2 主程序流程图数字键处理延时按键识别数据转换和处理有键按下数字键键盘处理结束功能键处理N开始Y图 4.1 按键处理流程图中北大学 2013 届毕业设计说明书第 23 页 共 36 页 开始按下扣费键显示器提示扣费成功 , 蜂鸣提示余额不足操作失败蜂鸣器提示按下扣除金额按下扣费金额数字键按下确定键结束YN输入正确 按下清除键NY图 4.3 扣费过程流程图4.2.2 充值子程序流程图充值阶段,IC 卡售饭机读出卡里的余额,就餐者在充值交纳一定的金额后,由工作人员通过键盘输入次此充值金额,售饭机自动将此次充值金额加入卡中。操作完成后,屏幕显示充值后卡中的余额。返回主页面可以按下复位键完成该项操作。如图 4.4所示。中北大学 2013 届毕业设计说明书第 24 页 共 36 页 开始按下充值键显示器提示充值成功 , 蜂鸣提示输入正确按下清除键 , 修改错误数字按下充值金额数字键结束NY按下确定键NY图 4.4 充值过程流程图中北大学 2013 届毕业设计说明书第 25 页 共 36 页 5 软硬件调试5.1 在 PROTEUS 上仿真结果(1)未插卡阶段 LCD1602 显示“Qin Chu Ru IC Ka”,蜂鸣器响时 1S 提示。仿真图如下图 5.1:XTAL218XTAL119ALE301PSN29RST9P0./AD039.1/18P0.2/AD237.3/36P0.4/AD435.5/54P0.6/AD63.7/72P1.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论