数电自动售货机报告课设_第1页
数电自动售货机报告课设_第2页
数电自动售货机报告课设_第3页
数电自动售货机报告课设_第4页
数电自动售货机报告课设_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

1、武汉理工大学数字电子技术课程设计课程设计任务书学生姓名:王耀辉专业班级:通信1304班指导教师:撒继铭工作单位:信息工程学院题目:自动售货饮料机控制电路的设计与实现初始条件:本设计既可以使用计数器、比较器、脉冲发生器等和必要的门电路等,也可以使用单片机系统构建。用数码管、LED灯显示结果。要求完成的主要任务:(包括课程设计工作量及技术要求,以及说明书撰写等具体要1课程设计工作量:1周。2、 技术要求:1) 售货机只接受5角和1元的硬币,可以用按钮代替硬币的投入。投入硬币的总金额用两位数码管显示,最大投入金额为9.5元。2) 售货机可以自动出售3种饮料,售价分别是0.5元,1元和1.5元。当顾客

2、完成投币后,根据投入金额,各饮料对应的LED将亮起(如投入1元硬币,0.5元和1元饮料的LED亮起,表示可以购买0.5元或1元饮料)。3) 顾客根据自身需要按下各饮料对应的按钮,每按一次掉出一瓶饮料,两位数码管显示剩余金额,LED继续指示可购饮料的种类;4) 顾客按下“找零”按钮将使机器发出找零信号,两位数码管清零。5) 确定设计方案,按功能模块的划分选择元、器件和中小规模集成电路,设计分电路,画出总体电路原理图,阐述基本原理。3、 查阅至少5篇参考文献。按武汉理工大学课程设计工作规范要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。时间安排:1、2015年,月,日,布置课设具体实施计

3、划与课程设计报告格式的要求说明。2、2015年A月一日至2015年7月一5日,方案选择和电路设计。3、2015年八月_5_日至2015年八月_9_日:电路调试和设计说明书撰写。4、2015年八月日,上交课程设计成果及报告,同时进行答辩。指导教师签名:系主任(或责任教师)签名摘要1ABSTRACT21绪论31.1 设计背景31.2 应用前景31.3 设计目的和意义42总体方案设计52.1 自动售货系统结构52.2 方案比较选择63单元电路设计83.1 硬件单元设计83.1.1 中央控制元件AT89C5283.1.2 AT89C52简介83.1.3 主要特性93.1.4 管脚说明93.1.5 实验

4、用模块113.1.6 投币购买以及清零模块123.1.7 可供购买显示模块133.1.8 数码管显示模块133.2 软件单元电路143.2.1 编程语言与软件143.2.3 protues简介153.2.4 总体设计方案153.2.5 子程序设计方案164整体电路设计184.1 整体电路图184.2 整体工作原理说明185Protues仿真结果与分析196实物焊接及调试236.1 实物焊接图236.2 调试中出现的问题247总结与体会258参考文献26附录1元件清单27附录2源程序28武汉理工大学数字电子技术课程设计摘要本文设计了一种以INTEL公司的AT89C52单片机为核心的自动饮料售货机

5、装置的控制系统,详细介绍了自动饮料售货机控制系统的方案设计、硬件选择、软件规划和编写,并重点描述了自动饮料售货机控制系统的工作原理、系统设计、软件编程的原则和技巧。该系统以单片机AT89C52芯片为核心,采用集中控制方式实现了对自动饮料售货机全过程的自动控制。本系统选择6个独立键盘按键作为货币投入端,饮料选择端和清零端,实现了投币,饮料选择功能,用两个7段共阳极数码管显示货币数以及找零数,用三个LED灯显示可供选择的饮料。此外,系统程序采用KeiluVision4软件进行程序的编写和编译,采用C语言编写程序,用Proteus7软件进行仿真,stcisp-v4.79软件和USB转串口线驱动软件下

6、载程序。总体来说,通过实物的安装调试,本次课程设计基本达到了设计指标要求,实现了投币,选择饮料,购买饮料,找零等功能。关键词:自动售货机,AT89C52单片机,C语言程序,数码管显示3ABSTRACTInthispaper,thedesignofthecontrolsystemofautomaticbeveragevendingmachineisbasedonINTELcompanyAT89C52microcontrollerasthecore.Itdetailedlydesctribesthebeveragevendingmachinesystemdesign,hardwareselecti

7、on,softwareplanningandpreparation,andemphaticallydescribestheprincipleandskillworkprinciple,beveragevendingmachinesystemdesign,softwareprogramming.ThesystemisbasedonAT89C52chipasthecore,adoptsthecentralizedcontrolmethodtorealizetheautomaticcontrolofthewholeprocessofbeveragevendingmachine.Inthissyste

8、m,sixindependentkeyboardkeysaretakenasmonetaryinputend,beverageofchoiceandclearterminal,torealizethecoin,beverageofchoicefunction.TwoofsevencommonanodeLEDaretaketodisplaycurrencyandthenumberofchange.Besides,ThreeLEDlightsaretakentodisplayalternativebeverage.Inaddition,ThesoftwareofKeiluVision4istake

9、ntoprepareandcompileprocedures,usingCIanguageprogram,ThesoftwareofProteusistakentosimulateinthesystem.Thesoftwareofstcisp-v4.79andUSBtoseriallinedriveraretakentodownloadprogramma.Ingeneral,thedesignrequirementsaremetinthecurriculumdesigninrealizingthesefunctionsinthecoin,drinkschoose,drinksbuyandcha

10、nge.KeyWords:AutomaticBeverageVendingMachine,AT89C52,CLanguage,DigitalTubeDisplay1绪论1.1 设计背景随着劳动密集型的产业构造向技术密集型社会转变,自动售货机日趋盛行,主要用于公共场合,且种类繁多。一般的自动售货机由钱币装置、指示装置、贮藏售货装置等组成。钱币装置是售货机的核心,其主要功能是确认投入钱币的真伪,分选钱币的种类,计算金额。如果投入的金额达到购买物品的数值即发出售货信号,并找出余钱。指示装置用以指示顾客所选商品的品种。贮藏售货装置保存商品,接收出售指示信号,把顾客选择的商品送至付货口。一般售货机的钱币

11、装置由投币口、选别装置、确认钱币真伪的检查装置、计算金额的计算装置和找钱装置组成。70年代以来,出现了采用微型计算机控制的各种新型自动售货机和利用信用卡代替钱币并与计算机连接的更大规模的无人售货系统,如无人自选商场、车站的自动售票和检票系统、银行的现金自动支付机等。1.2 应用前景现在,自动售货机产业正在走向信息化并进一步实现合理化。例如实行联机方式,通过电话线路将自动售货机内的库存信息及时地传送各营业点的电脑中,从而确保了商品的发送、补充和商品选定的顺利进行。进入21世纪时,自动售货机将进一步向节省资源和能源以及高功能化的方向发展。从自动售货机的发展趋势来看,大量生产,大量消费以及消费模式和

12、销售环境的变化,要求出现新的流通渠道,而相对的超市,百货购物中心等新的流通渠道的产生,人工费用也不断上升,在加上场地的局限性和购物的便利性等这些因素的制约,无人自动售货机作为一种必须的机器也就有武汉理工大学数字电子技术课程设计了其相当可观的前景。1.3 设计目的和意义本次课程设计是自动饮料售货机控制系统,可用于简单的自动饮料售货机。本次设计采用手动按键控制,数码管显示,简单清晰,操作简洁,以AT89C52为核心,C语言编程,提高了系统的稳定性,保证了自动售货机能够长期稳定的运行,提高我们的编程能力以及实际动手能力,对数电,对0和1的世界有一个更新的认识。4武汉理工大学数字电子技术课程设计2总体

13、方案设计根据设计要求,自动售货饮料机主要由四个模块构成,即投币模块、选择购买模块、找零模块和显示模块(余额显示和可购买类型指示灯显示)。按照此思路,可以用数字芯片设计,也可以用单片机系统设计,两种设计方案如下。2.1自动售货系统结构自动售货机是集光、机、电一体化的独立机构,它只需要顾客投币和按购物键选择即可自动售货及退找零钱,其工作程序如图1。顾署投币计算累计段币金额显示可以购买的饮料r顾客迭择购买饮料柏除饮料金额井显示余额顾客选择继续购买饮斜、投币或找零结束图1自动售货机工作程序售货机的工作流程是:(1)用户投币口送入货币-按按键,程序自动计数(2根据金额LED显示显示可供选选择的商品。(3

14、)顾客选择商品,程序计算余额(4)数码管显示余额。(5)系统复零,完成售货2.2方案比较选择案;1:电路从两部分输入,第一部分通过开关闭合模拟投币,投币后进入计数器74LS161和二进制全加器74LS283进行累加,通过数码管显示投币总值。再通过数值比较器74LS85比较可以购买不同价格的饮料类型。另一部分通过开关闭合模拟选择饮料,选择货物后用编码器和数码管显示饮料价格,最后将投币总值和饮料价格一起通过减法器,做差值后显示。原理框图如图2所示。图2方案一原理框图万案2:用单片机实现自动售饮料功能,通过编写程序来控制数码管上金额的显示和各种价格的饮料对应的LED灯显示,通过按键的操作来实现投币,

15、买饮料和找零。原理框图如图3所示,系统搭建图如图4所示。46投币数码菅显示余额购买按 键找零按 键单济AT89C5可购买指示灯输入控制图3方案二原理框图品振,复 位电路等输出显示外围功能器件图4单片机系统搭建图分析得出,方案一和方案二都可行。但是,方案一需要使用74LS161,74LS283,74LS85等芯片,电路组成比较复杂,焊接电路花费的时间较长,不容易做出实物。而方案二使用单片机思路清晰,电路简单易焊接。综合考虑,我选择方案二,因此,硬件需要按键控制,LED显示,数码管显示和AT89C52核心芯片3单元电路设计3.1硬件单元设计3.1.1中央控制元件AT89C52本次设计中,中央控制元

16、件采用MCS-5彳系列单片机中的AT89C52芯片,其引脚图女口下图5所示.PJT附DP3?AW?P34TTOPJlrtNTlP32/1HT0P3IHXDPiOrttXOP2P2&414EAPSEM4*P2*dM4Hdijtd-'P23/A11-JP22/A1D、P2gP2BMidiH30TAD7PO? /ADfl _ -P0SAD5PO JAD4P0 3/AD3P0 2/AO2 PO vApi POCyADCAT&KS2RSTKYALJXTAL1Jf图5AT89C52引脚图3.1.2 AT89C52简介AT89C52是一个低电压,高性能CMOS8再片机,片内含8KB的

17、可反复擦写的Flash只读程序存储器和256B的随机存取数据存储器(RAM,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。AT89C5

18、2有PDIP、PQFP/TQF及PLCC等三种封装形式,以适应不同产品的需求。3.1.3 主要特性(1)兼容MCS5指令系统(2) 8k可反复擦写(>1000次)FlashROM(3) 32个双向I/O口(4) 256x8bit内部RAM(5) 3个16位可编程定时/计数器中断(6) 时钟频率0-24MHZ(7) 2个串行中断(8) 可编程UART串行通道(9) 2个外部中断源(10) 共6个中断源(11) 2个读写中断口线(12) 3级加密位(13) 低功耗空闲和掉电模式(14) 软件设置睡眠和唤醒功能3.1.4 管脚说明(1) VCC供电电压,一般接+5V电压(2) GND接地。(3

19、) P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器或程序存储器。它可以在总线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在FIASH编程时,P0口作为原码输入口,在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻(4) P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4个TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在F

20、LASH编程和校验时,P1口作为第八位地址接收。(5) P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“T时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASHS程和校验时接收高八位地址信号和控制信号。(6) P3口:P3口管脚是8个带内部上拉电阻的双向I

21、/O口,可接收输出4个TTL门电流。当P3口写入“T后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。(7) P3口也可作为AT89C5口的一些特殊功能口,如下所示:P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INTO(外部中断0)P3.3/INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机

22、器周期的高电平时间。(8) ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6o因此它可用作对外部输出的脉冲或用于定时目的。(9) PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次PSEN有效。但在访问外部数据存储器时,这两次有效的PSENB号将不出现。(10) EA/VPP当EA保持低电平时,则在此期间外部程序存储器(OOOOH-FFFFH否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET当/EA端

23、保持高电间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP。(11) XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。(XTAL2来自反向振荡器的输出。3.1.5 实验用模块内部时钟电路及复位端连接如下图:30pF>XTAL-AXTAL.RST1髭3T Jj.7二PRPPPPPP.5启r图6内部时钟电路及复位端连接口仝时钟电路:XTAL1芯片内部振荡电路输入端。XTAL2芯片内部振荡电路输出端。XTAL1和XTAL2是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片内振荡器,或者是器件直接由外部时钟驱动。图2.1.3中采用的是

24、内时钟模式,即采用利用芯片内部的振荡电路,在XTAL1XTAL2的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振荡。一般来说晶振可以在1.2?12MHz之间任选,甚至可以达到24MHz或者更高,但是频率越高功耗也就越大。在本实验套件中采用的11.0592M的石英晶振。和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到频率微调作用。当采用石英晶振时,电容可以在20?40pF之间选择(本实验套件使用30pF)。复位电路:在单片机系统中,复位电路是非常关键的,当程序跑飞(运行不正常)或死机(停止运行)时,就需要进行复位。复位引脚RST(第9管脚)出现2个机器周期以上的高

25、电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。复位操作通常有两种基本形式:上电自动复位和开关复位。图6中所示的复位电路就包括了这两种复位方式。上电瞬间,电容两端电压不能突变,此时电容的负极和RESET相连,电压全部加在了电阻上,RESET的输入为高,芯片被复位。随之+5V电源给电容充电,电阻上的电压逐渐减小,最后约等于0,芯片正常工作。和电阻仪器并联在电容的两端为复位按键,当复位按键没有被按下的时候电路实现上电复位,在芯片正常工作后,通过按下按键使RST管脚出现高电平达到手动复位的效果。一般来说,只要RST管脚上保持10ms以上的高电平,就能使单片机有效的复位

26、。图中所示的复位电阻和电容为经典值,实际制作是可以用同一数量级的电阻和电容代替。3.1.6 投币购买以及清零模块投币系统是自动售货设计当中比较重要的一块,涉及到货币识别系统,对于识别货币器是如何设计、如何工作的,在这里将不做进一步的研究,这里只用单片机研究输入是如何实现的。在本次设计中用P1.0和P1.1上的两个按键来代替投币0.5元与投币1元,投币时,按键按下,给 实P1.0/P1.1 一个低电平,通过程序控制,现加法计数。P1.2、P1.3、P1.4 口分别表示购买饮料A、B、C,购买时,按键按下,给P1.2/P1.3/P1.4一个低电平,通过程序控制,实现减法计数P1.5表示清零,案件按

27、下是,通过程序控制,实现清零。具体代码将在后面介绍,投币模块和购买模块电路图连接如下o o CHANGE JZZL.图7投币购买以及清零模块3.1.7 可供购买显示模块显示模块:用端口P0.0、P0.1和P0.2作为可购买指示输出端,分别表示可购买0.5元、1.0元和1.5元的饮料。由于二极管具有具有约0.7v的压降和约20mA的限制电流,故选择220V的限流电阻,电路图连接如图8.P0.0/AD0P0J/AD1PO 3/AO3PD.4/AD4图8可供购买显示模块3.1.8 数码管显示模块用端口P2.0-P2.7,P3.0-P3.7作为显示输出端,连接数码管显示余额。由于数码管存在一定的最大限

28、制电压,故需要外接限流电阻。P2CWAS P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2J5W14P27/A15 23 W24 >25 26J2Z.P3 0IRKO P3JJ7XD P3.2|NTC T内窃丽 TP3.4/T0P3.5TT1F3.5/VWP37ARD 10 >11 >12 1311斗 15ffiFiitiiiJ C IF J ii3R24 IIT图9数码管显示模块3.2软件单元电路321编程语言与软件C语言是编译型程序设计语言的一种,它兼顾了各种高级语言和汇编语言的特点。使用语言进行程序设计已经成为单片机软件开发的主流。其有

29、以下优点:1、 不懂得单片机的指令集,也能编写完美的单片机程序;2、 程序具有坚固性:数据被破坏是导致程序运行异常的重要因素;3、 提供常用的标准函数库,以供用户直接使用;4、 有严格的语法检查,错误很少,可容易地在高级语言的水平上迅速地被排除。因此,本设计使用被广泛应用的KeiluVision4语言编译器为开发环境,进行了单片机的C语言程序设计。323protues简介Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。目前国内推广刚起步,但已受到

30、单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVRARM8086和MSP430等,2010年增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLA等多种编译器。使用Prote

31、us开发环境进行培训,在不需要硬件投入的条件下,对单片机的学习比单纯学习书本知识更容易接受,更容易提高。实践证明,在使用Proteus进行系统仿真成功之后再进行实际制作,能极大提高单片机系统设计效率。5、 2.4总体设计方案当系统启动后先进行初始化,然后开始进行按键扫描,等待按钮被按下,从而进入相应的子程序处理部分,其中子程序主要包括键盘扫描程序,显示子程序等。其流程图如图10所示。S sttnAai兀耳钱斟为0元-一耳、Y 曳做 Ml.57t图10程序设计流程图325子程序设计方案1、运算子程序2、运算子程序包括输入五角和输入一元,减去5角,减去一元,减去一元五角五种,以输入五角为例。由于两

32、个数码管是分开控制的,即分十位与个位分别控制,因此,在计算加法的时候需要考虑进位问题。当个位初始值为5的时候,对其进行加5操作则需对十位进行进位并同时将各位清零。止匕外,由于最大不能超过9.5元,还需在程序中对十位个位的最大数值进行判断,减法程序与加法程序类似,也需注意借位问题,在此不再赘述。2、显示子程序显示子程序包括数码管显示和led显示两种。由于数码管相当于8个led并联连接,一段接电源VC一端接单片机I/O。当I/O输出低电平时,数码管对应的位置将亮起。在编写程序的时候可利用数组实现对数码管的控制,将09对应的二进制代码存入数组中,显示时输入对应数字即可完成数码管的显示,其流程图如图1

33、1所示。卜位为5+位为1,个位加位为1个位为!«1位大于1+位为0,力位为0三个灯都不亮ledl先Lcdl,lcd2克Led】.Ied2«1期3全亮图11子程序流程图4整体电路设计4.1 整体电路图CHAHOEBUW4 £ BUY1xFO WIPD3由!>1FD4ADIFD&WFDtMM PDhAAT*ZWS?>F2J 沐 灯陀fiM* 2T高隹塔KHLAHDF3 AHEPi&fisr wjmc图12整体电路图4.2 整体工作原理说明根据设计要求,自动售货饮料机主要由四个模块构成,即投币模块、选择购买模块、找零模块和显示模块(余额显示和

34、可购买类型指示灯显示)。综合考虑自动售货机的功能需求和硬件设计,软件程序的编写应该包括以下几个内容:独立键盘扫描函数KeyScan,数码管显示函数Display、非精确延时Delay函数和主程序main。电源供电后,手动控制按键投币,饮料选择等,按下按键等于给相应的I/O口一个低电平,在通过程序控制,AT89C52芯片给相应的I/O口高低电平,实现LED灯的亮灭表示是否可选择饮料和数码管金额显示,具体代码见附录2。5Protues仿真结果与分析1、开始2投0.5元图13开始界面详一=邕一;一ffj f man.图14投币0.5元,未购买状态仿真图仿真结果分析:此时LED A灯亮,表示0.5元的

35、饮料可以购买;LED B LED C处于熄灭状态,表示1元和1.5元的饮料不能购买数码管上显示0.5,表示投入金额为0.5元。符合设计要求3、投1元图15投币1元,未购买状态仿真图仿真结果分析:此时LED_A和LED_B丁亮,表示0.5元和1.0元的饮料可以购买;LED_Q处于熄灭状态,表示1.5元的饮料不能购买。数码管上显示1.0,表示投入金额为1.0元。符合设计要求。4、最多只能投9.5元I f V工±16投币9.5元,未购买状态仿真图仿真结果分析:止匕时LED_A LED_B和多次投入1.0元和0.5元硬币 求。5、买0.5元的饮料LED_C都亮,表示0.5元、1.0元和1.5

36、元的饮料均可购买;,但最多只能投入9.5合设计要元,此时数码管上显示9.5o符1HU票411114>图17购买一瓶0.5元饮料仿真结果分析:此时LED_A和LED_B和LED_C灯亮,表示0.5元、1.0元和1.5元的饮料可以购买数码管上显示9.0,表示剩余金额为9.0元。符合设计要求。66图18找零-严左Bun仿真结果分析:止匕时LED_ALED_B和LED_(tE为熄灭状态,表示0.5元、1.0元和1.5元的饮料均不能购买;按下找零按键后,数码管显示为0.0o符合设计要求。6实物焊接及调试图20实物图6.2调试中出现的问题1、焊接晚一个数码管后,部分管子无法显示,后来发现焊接错误,最

37、终修改后实现正确功图21接错误图2、实物中的数码管亮度较浅可能是因为10口和数码管之间的电阻阻值过大引起的,不过并不影响使用7总结与体会这是我第一次做数电课设,大二上学期做过一个模电课设,有过那次紧张的熬夜以及做实物,赶报告,知道了做一次课设的不容易,所以这一次我提前做好准备,在网上查阅资料,买好材料,等考完试就全力钻研数电课设。此次数电课设是做一个模拟的自动售货机,使我有了这几方面的提升和收获:本次设计采用两个7段共阳极数码管显示,实验过程中,复习了有关数码管的知识,比如引脚图,还有编码知识。设计采用C语言编程,让我回顾了大一学的C语言编程方法与原则,以及如何通过程序对单片机进行控制,进而控

38、制显示电路。让我学会多个软件的联合使用。比如,用Keil4编程,其生成的hex文件可用于proteus仿真,还可下载到单片机芯片实现电路控制,这大大方便了我的仿真效率,本来打算选用multisim,但是布线太过于复杂,而且导入程序没有protues方便。同时焊接的部分使我熟悉了课程设计流程,增强了焊接技巧。这一次实物焊接比较顺利,实物焊接出来后除了数码管亮度不够之外,功能全部都实现了。在调整了电阻后,亮度也恢复了正常值。通过这次课程设计,我体会到了自主设计实物的不容易与最终实物调试成功后的喜悦感,也让我对数电这门课程有了更深层次的了解。止匕外,我还感受到编写程序时思路清晰的重要性。我正是由于有

39、时候有些急于求成,在还未规划好的时候就开始编程,导致后期小错误不断。这一个星期的紧张的课程设计,理论与实际相相结合,锻炼了我的综合运用所学专业基础知识的能力,同时也提高我查阅文献资料、程序设计规范以及电脑制图和电路调试等其他专业能力水平,而且通过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻炼,丰富了实践经验,并且意志力,抗压能力及耐力也都得到了不同程度的提升。总体来说,这次数电课设可以说是成功的,体会了成功的喜悦,尝过了失败的心酸,我想我会在人生的的路上走得越来越远。8参考文献口新型集成电路的应用一电子技术基础课程设计,梁宗善主编,华中科技大学出版社。2电子技术基础课

40、程设计,孙梅生等编著,高等教育出版社。3电子线路设计?实验?测试第三版,谢自美主编,华中科技大学出版社。451单片机C语言程序设计经典实例陈忠平主编,电子工业出版社,2012年5月。Proteus教程M,朱清慧、张凤蕊、翟天嵩编,清华大学出版社,2000年9月。附录1元件清单表1元件数目89C52核心板1双US电源线1下载线1万用板110K电阻16220欧电阻3按键6一位八段数码管2红色LED3杜邦线产排针附录2源程序名称:自动饮料售货机控制*时间:2015.7.8#include<reg52.h>产宏定义r/#defineMoneyshiP2/数码管余额显示十位,P2脚定义为十位

41、#defineMoneygeP3/数码管余额显示个位,P3脚定义为个位产管脚定义sbitkey5=PM0;定义5角钱的输入按钮连接管脚P1A0sbitkey10=P1Al;定义1元钱的输入按钮连接管脚PM1sbitdekey5=P1A2;定义选择饮料(0.5元)的输入按钮连接管脚PM2sbitdekey10=PM3;/定义选择饮料(1.0元)的输入按钮连接管脚PM3sbitdekey15=P1A4;/定义选择饮料(1.5元)的输入按钮连接管脚PM4sbitkeyClear=P1A5;/定义清零按钮连接管脚PM5sbitLED5=P0A0;定义饮料(0.5元)的LED连接管脚P0A0sbitLED10=P0A1;/定义饮料(1.0元)的LED连接管脚口0八1sbitLED15=P0A2;定义饮料(1.5元)的LED连接管脚P0八2unsignedcharcodedisplay_shi10=0x02,0x9e,0x24,0x0c,0x98,0x48,0x40,0x1e,0x00,0x08;变量定义共阳数码管码值分别对应0,1,2.9unsignedcharcodedisp

温馨提示

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

最新文档

评论

0/150

提交评论