基于单片机的自动取款机的设计与实现_第1页
基于单片机的自动取款机的设计与实现_第2页
基于单片机的自动取款机的设计与实现_第3页
基于单片机的自动取款机的设计与实现_第4页
基于单片机的自动取款机的设计与实现_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

目录TOC\o"1-2"\h\u引言 21绪论 41.1设计目的及意义 41.2国内外发展现状 41.3设计部分及论文结构 42系统设计 62.1ATM系统关系图 62.2ATM相关对象 62.3ATM主要功能 63软件设计 83.1系统概述 83.2存储器部分 83.3键盘扫描部分 94硬件设计 104.1单片机 104.2LCD12864液晶显示设计 114.3蜂鸣器发声部分 124.424C02存储部分 124.5键盘模块部分 135系统仿真调试 145.1单片机软件仿真 145.2单片机硬件仿真工具Proteus 145.3结论 145.4问题描述及解决 146实物制作及调试 156.1元器件简介 156.2元器件焊接 156.3实物测试 15总结 19引言由于社会信息化的发展,与人类生活息息相关的各种机器也变得更加智能化,自动化。银行作为用来流通资金的金融机构之一,它的存在方便了人们的金钱往来和经济沟通。银行的用户越来越多,业务也多种多样。对于用户来说,它以吸收存款的方式,把社会上闲置的财产资本聚集到一起,急需资金的客户可以向银行申请贷款,银行审核后,如果条件符合,就可以把资金贷款给他;对于银行来说,银行可以作为买卖双方支付的媒体中介。买卖双方办理大额资金往来时,可以以银行为中转站,这样双方的利益都可以得到保障,所以需要与人类经济做日常交流。于是自动取款机就在这样的情况下产生了。它不仅提高了银行业务的办理速度,给用户提供了更多的选择空间,还可以为用户提供了24小时的便利服务,只要用户有需求,就可以随时使用。所以我决定学习自动取款机的工作原理。自动取款机,也叫ATM机,是指各个银行在不同的位置放置的同种机器,用一张银行卡上的磁带来存储客户的信息材料,使得用户可以通过这个机器进行简单的柜台业务,例如存取现金、更改密码、查询余额等。ATM自动取款机由三部分组成,整个个体包括共享器(即计算机的显示终端)、数据库和自动取款机的系统。使用者在自动取款机上实现的存取款、查询账号余额和修改账号密码等体现的是它的系统功能。绪论设计目的及意义现如今ATM自动取款机已经遍布校园、商场、等各种各样的地方,它完全解决了用户排着队在银行办理业务的困扰,轻松满足了人们转账缴费、查询维护等各种各样的需求。更重要的是,它24小时不间断的在线式服务,是全人类文明进步的一大亮点。也因此可以看出自动取款机对人类社会的进步是何等重要。ATM机虽然可以帮助银行扩展业务,提高服务,但是也会出现一些面临排队等候的烦恼。还有很多对于手机支付来说,就显得复杂许多的操作。现如今,经常会听说ATM机出故障的事情,有的时候会吞钱,有的时候吞卡,还有的会莫名其妙的吐钱。所以我想要更加的了解自动取款机的一系列操作,并设计出一个比较基础的自动取款机系统,希望可以实现出它的基本的银行服务功能。国内外发展现状1963年,谢泼德·巴伦提出了一个想法,就是想要设计一种随时可以取钱的装置。1967年6月27日,他成功为巴克莱银行发明了世界上第一台自动取款机,,但是最初的自动取款机功能还不完善,一方面,彼时的ATM机虽然基本成型,但是银行卡还没有发明出来,提取现金用的是一张印着凹凸记号的指令牌,指令牌上上印着10英镑,塞进机器后就只能吐出10英镑而没有其他金额的选择;另一方面,服务体验差,操作界面没有语音提示,而且常常出现一些系统故障。两年之后,汉华银行开始推出磁条卡用于自动取款机,同时推出了自己的自动取款机。1985年,自动取款机可以跨行进行存取款业务,打破了单个银行的局限性。1999年起,美国商业街区的ATM机开始免收跨行取款的1美元手续费,后来又取消了异地手续费。1987年,我国在珠海安置了第一台自动取款机。2015年我国设计并研发了第一台可以自动识别人体面貌的自动取款机。告别了银行卡的束缚,只需要人脸扫描,就可进行取款。设计部分及论文结构本课题是在单片机的基础上,研究出一种自动取款机系统。此系统包含硬件部分和软件部分,它的核心控制器是51单片机(STC89C52),内部性能完全可以满足自动取款机所需要的功能要求。此外还包括4X3的矩阵键盘,来克服输入的数字量太多引起的的麻烦;液晶显示器为LCD12864,顾名思义,其显示分辨率为128X64,满足了自动取款机页面显示的需求;采用了铁电存贮器(24C02),用电子计算机按照预先编制好的程序实现自动取款机系统的大致性能,涵盖登录账号,修改密码,存取现金,余额查询等功能。第一章:绪论部分,查阅有关自动取款机的相关资料,了解了它的发展现状。简单叙述了自动取款机的发展背景和国内外的发展动态。同时表达出自己将自动取款机作为研究对象的选题意义。第二章:系统的描述了自动取款机的整体框架,以及相关对象。并简单描述了自动取款机的各种功能和操作方法。第三章:从插卡,初始化系统界面,输入密码,到选择要办理的业务,设计出一个完整的流程图,然后从软件方面系统的两大部分,即包括存储器和矩阵键盘,具体讲流程部分的设计。第四章:以单片机为核心,构建出自动取款机的硬件系统。然后从几个模块分别描述不同部分的电路,其中包括存储器电路,键盘模块电路,蜂鸣器发声电路,液晶显示电路。已达到本课题所需的设计要求。第五章:本章为系统仿真的调试部分,从软件和硬件两部分来综合调试,并发现错误,分析原因并修改,直到成功运行出来为止。第六章:简述实物所需的元器件的介绍和实物的焊接制作,经过电路的调试排除故障并修改,直到实物可以正常操作,并达到预期效果。第七章:总结了制作毕业设计以来的感悟和学到的科学知识,并反思自身情况的不足,以及以后努力提升自身水平的决心。系统设计ATM系统关系图本课题需要在51单片机的基础上实现出一种供人们自助取款的系统,它采用的单片机为STC89C52,它在断电情况下,RAM的内容可以被保存,不会造成数据丢失和混乱,完全可以满足本课题需要的单片机的性能需求。本系统采用LCD12864液晶显示器,体积小,功耗低。由于需要多次输入数字,加入了4*3矩阵键盘。采用的是24C02存储器,它在工业控制系统中有大量的应用。硬件包括STC89C52、4X3矩阵键盘、液晶显示器、24C02芯片存储器和5V有源蜂鸣器。软件系统包含主程序、中断程序、键盘扫描程序、LCD12864驱动程序等。ATM机常用的功能可列成如图2-1所示的框架图。图2-1ATM系统功能图ATM相关对象用户:持卡到自动存取款机上,按机器界面提示进行相关业务操作。系统:可以沟通用户和数据库两者,满足用户的要求,并将用户的操作更新到数据库中。数据库:储存账号的所有信息,并将系统传送过来的信息进行自动更新。ATM主要功能(1)登录界面首先插入银行卡,用户进入系统时首先要在“汉语”或“ENGLISH”二者中选择一种,选好相应的语言类型后,通过按键输入用户正确的登录密码,就能进入主界面。(2)主界面此菜单栏中包含两种功能选项:一种是“修改密码”“取款”“查询余额”的按键,另一种是“取卡”的按键,点击即可进行相关服务。(3)修改密码功能用户进入系统后可以通过按键可以将旧密码修改成新的密码。(4)查询余额功能用户进入系统后可以通过按键查看,系统即可显示出用户的账号中现存的余额。(5)取款界面当用户在主界面点击取款的按键时,能够转换到显示取款的窗口:进入取款窗口后,首先屏幕上会出现三种取款金额:100元、200元、300元等,如果没有用户想要取出的现金额度,用户可以通过点击按键的数字输入相应的现金数量(需要注意的是输入金额必须是100的倍数,否则屏幕上会显示出错),然后点击确认,便可进行取款。确认取出现金后,系统会再一次让用户确认取出现金的金额是否相符,待用户确定后,用户就能把ATM机放出的钞票取出,并且系统可以将数据传送到用户所在的数据库文件中进行更新,防止信息出错,方便用户查阅。

软件设计系统概述二十一世纪以来,国内以51单片机为内核的单片机不断更新,功能也越来越强大。外国的大部分公司也不断推出了一系列把51单片机作为基础的集成开发环境。本课题选择的是STC89C52。它是一种具有8位中央处理器的新型单片机。具有低功耗、高性能的特点。LCD12864液晶显示器则完美的完成了人机对话模块。它是一种双向传输工作,一方面实现了利用单片机读取相关信息并反映到液晶显示器上,另一方面实现了将从液晶显示器中读取到的信息反映到单片机。系统流程图如图3-1所示,分为LCD页面的初始化、输入密码、业务选择等几部分组成,基本实现了本课题所想要达到的目的。图3-1系统流程图存储器部分24C02存储器是2048位的存储器,选用它的原因是可以保证停电时相关信息不会丢失。此程序完成了对24C02的数据的读取和写入,也有掉电也可存储信息的能力。如图3-2所示,首先进行的是系统的初始化操作,然后读取数据口传输过来的信息,根据内容选择,既可以将数据保存到存储器内,又可以读取存储器中的相关信息。图3-2存储器流程图键盘扫描部分此模块中,我通过硬件分析,为了减少大量按键带来的麻烦,加入了4X3矩阵键盘,这样一方面可以实现数字的输入输出,另一方面还可以加入一系列的功能操作。键盘处理程序的主要作用就是系统检测键盘,有按键则区分按键的类型,判断出是任务键还是数字键,数字键则进行显示和存储,功能键则执行相关任务;如果没有,则返回上层,继续检查是否有用户是否按下键盘。此过程如图3-3所示。图3-3键盘处理流程图硬件设计单片机单片机现在已经应用于各种行业,这个芯片不仅仅是完成某个功能,它是在这个芯片上集结了一个完整的计算机系统,所以人们经常将单片机和微处理器、微机混为一谈,但它们并不相同。微处理器包括三部分,除控制器之外,还有支撑电路和运算器,它通过二进制的运算规则来整理信息,然后实现各种指令。微处理器中,逻辑部件的主要工作就是进位、溢出,寄存部件的工作是将逻辑部件计算后得到的结果进行存储,最后用电信号进行转化,传送给其它的部分。微机是一个计算机,它可以独立运算,包括存储器、I/O等器件,同时还有微处理器当做它的中央处理器。因此,单片机是比微机更小更集结简约的器件。单片机的电路设计如图4-1(1)所示。如图4-1(1)单片机电路设计如图4-1(2)所示,单片机把所有器件都集结到一个硅片上,既可以处理数据,又可以存储数据。由于它们都集中在一个芯片上,所以重量特别轻,而且特别小,价格和其他元件相比也较为便宜,用电量也较少。它虽然相当于一个微型计算机,但是使用起来却更加便利,控制能力要高于其他的电子元件,运行起来也更加快捷,所以也大部分社会领域也使用的比较广泛。图4-1(2)单片机结构图LCD12864液晶显示设计LCD12864可以将数据转化成的文字和符号来显示出用户所需的信息,反映给用户,也可以将用户执行的操作,反过来传送给存储器进行储存。它的可视面积大,方便用户观察使用,而且在低电压的情况下也可以工作。如图4-2是它的引脚功能和使用连接方法。图4-2LCD12864及它的电路应用连接1VSS-模块的电源地2VDD-模块的电源正端3V0-LCD驱动电压输入端4RS(CS)H/L并行的指令/数据选择信号;串行的片选信号5R/W(SID)H/L并行的读写选择信号;串行的数据口6E(CLK)H/L并行的使能信号;串行的同步时钟7DB0H/L数据08DB1H/L数据19DB2H/L数据210DB3H/L数据311DB4H/L数据412DB5H/L数据513DB6H/L数据614DB7H/L数据715PSBH/L并/串行接口选择:H-并行;L-串行16NC空脚17/RETH/L复位低电平有效18NC空脚19LED_A(LED+5V)背光源正极20LED_K(LED-OV)背光源和负极蜂鸣器发声部分蜂鸣器是一种用来发声的电子器件,一般是装在控制板上面。他的用途十分广泛,一般可以产生声音的电子产品中都是使用的蜂鸣器。拿电脑来说,蜂鸣器就是电脑开机前电脑自检时的一种警报器,会及时反映出电脑硬件的情况,比如说响一声,就是正常,连续短响,就是内存没有插实。一般可以分为有源自激型蜂鸣器和无源他激型蜂鸣器。本文采用的是5V有源蜂鸣器。电路图上的画出一个圆形的标示的位置用来装蜂鸣器的,安装时必须分清楚蜂鸣器的正负极,然后对应安装。该系统还增加了三极管Q1,它充当电路中的开关。电路图如图4-3所示。图4-3蜂鸣器发声电路图24C02存储部分24C02芯片介绍存储器是利用电平高低来存储数据的地方,它具有记忆的能力,它的记忆元件用“0”和“1”组合的方式来来存储信息数据,这也是它的两种稳定状态。所以日常使用的十进制数和字母符号等必须转化成二进制数才能存储到存储器中。每个二进制代码存到存储元中,然后组合成一个存储单元,大量存储单元则构成一个存储器。如下图4-4(1)所示,是24C02的存储器引脚图。图4-4(1)24C02的引脚图及电路图24C02引脚说明:WP引脚用于写保护硬件的数据,当它接地时可以正常的读写数据,接电源时,则对芯片起写保护的作用。SCL引脚起串行时钟的作用,数据写入时上升沿起作用,并传送数据至存储器,读出时下降沿起作用,读出数据。SDA引脚起双向传输数据的输入输出端,容量扩展时,可以与多个SDA引脚相连接。A2A1.AO地址脚是器件的地址选择引脚,但是一个总线上最多只能扩充八个元件。键盘模块部分使用单片机时,矩阵键盘最常见,它用于数据输入的部分。键盘是键的组合。通常按队形排列。每个按键都是一个开关,只有在按下按键时他们才闭合,此时称为短路状态,一般情况下按键的两个端点断开,则是处于断路状态。尽管矩阵键盘的的间接复杂,但优点是增高了I/O口的使用率。如图4-5所示,本课题使用的是4X3矩阵键盘。它一共有12个键,可以分成两个部分,0~9这十个数字键是一部分,另一部分包括两个特殊符号键“*”和“#,P30到P33为X行、P34到P36为Y列。采用程序扫描法,CPU每次通过接口时,对某一行X输出扫描信号0,然后通过输入列线Y的状态来确定键闭合的位置。图4-5矩阵键盘模块系统仿真调试单片机软件仿真首先正确安装Keil5软件,建立一个工程,点击Project,选择第一个,建立新工程,给个名字,点击确定,选择STC89C52,选择第三个"ProjectWindow"后出现一个工程栏,此时工程已建立好,然后开始创建项目,在窗口编写程序,最后点击“build”和“rebuild”进行编译,观察下方“projectoutput”,有错误则进行修改,无错误便说明编译完成。点击"optionfortarget"按钮,进入界面,选择"Output",选中"CreatHEXfile"即可生产出HEX文件,即可烧录程序。单片机硬件仿真工具Proteus安装了proteus软件,首先双击打开proteus,点击左边“componentmode”按钮,然后单击“P”,寻找自己所需的元器件,单击进行选择。通过连线将所选元器件进行连接,然后点击“play”开始仿真,如果可以正确得出想要的仿真效果,则仿真成功,否则检查出错原因,直到仿真成功。下一步则需要将烧写的程序,即HEX文件,装入到STC89C52中,双击MCU,在弹出的选项中选择HEX文件,点击运行按钮,查看运行后的效果。如果仿真失败,则需要从软件方面和硬件方面分析原因,修改错误,并重新仿真,直到符合预期的结果为止。结论在PROFEUS环境下运行。结果如图如5-1所示:图5-1电路仿真图经最后的修改测试,液晶显示屏可以正确执行操作,键盘可以正常使用,而且可以达到预期的功能。问题描述及解决(1)仿真运行效果与设计要求不符首先单击停止按钮,停止运行当前仿真程序。仿真运行不出来,并不一定是硬件的问题,这需要从软件系统和硬件系统两方面来排除错误,然后进行修改。然后按步骤重复调试运行操作,直到仿真符合运行结果为止。硬件系统对自动取款机系统的实现来说尤为重要,一个正确完好的硬件电路可以验证自动取款机的实物是否符合本课题一开始的设想。由于实物的焊接需要用到焊锡丝,电烙铁之类的工具,所以在排除失误的时候,不仅要仔细观察它是否是按照设计的原理图来焊接的,还要测试它是否有断路和短路等情况的发生,并连接正确。检查完电路后具体分析,LCD12864液晶显示屏不显示内容,而且按键的时候没有发出声音。于是检查了一下它的线路,并咨询了同学,发现线路错误,改正以后可以正确显示。通过查阅相关资料并咨询了老师,了解了单片机发出的控制信号偏弱,不将信号放大的话,就无法使蜂鸣器正常运行。蜂鸣器则是使按键发声的电子元件,所以经分析,在发声电路添加了一个三极管,可以放大单片机发出的的控制信号,从而使蜂鸣器正常工作。测试后,按键时可以发出声音,问题得到了解决。实物制作及调试元器件简介电阻:起限流作用,用万用表欧姆档测量电阻,可以直接读取数据。三极管:三极管是半导体基本元器件之一,具有电流放大作用,电容:加上电压可以用来储存电荷的元件。电源接口:提供电源输入的入口,使电源给设备供电。元器件焊接焊接时应该按一定的顺序,上一道工序不可以影响下一道工序的操作。焊接时,要将引脚和电路板同时均匀加热,引脚要留出3厘米左右,且焊锡量需要与焊接孔差不多大小。剪引线时,线路板应斜于地面,尽量使管脚落在地板上,最好留焊点在1.5毫米。实物的电路要焊接完好,不能出现出现焊接点短路的状况,不然会造成实物无法实现,影响毕业设计制作的进程。实物测试通电,页面有反应,液晶显示屏显示“中国农业银行欢迎您,请插入磁卡”。通过按键模拟此卡插入,然后进入修改密码的页面。液晶显示屏显示“中国农业银行,请输入密码”,输入六位数密码之后,点击确认。(密码错误超过三次后,银行卡会被冻结。)密码输入正确后,页面变为业务选择,液晶显示屏显示“中国农业银行,请选择业务”。选择余额业务时,页面显示银行的余额数,然后查询后退出。修改密码时,页面直接进入“请输入新密码”页面,直接点击想要更换的新密码,如输入错误,则按删除键,然后确认后即可完成。取款时,有三个选择。金额分别是100、200和300,点击任意一个,即有“正在为你准备钞票”,通过按键模拟进入下一步骤,

温馨提示

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

评论

0/150

提交评论