基于单片机的IC卡水表的设计论文_第1页
基于单片机的IC卡水表的设计论文_第2页
基于单片机的IC卡水表的设计论文_第3页
基于单片机的IC卡水表的设计论文_第4页
基于单片机的IC卡水表的设计论文_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于单片机的IC卡水表设计摘要智能IC卡水表是一种集计量和控制功能于一体的水表计量设备。水表。这款水表的研发从根本上改变了自来水公司的传统工作方式,形成了先买卡再充水的服务模式,有效避免了水费的流失,为水务公司提供了先进的管理方法。降低自来水公司的运营成本。它解决了长期以来困扰供水行业的欠水问题,更重要的是从根本上改变了市民的用水观念和供水行业的管理方式。本次设计的智能IC卡水表系统采用单片机AT89C51作为主芯片,完成充值、扣款、复位等功能。显示部分采用LCD 12864液晶显示,可支持汉字和数字输出,简洁明了。键盘采用矩阵键盘模块,输入方便。 IC卡采用西门子SLE4442逻辑加密卡。设

2、计结果表明,该系统设计简单、结构简单、成本低、维护方便。详细介绍了系统的总体原理,分析了系统的软硬件设计,并制作了实物。关键词:单片机; IC卡;智能水表目录TOC o 1-3 h z u HYPERLINK l _Toc358992708 1简介 PAGEREF _Toc358992708 h 1 HYPERLINK l _Toc358992709 1.1学科背景 PAGEREF _Toc358992709 h 1 HYPERLINK l _Toc358992710 1.2传统水表 PAGEREF _Toc358992710 h 1 HYPERLINK l _Toc358992711 1.2

3、.1传统水表主体结构 PAGEREF _Toc358992711 h 1 HYPERLINK l _Toc358992712 1.2.2传统水表的主要特点 PAGEREF _Toc358992712 h 1 HYPERLINK l _Toc358992713 1.3智能IC卡水表 PAGEREF _Toc358992713 h 2 HYPERLINK l _Toc358992714 1.3.1智能IC卡水表主要特点 PAGEREF _Toc358992714 h 2 HYPERLINK l _Toc358992715 1.4 IC卡发展历程 PAGEREF _Toc358992715 h 3

4、HYPERLINK l _Toc358992716 1.5研究内容 PAGEREF _Toc358992716 h 3 HYPERLINK l _Toc358992717 2 IC卡水表整体设计 PAGEREF _Toc358992717 h 5 HYPERLINK l _Toc358992718 2.1系统功能说明 PAGEREF _Toc358992718 h 5 HYPERLINK l _Toc358992719 2.2系统总体方案设计 PAGEREF _Toc358992719 h 5 HYPERLINK l _Toc358992720 2.2.1 IC卡选择 PAGEREF _Toc

5、358992720 h 6 HYPERLINK l _Toc358992721 2.2.2键盘选择 PAGEREF _Toc358992721 h 7 HYPERLINK l _Toc358992722 2.2.3显示器的选择 PAGEREF _Toc358992722 h 7 HYPERLINK l _Toc358992723 3系统各模块硬件电路设计 PAGEREF _Toc358992723 h 9 HYPERLINK l _Toc358992724 3.1 Protel电路原理图设计软件 PAGEREF _Toc358992724 h 9 HYPERLINK l _Toc3589927

6、25 3.2单片机第 PAGEREF _Toc358992725 h 12节 HYPERLINK l _Toc358992726 3.2.1单片机AT89C51介绍 PAGEREF _Toc358992726 h 12 HYPERLINK l _Toc358992727 AT89C51 13主要引脚介绍 PAGEREF _Toc358992727 h HYPERLINK l _Toc358992728 3.2.3 芯片擦除 PAGEREF _Toc358992728 h 15 HYPERLINK l _Toc358992729 3.3时钟电路和复位电路 PAGEREF _Toc35899272

7、9 h 15 HYPERLINK l _Toc358992730 3.4 LCD12864液晶显示电路 PAGEREF _Toc358992730 h 16 HYPERLINK l _Toc358992731 3.5 SLE4442 IC卡第 PAGEREF _Toc358992731 h 17部分 HYPERLINK l _Toc358992732 3.5.1 SLE4442IC卡主要指标 PAGEREF _Toc358992732 h 17 HYPERLINK l _Toc358992733 3.6键盘设计 PAGEREF _Toc358992733 h 18 HYPERLINK l _T

8、oc358992734 3.7报警电路 PAGEREF _Toc358992734 h 19 HYPERLINK l _Toc358992735 4软件设计 PAGEREF _Toc358992735 h 20 HYPERLINK l _Toc358992739 4.1主程序设计 PAGEREF _Toc358992739 h 20 HYPERLINK l _Toc358992740 4.2子程序流程图 PAGEREF _Toc358992740 h 21 HYPERLINK l _Toc358992741 4.2.1充值流程流程图 PAGEREF _Toc358992741 h 21 HYP

9、ERLINK l _Toc358992742 4.2.2减水程序流程图 PAGEREF _Toc358992742 h 22 HYPERLINK l _Toc358992743 5编程和系统调试 PAGEREF _Toc358992743 h 24 HYPERLINK l _Toc358992744 5.1编程工具Keil PAGEREF _Toc358992744 h 24 HYPERLINK l _Toc358992745 5.1.1 uvision4集成开发环境介绍25 HYPERLINK l _Toc358992746 5.2调试结果 PAGEREF _Toc358992746 h 2

10、6 HYPERLINK l _Toc358992747 5.2.1物理调试 PAGEREF _Toc358992747 h 26 HYPERLINK l _Toc358992748 5.2.2开机选择 PAGEREF _Toc358992748 h 26 HYPERLINK l _Toc358992749 5.2.3充值界面 PAGEREF _Toc358992749 h 26 HYPERLINK l _Toc358992750 5.2.4扣水情况 PAGEREF _Toc358992750 h 27 HYPERLINK l _Toc358992751 结论 PAGEREF _Toc35899

11、2751 h 29 HYPERLINK l _Toc358992752 至 PAGEREF _Toc358992752 h 31 HYPERLINK l _Toc358992753 参考文献 PAGEREF _Toc358992753 h 32 HYPERLINK l _Toc358992754 附录A英文原件 PAGEREF _Toc358992754 h 33 HYPERLINK l _Toc358992755 附录B中文翻译 PAGEREF _Toc358992755 h 39 HYPERLINK l _Toc358992756 附录C主要程序 PAGEREF _Toc358992756

12、 h 44 HYPERLINK l _Toc358992757 附录D电路原理图 PAGEREF _Toc358992757 h 481简介1.1 主题背景_科学技术的发展步伐越来越快,加速了资源的消耗,特别是人们日常生活中不可缺少的淡水资源。淡水资源对一个国家的发展也极为重要。但是,我国是世界上人均淡水资源最匮乏的国家之一。目前,中国600多个城市中有近400个城市供水不足。我们可以采取两个措施来节约水资源。一是加大节水新技术开发和推广力度;二是对用水进行更加科学的管理。目前我国大部分城市居民使用自来水,以区域水站供水为主,逐步发展为以单位住宅区或建筑物或单位为户,自来水公司收费表阅读。这种

13、方法存在工作量大、充电周期长、充电相对困难、效率低等缺点。这种商业模式已经跟不上社会发展的步伐。因此,从某种意义上说,加强用水的科学管理已成为当前的首要任务。随着社会经济的发展和人们生活水平的逐步提高,智能电子产品逐渐渗透到每一个家庭。因此,我们提出了IC卡智能水表的解决方案。1.2传统水表传统水表经历了缓慢而漫长的发展历程,在改善人们生活、推动科技进步方面发挥了不可估量的作用。直到现在,它仍被用作供水公司的主要经营模式。1.2.1传统水表的主要结构传统的水表主要由硬件组成,通过固定的方法确定,这也是它所能实现的功能比较简单。这种水表只有统计流量和用水量指针显示功能。传统水表一般有输入信号接口

14、、局部处理电路和实时显示三部分。1.2.2传统水表的主要特点传统水表的主要特点是自成一体,自成一体,用户无法更换。传统水表的功能也比较简单。仅具有比较简单的流量采集和用水量机械指针显示功能。而且普通的传统水表具有相对独立的特性,无法与其他水表设备通信,传统水表存在很大局限性,只能用于现场测量,测量结果无法处理、存储。 , 并显示。此外,传统水表还存在无法升级、开发周期过长、投资过大等缺点。随着科学技术的不断发展,人们也对传统水表提出了更高的要求:测量精度更高、可靠性更好、自动测量、实现智能化、小型化、使用更灵活方便、便于携带。升级后,还需要同时处理、存储和显示测量数据,并且必须具备与其他设备进

15、行数据通讯的功能。这些新的高要求,不仅推动了传统水表的不断改进和发展,也必然产生一种新型的水表智能水表。1.3智能IC卡水表IC卡智能水表是利用现代传感技术、现代微电子技术和智能IC卡技术,对用水量进行准确计量并传输结算数据的新型水表。1.3.1智能IC卡水表与传统水表相比, IC卡智能水表具有以下特点,也可以说是优势。(一)有效解决一些技术难题。随着水资源日益紧张,国家将逐步实施阶梯水价等更为复杂的水资源管理模式,可以有效控制用水量,但同时也对供水交易制度提出了更高的技术要求。如果使用传统的水表,这个问题是无法解决的,但是IC卡智能水表可以轻松解决这些问题。(2)改变了旧的抄表收费模式。这种

16、范式转变的影响是巨大的。我国城市规模迅速扩大,住户数量也在迅速增加,供水部门的工作量将不断增加。继续使用传统的水表将很难实现。因此,智能IC卡水表技术的大规模应用已成为必然发展。通过IC卡交易和结算,用户可以自主决定支付的时间和金额,增加了用户的自主权。这不是传统水表的情况。的。(3)在部门上,可实现先付费后供水的用水模式。用传统水表收取水费的方法需要大量的工作,不仅效率低,而且费时费力。还可能遇到用户不缴、逾期缴费或漏缴水费等问题。供水部门也将因“先供水后收费”的商业模式造成资金压力。更重要的是,随着社会的发展,人们对家庭安全和隐私的意识也在增强,这使得家庭抄表、计费收费的做法逐渐被抵制。使

17、用智能IC卡进行交易结算,可以轻松解决这些可能引发纠纷的问题。(1)随着供水行业的快速发展,供水管理也需要更高的技术水平。如果继续使用传统的水表,这种飞跃基本上是不可能实现的,而IC卡智能水表的使用将为利用计算机技术进行现代化管理奠定技术基础。(2)与传统水表相比,IC卡智能水表具有成本低、可靠性高、使用寿命长、安全性好等优点,无需担心故障率高。 IC卡智能水表的上述优点将使IC卡智能水表逐渐被社会所接受,成为基本配置。1.4 IC卡发展历程IC卡是Integrated Circuit Card的英文缩写,有些国家也称其为智能卡、智能卡、微芯片卡等。 1993年,中国正式启动了以电子货币应用为

18、重点的“金卡工程”。诞生于1970年代的IC卡因其智能化和便携性而在中国开始普及和发展。带动了经济增长。虽然IC卡在中国的应用发展迅速,但IC卡在中国的应用领域还远远不够广泛,应用深度远不及发达国家。随着智能卡产业的快速发展和逐渐成熟,以及国家对智能卡产业的大力支持,全国IC卡的生产和应用呈现出快速发展的势头。目前IC卡已广泛应用于金融、社保、交通、电信、旅游、商业、银行账户管理等领域。关于IC卡的最早想法是由日本人提出的。 1969年12月,有村国隆提出了一种制造安全可靠的信用卡的方法,并于1970年获得专利权,但当时被称为ID卡IdentificationCard而不是IC卡。第二代IC卡

19、是1974年法国罗兰莫雷诺发明的带有集成电路芯片的塑料卡,并获得了该项专利权,是早期IC卡的发展过程。第三代IC卡是法国布尔公司于1976年开发的世界上第一张真正的IC卡。对于第四代,1984年法国PTT与国际电工委员会联合技术委员会共同制定了一系列国际标准和法规,从某种意义上极大地推动了IC卡的发展。在本次设计中,我想通过SLE4442卡的应用来实现一个简单的IC卡智能水表的设计,为我们日常用水提供方便。1.5研究内容将IC卡插入水表后,系统通过LCD128 64位显示金额,您可以通过键盘输入选择充值或用水。开水功能后,可扣1元/秒。操作完成后, LCD128 64可以实时显示余额,可以使用

20、添加密码( 111111 )进行充值。本次设计的主要内容如下:(1)基于AT89C51单片机完成IC卡智能水表的设计(2)使用PROTEL软件完成电路原理图的绘制(3) 使用KEIL设计软件的程序(4) 做一个真实的东西卡水表的整体设计2.1系统功能说明IC卡智能水表系统根据不同的使用环境应具备以下功能:( 1 )消费阶段是实现扣费、扣水的功能,属于正常使用阶段。 IC卡插入智能水表后,系统可以读取IC卡的金额并显示出来。按下消耗按钮,系统将自动开启出水功能。智能水表会扣卡金额1元/秒,显示屏实时显示可用余额。( 2 )在充值阶段,按充值键输入密码,然后使用键输入充值金额。充值完成后,智能水表

21、会自动将充值金额添加到卡中。并通过显示屏显示IC卡中充值后的余额。2.2系统总体方案设计水表电路的硬件设计原则是在低功耗的前提下实现多功能。系统硬件电路由IC卡读写电路、液晶显示控制电路、脉冲提取电路、安全保护电路、存储单元电路、通讯接口电路组成。以AT89C51为核心控制芯片,完成整个水表信号的读写处理,监控水表工作的功能。 CPU芯片具有4K程序存储器、 32个多功能I/O口、多个可编程中断I/O口和数据串行通讯口。此外,该芯片功耗低,特别适合水表控制电路多、功能全、功耗低的要求。可以方便地读取IC卡的数据来控制液晶显示器的工作,也可以将水表的数据存储在E 2 ROM中永久保存,可以通过致

22、到表外的数据终端串口,大大提高了水表的智能化程度。功能化根据智能水表的功能特点,智能水表系统需要完成数据输入、显示和处理三个功能。整个系统的结构框图如图2.1所示单单片机显 示 屏键 盘复 位 电 路报 警 电 路IC卡 接 口图2.1系统结构框图系统整体结构框图IC卡智能水表系统主要包括控制系统、键盘输入模块、IC卡接口模块、报警模块和复位模块。通过这些模块的协调,可以完成智能水表的相应功能。2.2.1IC卡选择1 、根据IC卡的读写特性,IC卡可以分为两类,一类是接触式IC卡,一类是射频卡。下面介绍两种IC卡的特点:射频IC卡表面没有金属触点,但在卡的部分设置了天线。当射频卡与读卡器有一定

23、距离时,读卡器通过发射射频信号就可以对IC卡进行读写。 .接触式IC卡表面有6或8个金属触点。只有将IC插入读卡器后,金属触点与读卡器接触,才能在微处理器的控制下完成。读写操作。2 、根据IC卡的结构,IC卡可分为三类:存储卡、逻辑加密卡和CPU卡。我们只介绍存储卡和逻辑加密卡。(1)存储卡的容量可以从几十字节到几千字节不等。存储卡具有操作方便、读写速度快、信息存储时间长等优点。但是,存储卡没有加密功能,存储的数据很容易被读取,所以这种卡的安全性较差。(2)逻辑加密卡部分带有逻辑加密电路,所以只有输入正确密码后才能改写数据,否则只能读取数据,不能改写。这种卡由于安全性高,常用于信息要求高的领域

24、,在金融等方面非常适合选用此类IC卡。结合两种IC卡的特点,IC卡智能水表系统采用西门子SLE4442逻辑加密IC卡进行数据存储和身份识别。2.2.2键盘选择微控制器系统中常用的键盘大致可分为以下两种。(1)独立按键的一只脚通过一个电阻连接到电源或地,另一只脚连接到单片机的I/O口。按下按钮和不按下按钮时, I/O 端口的电平正好相反。独立按键的特点是按键电路配置灵活,识别按键状态比较简单,编程也比较简单,但是独立型的每个按键都需要占用一个I/O port 本身,这将提高 I/O 端口的利用率。如果按钮数量较少,或者微控制器剩余的 I/O 端口较多,则可以使用这种设计。(2)矩阵键盘由行线和列

25、线组成。按键位于行线与列线的交汇处, 4*4矩阵式行列线结构可组成16个按键的矩阵键盘。将按钮放置在行线与列线的交点处,按钮开关的两端分别与行线和列线相连。无按键操作时,列线为高电平状态;当按下按钮时,行列线将打开,列线的电平将连接在一起。每个按钮的操作控制按钮所在行列线的电平变化,使行列线相互配合。最多进行适当的处理,就可以确定关键的位置。与独立键盘相比,矩阵键盘的优势在于可以节省大量的I/O口,适用于按键数量较多的场合。考虑到实际使用情况,即IC卡水表的设计,本设计中刷机后的数据输入采用矩阵键盘。由于从 0 到 9 有十个数字键,加上一些功能键,所以使用了 4*4 矩阵键盘。2.2.3显示

26、器的选择显示器有两种可选,一种是HJ1602液晶屏,另一种是LCD12864液晶屏。 HJ1602A为工业字符型液晶显示器,可同时显示16x02或32个字符,但只能显示字母、数字和符号;汉字和图形。总结:在编程和使用方面,两者的难度差不多,原理也差不多,都是写指令、写数据、写地址等等。不过, 12864液晶屏显示更全面。与1602液晶屏相比, 12864可以更形象、更具体的实现显示功能,更符合本次设计的需要。因此,我们选择LCD12864液晶屏作为本次设计的显示器。3系统各模块硬件电路设计本次设计的IC卡水表系统硬件主要由以下几部分组成:(1)以AT89C51单片机为主控电路(2) SLE44

27、42智能IC卡及卡电路(3) LED指示电路(4) 矩阵键盘输入电路(5) LCD12864液晶显示电路(6) 报警电路(7) 5V电源电路3.1 Protel电路原理图设计软件在设计硬件电路之前,我们需要了解将要使用的protel绘图软件。 Protel Advanced Schematic ,即高级电气原理图用于电子产品的电气设计。完成整个电子产品设计过程中的电气电子阶段设计,包括功能设计、逻辑设计、电路设计。早期的PROTEL主要用作印制板的自动布线工具。它运行在DOS环境中,对硬件的要求非常低。它可以在286机器的1M内存下运行,无需硬盘,但功能较少,只有电路原理图。绘图和印制板设计功

28、能,印制板自动走线的走线率也很低,今天的PROTEL已经发展到DXP 2004 ,这是一个庞大的EDA软件,完全安装了200多M ,在WINDOWS95环境下工作,是一套完整的板级全方位电子设计系统,包括电路原理图绘制、模拟电路和数字电路的混合信号仿真、多层印制电路板设计(包括印制电路板的自动布线)、可编程逻辑设备设计、图表生成、电子表格生成、支持宏操作等功能,并具有Client/Server (客户端/服务器)架构,同时还兼容其他一些设计软件文件格式,如ORCAD 、 PSPICE、EXCEL 、等,其多层印制电路板的自动走线,可实现高密度PCB的100%走线率。 PROTEL软件在国内比较

29、容易买到,有很多关于PROTEL软件的书籍和使用说明,为它的普及提供了基础。想了解更多PROTEL的软件功能或下载PROTEL99试用版,都可以在INTERNET上。2005年底, Protel软件的原始制造商Altium推出了Protel系列的最新高端版本Altium Designer 6.0 。 Altium Designer 6.0是全集成电子开发系统的新版本,是业界第一个也是唯一一个完整的板级设计解决方案。 AltiumDesigner是业界第一款基于处理器设计集成设计流程、集成PCB设计、可编程器件(如FPGA )设计和嵌入式软件开发功能的产品。具有将设计从概念到最终产品所需的所有功

30、能的设计解决方案。这款最新的高端版本Altium Designer 6 ,除了完全继承了之前系列包括99SE 、 Protel2004的功能和优势外,还增加了很多改进和很多高端功能。 AltiumDesigner 6.0拓宽了板级设计的传统边界,全面集成了FPGA设计功能和SOPC设计实现功能,让工程师可以在系统设计中将FPGA和PCB设计与嵌入式设计相结合。Protel 99采用了全新的管理方式,即数据库的管理方式。 Protel 99 是第一个桌面环境中的全尺寸印制板设计系统,其核心是独特的设计管理和团队合作技术。所有 Protel99 设计文件都存储在唯一的集成设计数据库中,并显示在唯一

31、的集成设计编辑窗口中。Protel 99软件沿用了Protel之前版本易学易学的特点,界面与Protel 98基本一致,增加了一些新的功能模块。 Protel 引进了德国 INCASES 的先进技术,在 Protel99 中集成了信号完整性工具,准确的模型和板卡分析,帮助您在设计周期中使用信号完整性分析,实现一次成功,消除盲目性。 Protel99 的一个易于使用的功能是新的“这是什么”帮助。按任意对话框右上角的小问号,选择所需信息。现在可以快速查看某个功能的作用,然后在设计中使用它,按下状态栏末尾的按钮,并使用自然语言来帮助顾问。所有Protel99设计文件都存储在唯一的集成设计数据库中,并

32、显示在唯一的集成设计编辑窗口中。 Protel99中的设计界面称为设计管理器。使用设计管理器,您可以管理和编辑设计文件、设置设计组的访问权限以及监控对设计文件的访问。组织设计文件 过去组织和管理40 个或更多原理图、 PCB 、 Gerber 、 Drill、BOM和DRC文件需要数天时间,但Protel99将所有设计文件存储在一个设计数据库中。层次结构文件夹创建的文件组织在设计数据库中。右侧的个人安全系统设计数据库有一个名为设计文件的文件夹。在这个文件夹中是主要的设计文件(原理图和PCB )和许多子文件。文件夹,包括PCB组装文件、报告和仿真分析。可以在设计数据库中创建文件夹的层次深度没有限

33、制。设计数据库对存储Protel设计文件没有任何限制。您可以将任何类型的设计文件导入数据库,例如用MS Word 编写的报告、用 MS Excel准备的账单和 AutoCAD 中的机械图纸。只需双击设计数据库中的文件图标即可在相应的编辑器中打开文件,更新后的文件会自动保存到设计数据库中。 MS Word 和 Excel文件可以直接在设计管理器中进行编辑。提示:右键单击文件夹以显示浮动菜单并选择“设计数据库中的新建文件”。Protel99的设计管理器在一个全面的设计数据库中。设计管理器的工作方式类似于MS Windows文件管理器,可用于导航和组织设计数据库中的文件。使用设计管理器在设计数据库中

34、创建分层文件夹,并使用标准文件操作命令来组织这些文件夹中的设计文件。设计管理器的核心是左侧的导航面板。面板上显示的树形结构是Protel软件的一个熟悉功能。在Protel99中,这棵树不仅显示了原理图文件之间的逻辑关系,还显示了设计数据库中文件的物理结构。导航树中的活动文件夹是 PCB Assembly 文件夹。与Windows文件管理器一样,设计管理器在右侧显示此文件夹的内容。Protel常用操作:(1)调用绘图工具View-Toolbars-Customize(2)移动组件时按空格旋转组件(3)查找组件时,参考组件库的说明。转换器包含AD、DA等。(4)将文件直接放到数据库根目录下电气连接

35、网表是将设计结果传输到其他EDA工具的最重要的数据形式。 ADV、SCH包含两个独立的编辑器,分别是电气原理图编辑器和电气图形符号库编辑器。1、原理图编辑器 电气原理图编辑器是Adv Sch软件包中的主处理器,用于制作、编辑、检查和打印符合电气设计方案的信息,包括图纸、图表和设计数据文件。该编辑器包含一系列设计活动所需的软件工具,例如生成电气连接网络列表、检查电气设计规则、生成设计报告和打印高质量图纸。2 、原理图库编辑器电气图形符号库编辑器简称库编辑器,是ADV和SCH软件包中的另一个文件处理器。用于创建、编辑和管理元件的图形符号库。库编辑器的基本操作和功能与原理图编辑大致相同,但增加了专门

36、用于组件创建和库管理的工具。3、设计特点:( 1 ) 强大而完整的设计和表达能力( 2 )良好的开放性( 3 ) 强大的设计自动化功能( 4 ) 丰富灵活的编辑功能( 5 ) 在线编辑和完善的图书馆管理( 6)原理图与PCB图的动态连接( 7 )符合国际设计要求( 8 ) 完整的输出系统3.2单片机部分适应性是指单片机能否完成应用系统的控制功能,主要体现在以下几个方面。( 1 )单片机的CPU是否具备相应的处理能力( 2 )单片机芯片是否具有系统设计所需的外部接口( 3 )单片机是否具备系统所需的I/O口数量( 4 )单片机的极限性能能否满足设计要求基于以上描述,本设计采用AT89C51单片机

37、作为主控芯片3.2.1单片机AT89C51介绍AT89C51 是51 系列微控制器家族的成员,由 ATMEL 公司生产。 AT89C51 是一款低压、高性能 CMOS 8 位微控制器,具有 8k 字节可重写闪存只读程序存储器。并具有256 字节的随机存取数据存储器 (RAM) 。单片机兼容标准的MCS-51指令系统。它配备了一个通用的 8 位中央处理器和一个闪存单元。该设备采用ATMEL的高密度、非易失性存储。技术生产,因此会有AT89C51单片机在许多更复杂的系统控制应用中的应用。AT89C51微控制器有40个引脚,32个外部双向输入/输出(I/O)端口,2个外部中断端口,3个16位可编程定

38、时器计数器,2个全双工串行通信端口,2A读/写端口线,但不支持在线编程(仅S系列支持在线编程)。它结合了通用微处理器和Flash存储器,特别是可重复擦除的Flash存储器,可有效降低开发成本。兼容MCS51指令系统8k可重写(1000次)Flash ROM 。引脚如图 3.1 所示图3.1 AT89C51 引脚图3.2.2 AT89C51的主要引脚主电源引脚(2):VCC:电源输入,接+5V电源; GND:地线外部晶振管脚(2个):XTAL1,芯片振荡电路的输入端; XTAL2,芯片振荡电路的输出端控制管脚(4):RST/VPP,复位管脚,该管脚高电平2个机器周期将复位单片机; ALE/PRO

39、G,地址锁存使能信号; PSEN,外部存储器读选择通讯号; EA/VPP,程序存储器的外部选通,如果连接到低电平,则从外部程序存储器读取指令,如果连接到高电平,则从内部程序存储器读取指令。可编程输入/输出引脚(32个引脚):AT89C51单片机有4组8位可编程I/O端口,分别为P0、P1、P2、P3端口,每个端口有8位(8个引脚),一个共 32 个端口0 :8 位双向 I/O 端口,命名为 P0.0P0.7 。每个引脚可以吸收8TTL栅极电流。当端口P0 的管脚第一次写 1 时,定义为高阻输入。 P0可用于外部程序数据存储器,可定义为数据/地址的低八位。在FIASH编程中, P0端口用作原始代

40、码输入端口。 FIASH验证时, P0输出原始码。此时, P0 必须外接上拉电阻。P1口:8位准双向I/O口线,命名为P1.0P1.7 。 P1端口是一个8位双向I/O端口,提供上拉电阻。 P1端口缓冲器可以接收和输出4TTL栅极电流。 P1端口引脚写入1后,上拉至高电平,可作为输入使用。当P1端口被外部拉低到低电平时,它会输出电流,这是由于该部分的上拉。在FLASH编程和验证过程中, P1端口作为低 8 位地址接收。P2口:8位准双向I/O口线,命名为P2.0P2.7 。 P2端口是一个带有上拉电阻的8位双向I/O端口。 P2端口缓冲器可以接收和输出4个TTL栅极电流。当P2端口写为“ 1

41、”时,其引脚被上拉电阻上拉。高并作为输入。因此,当它作为输入时, P2口的管脚被外部拉低,电流就会输出。这是由于上拉。当P2端口用于外部程序存储器或16位地址外部数据存储器访问时, P2端口输出地址的高 8 位。当给定地址“ 1 ”时,它利用外部上拉。在对外部八位地址数据存储器进行读写时, P2端口输出其特殊功能寄存器的内容。 P2端口在FLASH编程和验证过程中接收高位八位地址信号和控制信号。P3口:8位准双向I/O口线,命名为P3.0P3.7 。 P3 端口引脚为 8 个带上拉电阻的双向 I/O 端口,可接收和输出 4 个 TTL 栅极电流。当 P3 端口写“1”时,它们被拉高并用作输入。

42、作为输入,由于外部下拉为低电平,P3端口将输出电流(ILL)。这是由于上拉。另外, P3口还可以作为AT89C51的一些特殊功能口使用,如下图:P3.0 RXD(串行输入端口)P3.1 TXD(串行输出端口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(定时器 0 外部输入)P3.5 T1(定时器 1 外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)端口 3 同时接收一些用于 flash 编程和编程验证的控制信号。3.2.3芯片擦除整个 PEROM 阵列和三个锁定位的电擦除可以通过正确组合控制信号并将 ALE 引脚

43、保持低电平 10 毫秒来完成。在芯片擦除操作中,代码阵列全部写入“1”,并且必须在重新编程任何非空存储器字节之前执行此操作。此外,AT89C51 具有稳态逻辑,可在低至零频率下为静态逻辑,并支持两种软件可选择的掉电模式。在空闲模式下,CPU 停止工作。但 RAM、定时器、计数器、串行端口和中断系统仍在工作。在掉电模式下,RAM 容量被保留,振荡器被冻结,在此期间其他芯片功能被禁用,直到下一次硬件复位。3.3时钟电路和复位电路( 1 )单片机要正常工作,需要一个器件为其提供相对稳定的信号,这就需要用到时钟电路。时钟电路一般由晶振、晶振控制芯片和电容组成。该电路应用广泛,如计算机时钟电路、电子表时

44、钟电路等。引脚 XTAL1 和 XTAL2 分别是该放大器的输入和输出。时钟电路可以在内部或外部生成。外部模式产生的时钟信号连接到 XTAL1 和 XTAL2 引脚上的外部定时元件,外部振荡器将产生自振荡。定时元件通常采用石英晶体和电容组成的并联谐振电路。外部产生的时钟电路引脚XTAL1 接地,XTAL2 连接到外部振荡器。对外部振荡信号没有固定的特殊要求,只要保证脉宽稳定即可。因此,一般使用频率低于12MHz的方波信号。( 2 )复位操作:复位操作是单片机初始化的基本操作。复位的主要作用是将PC初始化为0000H,使单片机从0000H单元开始执行程序。除了正常使用的初始化外,当操作错误或程序

45、运行错误使系统处于死锁状态时,还需要按下复位按钮重新启动单片机。复位电路:复位电路就是用它把电路恢复到初始状态。启动复位电路的方式可分为三种,一种是电路通电后立即进行复位操作;另一种是必要时手动操作;三是根据程序或电路操作的需要自动执行。篡改电路比较简单,大部分只能通过电阻和电容的组合来完成。如果比较复杂,还有三极管等配合程序。时钟电路和复位电路构成了单片机的最小系统电路。图 3.2是最小系统的示意图。图3. 2 单片机最小系统示意图3.4 LCD12864液晶显示电路带汉字库是一种4位/8位并行、 2线或3线串行接口方式,是国标一级、二级点阵图形液晶显示模块简体汉字库;可显示84行1616点

46、阵汉字,也可完成图形显示。低电压和低功耗是另一个显着特点;其显示分辨率为12864,有8192个16*16点汉字,128个16*8点ASCII字符集,利用模块灵活的接口方式和简单方便的操作说明,可组成全中文人机交互图形界面。与其他显示模组相比,液晶显示模组具有巨大的优势,并且显示模组的硬件电路结构和软件程序比其他显示模组要简单得多。并且此模块的价格也略低于其他相同点阵的图形液晶模块。LCD12864显示如图3.3图3.3LCD12864显示的基本特点如下:(1)低电源电压(VDD:+3.0-+5.5V)(2)建立汉字库,提供8192个16 16点真汉字(3)显示方式: STN 、半透明、正显(

47、4) 显示分辨率: 12864点(5) 设置128 个 168点阵字符(6) 通讯方式:串口和并口可选(7)设置DC-DC转换电路,无需加负压(8) 无需片选信号,可简化编程(9) 工作温度: 0 55 ,储存温度: 20 603.5 SLE4442 IC卡部分SLE4442是西门子新一代具有可编程安全码和写保护功能的智能存储芯片。 SLE4442采用两线数据传输方式,符合IS07186-3的要求。 SLE4442 有一个安全逻辑,可以控制存储器的读写操作。无密码只能进行读数据操作,密码验证成功后才能进行数据写操作。3.5.1SLE4442IC卡( 1 ) 32位保护内存( 2 ) 256字节

48、EEPROM( 3 ) 3字节用户密码,密码错误次数: 3次( 4 ) 温度范围:070( 5 )至少100,000次擦除( 6 ) 数据保留期至少十年( 7 )工作电压: 5VIC卡电路如图3.4所示图3.4 IC卡接口电路3.6键盘设计由于本设计中的单片机接口比较紧密,所以本设计中采用了4*4矩阵键盘的接口电路。键盘是单片机系统设计中比较重要的信息输入设备。正确选择合理的设计,可以大大降低设计成本,同时可以简化设备的操作,在很大程度上提高系统的性能。矩阵键盘的电路图如图3.5所示图3.5键盘接口电路3.7报警电路使用单片机输出报警电路是一个非常必要的模块。当IC卡余额不足时,这种情况下单片

49、机P3.7口的输出通过三极管驱动蜂鸣器,发出声音信号进行报警,提醒用户充值,避免出现问题IC卡余额不足导致停水。图3.6是它的示意图图3.6报警电路4软件设计智能IC卡水表,结合智能水表的功能,我们首先考虑以下问题:( 1 )程序应承担的任务:任何程序的设计都有其特定的应用场合和明确的过程要求。它不是随机生成的程序。程序设计的首要任务是理解程序要完成的任务。什么,然后根据任务设计;( 2 )程序的适应性:所谓程序的适应性是指所设计的程序不应该是死板的、单一的。如果程序灵活,可以在以后扩展系统时进行必要的修改,可以进行简化。修改步骤,增加程序的通用性;( 3 )程序的设计方式:程序的设计方式直接

50、影响程序的编程难度、纠错难度和测试难度。单片机系统设计的核心部分是软件程序的设计,硬件系统能否实现给定的功能取决于软件程序编写的成功与否。单片机编程常用的语言有两种:C语言和汇编语言,但最终都必须转换成Intel HEX格式或二进制格式(Binary)文件,才能复制到单片机芯片中。我们在这个设计中使用的编程语言是 C 语言。单片机水表系统的软件设计采用模块化设计思想。这样,一个完整的程序被划分为若干个可以独立完成某些任务的功能模块,每个模块又被划分为若干个子模块,每个子模块相互独立,由主程序模块控制。从结构上看,系统控制软件主要包括主程序、显示驱动程序和IC智能卡驱动程序。从功能上看,系统控制

51、软件主要由IC卡控制程序、按键处理程序和驱动程序组成。采用模块化技术,可以将错误限制在每个模块而不影响整体,提高了系统的可靠性和灵活性,使维护更加方便。4.1主程序设计主程序主要用于完成系统的初始化、IC卡插入卡槽后的检测、信息的读写、键盘输入与处理、异常情况的处理等,从而完成交换信息的功能。主程序流程图如图4.1所示系统初始化系统初始化读 卡充 值用 水校验密码开启水阀充值成功开始扣费屏幕显示开 始图4.1系统总体流程图如图所示,上电后系统会先初始化系统,然后系统开始读取IC卡。读取成功后,系统会通过显示屏进行提示,然后选择是充电还是用水。如果IC卡中的金额不足,会提示您充值。要充值,您必须

52、先验证密码。密码验证成功后,即可进行充值操作。用户输入要充值的金额。如果卡的金额足够,可以直接选择水选项,系统会自动打开水阀开始计费。本设计中的IC卡密码为1111114.2子程序流程图4.2.1充值流程流程图充值阶段,IC卡插入卡槽后,系统会自动读出卡的金额,用户可以自行选择充值金额。充值金额被添加到IC卡中。工作人员完成操作后, IC卡中充值后的余额将显示在屏幕上。充值流程如图4.2所示结结 束开开 始按下充值键按下充值键校验密码校验密码输入充值金额充值成功结束图4.2充值流程图4.2.2扣水程序流程图水表在正常使用阶段即用水阶段实现扣费功能。 IC卡插入卡槽后,系统会读出IC卡的预存金额

53、并显示在显示屏上。操作员按下水键(#),如果预存水量充足,智能水表将打开闸门用水并开始扣费。消费流程如图4.3所示按下用水按键按下用水按键开启水阀开始扣费开始读卡图4.3消费流程流程图5编程与系统调试5.1编程工具Keil在当今社会发展中, 51系列微处理器被广泛应用于各种产品中。 KeilC51是美国Keil Software公司生产的兼容51系列的单片机C语言软件开发系统。与汇编语言相比,C语言有更多的优势。功能更全面,结构更合理,可读性更强,维护更方便,上手更容易。 Keil提供了丰富的库函数和各种编译工具,可以用兼容 51 系列的大多数类型的 MCU 对 51 系列 MCU 进行编程。

54、 Keil uVision系列可以支持单片机C51编程语言,也可以直接设计编译汇编语言。 Keil 提供了完整的开发解决方案,包括 C语言编译器、宏汇编、链接器、库管理和强大的仿真调试器等,通过集成开发环境组合在一起。 Keil uVison 系列是一款非常优秀的程序编译工具,因此被广大单片机设计人员广泛使用。它的一些主要特点如下:( 1 )支持汇编语言、C51语言等MCU设计语言( 2 )支持丰富的产品线,除了51及其兼容内核的单片机外,还新增了对ARM内核产品的支持;( 3 )嵌入式RTX-51实时多任务操作系统( 4 )具有完整的编译链接工具( 5 )可视化文件管理,界面简洁明了( 6

55、) 支持同时在一个工作空间内对多个项目进行编程u Vison 4集成开发环境提供了许多不同用途的窗口。使用这些窗口,可以完成源代码的编辑,反汇编的查看,各种编译调试的输出结果,栈中数据的查看,程序变量的查看。带有仿真波形等源代码编辑窗口;拆卸窗口;监视和堆栈窗口;内存窗口; CPU寄存器窗口;串行窗口;逻辑分析窗口;符号观察窗口。如图 5.1 所示。图5.1 Keil工作界面uvision4集成开发环境介绍( 1 )项目管理:项目主要由三个部分组成,即源文件、开发工具选项和编程指令。单个 uVision 4项目可以生成一个或多个目标程序。开发工具选项可以对应于目标、组或单个文件。 uVisio

56、n 4包括一个设备数据库,可自动设置汇编器、编译器、链接定位器和调试器选项,以满足用户充分利用特定微控制器的需要。要求。 uVision 4可以为片外存储器生成必要的连接选项,并确定起始地址和大小。( 2 )集成功能:集成源浏览器利用符号库,使用户可以快速浏览源文件。使用详细的符号信息优化用户变量内存( 3 )文件搜索功能:在特定文件中进行全局文件搜索( 4 )工具菜单:内容在 V4集成开发环境下启动用户功能( 5 )可配置的 SVCS 接口:提供对版本控制系统的访问( 6 ) PC-LINT接口:对应用代码进行深度语法分析( 7 )英飞凌的EasyCase接口:集成块集代码生成5.2调试结果

57、调试结果完全符合预期要求。各阶段的调试结果如下图所示。5.2.1物理调试本次设计的IC卡智能水表,上电后系统会通过液晶显示屏打开水阀或充值两个选项,根据需要选择相应选项进行操作。5.2.2上电选择接通电源后,系统会显示“打开水阀”和“充电”两个选项。如图5.2所示图5.2上电选择模式5.2.3充值接口使用键盘选择充值选项后,系统会提示输入密码。输入正确密码后,进入充值界面。输入充值金额,然后按确定按钮。如图5.3所示图5. 3 充电模式5.2.4水费单状态IC卡预存水量充足,系统将自动开始供水,同时开始扣费。如图5.4所示图5.4扣水情况本次毕业设计的IC智能水表系统,从系统功能描述入手,分析

58、了控制系统的组成结构和系统组成。首先在硬件设计部分给出了硬件电路设计图,详细介绍了各个组件的原理和功能特点,还详细介绍了各个功能组件与AT89C51单片机的连接.其次,在软件设计部分,给出了系统的流程控制图,并对程序的各个部分进行了分析和说明。在编程和调试部分,主要详细介绍了Keil的开发。最后显示调试结果。综上所述本次设计的智能水表是一种理想的水表计量装置,是一种水费征收和水表管理的自动化仪表,极大地提高了水表计量的准确性,杜绝了水表数据抄错、漏抄的问题。方便供水部门和居民用水。 MZ12864系列读写模块由51单片机控制读写IC智能卡,控制液晶显示等模块。设计智能水表,让用户先买水后用水,

59、实现水费征收自动化。其设计主要包括四个模块:IC卡读写、液晶显示、存储单元、电磁阀控制。通过自己的努力,达到了设计的目的,完成了设计任务。在整个设计过程中,在老师的帮助下,我受益匪浅,学到了很多新知识,为以后的学习和工作打下了坚实的基础。1、 IC智能卡水表实现的功能如下:( 1 )根据购水量自动进行补水、停水操作。当用户将购买的水表卡插入水表时,水表系统会在识别并确认卡有效后自动打开阀门,进行正常供水。一旦用水量达到水表卡购买的金额,水表会自动关闭阀门并切断供水。( 2 )具有自动报警功能。为方便提醒用户提前交水费,当剩余一定的水量时,水表液晶显示屏应显示“余额不足”字样,提醒用户及时购水。

60、当余额低于875时,水表报警装置提醒用户,并发出蜂鸣声提醒用户缴费。( 3 ) 可随时显示累计用水量和卡余额。为方便用户随时了解自己的用水量,用户可以通过水表的LCD液晶显示屏查看卡的累计用水量和可用水量(指卡表中的剩余水量) .( 4 ) 可累积购水。当用户购水后插入IC卡时,水表自动累计水表剩余水量和本次购水量。 LCD液晶显示器显示累计购水量。( 5 )加密功能,对IC卡和水表信息进行加密,做到一卡一表,不易被仿造和非法使用。2 、智能水表的突出特点是:整个系统联网,采用上位机管理系统,使水表抄表高度自动化,收费方便快捷,大大节省了人力、物力、财力;部门处理:智能网络水表采用低功耗设计。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论