基于c的倒计时牌设计(共31页)_第1页
基于c的倒计时牌设计(共31页)_第2页
基于c的倒计时牌设计(共31页)_第3页
基于c的倒计时牌设计(共31页)_第4页
基于c的倒计时牌设计(共31页)_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、 单片机系统课程设计单片机系统(xtng)课 程 设 计 成绩(chngj)评定表设计(shj)课题 : 基于89C51的倒计时牌设计 学院名称 : 电气工程学院 专业班级 : 自动F1204 学生姓名 : 学 号 : 201223910806 指导教师 : 王黎 设计地点 : 31-517 设计时间 : 2014-12-292015-1-9 指导教师意见:成绩: 签名: 年 月 日 PAGE 16单片机系统(xtng)课 程 设 计课程设计名称(mngchng): 基于(jy)89C51的倒计时牌设计 专 业 班 级 : 自动F1204 学 生 姓 名 : 学 号 : 指 导 教 师 : 王

2、黎 课程设计地点: 31-517 课程设计时间: 2014-12-292015-1-9 单片机系统 课程设计任务书学生姓名专业班级自动F1204学号题 目基于89C51的倒计时牌设计课题性质工程设计课题来源自拟指导教师 王黎主要内容(参数)基于89C51的倒计时牌设计主要内容:利用8位数码管能够显示日、时、分、秒倒计时。通过按键来实现倒计时时间的设定。倒计时时间到时,蜂鸣器报警并使LED点亮。利用Proteus仿真验证。任务要求(进度)第1-2天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。第3-4天:按照确定的方案设计单元电路。要求画出单元电路图,元件及元件参数选择要有依据,各单元电

3、路的设计要有详细论述。第5-6天:软件设计,编写程序。第7-8天:实验室调试。第9-10天:撰写课程设计报告。要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅合理。主要参考资料1 张迎新单片微型计算机原理、应用及接口技术(第2版)M北京:国防工业出版社,20042伟福LAB6000系列单片机仿真实验系统使用说明书3 阎石数字电路技术基础(第五版)北京:高等教育出版社,2006审查意见系(教研室)主任签字: 年 月 日 目录(ml)TOC o 1-3 h u HYPERLINK l _Toc153 1 概述(i sh) PAGEREF _Toc153 1 HYPERLINK

4、l _Toc31834 1.1 研究(ynji)背景 PAGEREF _Toc31834 1 HYPERLINK l _Toc30260 1.2 设计思想及开发意义 PAGEREF _Toc30260 2 HYPERLINK l _Toc20671 2 方案设计 PAGEREF _Toc20671 2 HYPERLINK l _Toc31365 2.1 方案选取 PAGEREF _Toc31365 2 HYPERLINK l _Toc23538 2.2 系统框图 PAGEREF _Toc23538 3 HYPERLINK l _Toc30756 2.3 总体方案设计 PAGEREF _Toc3

5、0756 3 HYPERLINK l _Toc19358 3 硬件电路设计 PAGEREF _Toc19358 4 HYPERLINK l _Toc8976 3.1 单片机概述 PAGEREF _Toc8976 4 HYPERLINK l _Toc12325 3.2 电源电路设计 PAGEREF _Toc12325 5 HYPERLINK l _Toc1110 3.3 晶振电路 PAGEREF _Toc1110 6 HYPERLINK l _Toc29490 3.4 复位电路 PAGEREF _Toc29490 7 HYPERLINK l _Toc20615 3.5 键盘电路 PAGEREF

6、_Toc20615 8 HYPERLINK l _Toc13888 3.6 显示电路 PAGEREF _Toc13888 9 HYPERLINK l _Toc22941 3.7 蜂鸣器及LED电路 PAGEREF _Toc22941 12 HYPERLINK l _Toc18650 4 系统软件设计 PAGEREF _Toc18650 13 HYPERLINK l _Toc10836 4.1 系统软件模块图 PAGEREF _Toc10836 13 HYPERLINK l _Toc13854 4.2 各个子程序设计 PAGEREF _Toc13854 13 HYPERLINK l _Toc15

7、303 5 仿真调试 PAGEREF _Toc15303 18 HYPERLINK l _Toc29484 5.1 软件调试及仿真 PAGEREF _Toc29484 18 HYPERLINK l _Toc12224 5.2 硬件调试及仿真 PAGEREF _Toc12224 19 HYPERLINK l _Toc2857 HYPERLINK l _Toc13290 6 总结 PAGEREF _Toc13290 21 HYPERLINK l _Toc24862 参考文献 PAGEREF _Toc24862 22 HYPERLINK l _Toc21838 附录A 程序清单 PAGEREF _T

8、oc21838 23 HYPERLINK l _Toc28363 附录B程序原理图 PAGEREF _Toc28363 2 HYPERLINK l _Toc17371 附录C 机器码清单 PAGEREF _Toc17371 241概述(i sh)1.1 研究(ynji)背景近年来随着计算机在社会领域的渗透, 单片机的应用正在不断 地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自 动控制的单片机应用系统中,单片机往往是作为一个核心部件来使 用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对 具体应用对象特点的软件(run jin)结合,以作完善。 在生活和生产的各领域中,凡

9、是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想像到的地方几乎都有使用单片的需求。模拟多通道压力系统是利用压力传感器采集当前压力并反映在 显示器上,它可以分析压力过量程,并发出报警。并采用电子秤原理 可根据输入单价准确的计算出物体的金额。本篇论文讨论了简单的倒 计时器的设计与制作 ,对于倒计时器中的四位LED数码显示器来说, 我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用 专门的硬件译码器,而采用软件程序进行译码。日常生活中,我们不可避免的接触到各式各样的倒计时牌,当你开车时红路灯的短暂倒计时,当你玩游戏时游戏时间结束的倒计时.,而这些不同

10、功能不同含义的倒计时牌引起了我极大的兴趣,学完单片机后,让做出一个属于自己的倒计时牌成为可能。随着电子技术的高速发展,对电子方面人才的要求越来越高,不仅要求其具备相关的专业理论知识,还要求其具有较强的设计、制作等实践动手能力.此次学校举行的电子设计无疑是对从事电子相关专业的人的一次很好的锻炼和考验,是培养信息人才的一次良好的机会,为其提供了一个理论知识与实践相结合的平台。通过本次课程设计,结合所学的电路理论和程序设计的知识,思考设计方案,从而掌握相关的硬件结合软件显示电路的设计和调试技术,在智能化产品中,单片机的应用已经越来越广泛,单片机以它体积小、质量轻、耗电省、可靠性高、价格低等优点,开始

11、不断发展,AT89C51单片机是一款非常典型且实用的51单片机,网上资源和参考书比较多,所以我此次采用此型号的单片机作为倒计时牌的控制器件。单片机主要应用与控制领域,用以实现各种测试和控制功能,为了强调起控制属性,也可以把单片机称为微控制器MC(Microcontrollerunit)。在国际上,“微控制器”的叫法似乎更通用一些,而在我国则比较习惯与“单片机”这一名称。单片机在应用时,通常是处于控制系统的核心地位并融入其中,即以嵌入的方式进行使用,为了强调其嵌入的特点,也常常将单片机称为嵌入式微控制器EMCU(Embeddedmicrocontrollerunit)1.2 设计(shj)思想及

12、开发(kif)意义本课题开发的意义在于既节省了硬件成本,又能实现多功能。既可以做倒计时秒表,又可以进行定时,还可以通过扩展完成其他功能实现功能的的相互转换。对于厂商有很大的挖掘潜在价值的空间;对于消费者,也有很大吸引力。该倒计时牌结合实际情况设置不同时间长度的倒计时,在设定的倒计时时间结束时,并且(bngqi)显示恢复到初始状态。利用专业的单片机仿真软件Protel99se来进行仿真,以验证设计的正确性同时达到降低设计周期的目的。可设设置倒计时时间的倒计时牌系统具有以下几个基本功能:利用8位数码管能够显示日、时、分、秒倒计时。通过按键来实现倒计时时间的设定。2 方案设计2.1 方案选取 单片机

13、在各种电子产品中的应用已经越来越广泛,很多的电子产品利用单片机所取得的便利得到了人们的好评,针对单片机控制的倒计时牌要求,实现其功能的设计方案 同样采用单片机内部的16位定时器实现定时,并通过LED数码管显示出倒计时时间。在本次设计中我们采用简单易于实现的上述方案。在此方案中,使用性能优异的AT89C51单片机,具有体积小、质量轻、功能强大、可靠性较高、价格低等优点。显示模块我们采用简单的数码管显示,倒计时牌只需要显示09个数字,因此(ync)LED数码管完全能够胜任且数码管功耗低、工作电流小、价格低廉便于实现等优点。倒计时牌具有如下工作状态:设置状态和运行状态。倒计时牌上电后心事全为0.设置

14、倒计时时间,按下K1开始(kish)设置时间,这时设置是秒,再按下一次K2秒加1,再按一次设置分。依次类推;设置完天后按K1则启动定时器,开始倒计时。在倒计时牌运行状态下,按K2,显示当前日期,再按一次,回到倒计时时间显示。2.2 系统(xtng)框图方案的系统框图如图2-1所示:图2-1 系统框图2.3 总体方案设计随着越来越多的不同形式不同功能的倒计时牌的广泛应用,我们的日常生活中随处可见各式各样倒计时牌,本节我们将对基于89C51的倒记牌进行总体方案设计。传统的纸质倒计时牌由于功能单一,必须有人全程参与等原因已经越来越不能满足人们的需求。日前,随着单片机在日常生活,消费电子产品的广泛应用

15、,各类电子倒计时产品也数见不鲜。单片机控制的自动倒计时牌等电子产品给人们的生产生活带来了极大的便利。基于89C51的倒计时牌系统能够满足一下几种简单的功能:(1)利用(lyng)8位数码管能够显示日、时、分、秒倒计时。(2)通过(tnggu)按键来实现倒计时时间的设定。(3)倒计时时间(shjin)到时,蜂鸣器报警并使LED点亮。基于89C51的倒计时牌系统设计的总体框图如图2-2所示:图2-2 倒计时牌结构框图 3 硬件电路设计3.1 单片机概述 单片机因将其主要组成部分集成在一个芯片上而得名,具体说就是把中央处理器CPU(Centralprocessingunit)。随机存储器RAM(Ra

16、ndomaccessmemory)。只读存储器R(Readonlymemory)。中断系统、定时器计数器以及IO(Input/output)接口电路等主要微型机部件集成在一个芯片上。虽然单片机只是一个芯片,但从组成和功能上看,它已具有了计算机系统的属性。为此,称它为单片微型计算机SCMC(Singlechipmicrocomputer),简称单片机。 单片机主要应用与控制领域,用以实现各种测试和控制功能,为了强调起控制属性,也可以把单片机称为微控制器MCU(Microcontrollerunit)。在国际上,“微控制器”的叫法似乎更通用一些,而在我国则比较习惯与“单片机”这一名称。单片机在应用

17、时,通常是处于控制系统的核心地位并融入其中,即以嵌入的方式进行使用,为了强调其嵌入的特点,也常常将单片机称为嵌入式微控制器EMCU(Embeddedmicrocontrollerunit)。在单片机的电路和结构中,有许多嵌入式应用的特点。 AT89C51是一个(y )低功耗,高性能CMOS8位单片机,片内含(ni hn)4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件(qjin)采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlas

18、h存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。其工作电压在4.5-5V,一般我们选用5V电压。89C51内部结构如下图3-1所示:图3-1 89C51内部结构图3.2 电源电路设计本设计是基于Proteus7.8仿真设计,而在Proteus硬件电路中,单片机是不需要额外电源的,电源有系统提供。但在实际工程中电源电路是构成单片机最小系统的必不可少的组成部分,在此,我们依然给出电源的设计电路。目前,很多单片机开发板上采用USB供电系统,单片机正常工作电压为5V,因此设计的电源电路

19、主要是提供单片机工作电压。3.3 晶振电路(dinl)电路(dinl)中的晶振即石英晶体震荡器,是利用(lyng)石英晶体( HYPERLINK /view/27254.htm t _blank 二氧化硅的结晶体)的压电效应制成的一种 HYPERLINK /view/1384.htm t _blank 谐振器件,石英晶体的压电效应:若在石英晶体的两个电极上加一 HYPERLINK /view/63151.htm t _blank 电场,晶片就会产生机械变形。反之,若在晶片的两侧施加机械压力,则在晶片相应的方向上将产生电场,这种 HYPERLINK /view/2505.htm t _blank

20、 物理现象称为 HYPERLINK /view/249682.htm t _blank 压电效应。由于石英谐振器具有体积小、重量轻、可靠性高、 HYPERLINK /view/141522.htm t _blank 频率稳定度高等优点,被应用于家用电器和通信设备中。石英谐振器因具有极高的频率稳定性,故主要用在要求频率十分稳定的振荡电路中作谐振元件。图3-2是单片机的晶振电路。片内电路与片外器件就构成一个时钟产生电路,CPU的所有操作均在时钟脉冲同步下进行。片内振荡器的振荡频率非常接近晶振频率,一般多在1.2MHz24MHz之间选取。C1、C2是反馈电容,其值在20pF100pF之间选取,典型值

21、为30pF。本电路选用的电容为22pF,晶振频率为12MHz。振荡周期,机器周期,指令周期。单片机晶振电路图如图3-2所示:3-2 单片机晶振电路图XTAL1接外部晶体(jngt)的一个引脚,XTAL2接外晶体(jngt)的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对HMOS单片机,该引脚接外部振。在石英晶体的两个(lin )管脚加交变电场时,它将会产生一定频率的机械变形,而这种机械振动又会产生交变电场,上述物理现象称为压电效应。一般情况下,无论是机械振动的振幅,还是交变电场的振幅都非常小。但是,当交变电场的频率为某一特定值时,振幅骤然增大,产生共振,称之为压

22、电振荡。这一特定频率就是石英晶体的固有频率,也称谐振频率。石英晶振起振后要能在XTAL2线上输出一个3V左右的正弦波,以便使MCS-51片内的OSC电路按石英晶振相同频率自激振荡。通常,OSC的输出时钟频率fOSC为0.5MHz-16MHz,典型值为12MHz或者11.0592MHz。电容C1和C2可以帮助起振,典型值为20 pF -30pF,调节它们可以达到微调fOSC的目的。3.4 复位电路复位电路的主要功能是使单片机进行初始化,在初始化的过程(guchng)中需要在复位引脚上加大于2个机器周期(zhuq)的高电平。复位后的单片机地址初始化为0000H,然后(rnhu)继续从0000H单元

23、开始执行程序。在复位电路中提供复位信号,等到系统电源稳定后,再撤销复位信号。但是为了在复位按键稳定的前提下,电源稳定后还要经一定的延时才撤销复位信号,以防在按键过程中引起的抖动而影响复位。图3-3所示的复位电路可以实现上述基本功能。图3-3 复位电路图3.5 键盘电路 键盘在由单片机控制的窗帘自动控制系统中的主要作用是通过按键向单片机输入指令,其中主要包括设定时间功能,是人工控制单片机的主要手段。在倒计时牌设计中的键盘采用的2个独立键盘键盘。这3个按键分别为:K1键设定键主要是用来设定切换时间位设定,即:时间的天,时、分、秒之间的切换,以及定时器的启动。K2键,其作用主要是用于时间调整;复位键

24、主要应用在程序出错以及误操作的时候使单片机复位,从而重新设定如图3-4所示:图3-4 键盘接口(ji ku)电路3.6 显示(xinsh)电路显示电路主要是用于显示时间。采用(ciyng)LED数码管进行显示是因为LED数码管具有以下几个优点:(1)能在低电压、小电流条件下驱动发光,能与CMOS、ITL电路兼容。(2)发光响应时间极短(0.1s),高频特性好,单色性好,亮度高。(3)体积小,重量轻,抗冲击性能好。我们都知道数码管有共阴极和共阳极两种类型,因此在使用上也有所区别,一般共阳极数码管必须外接电阻,共阴极不一定外接电阻。共阴极数码管的发光二极管阴极必须接低电平,当某个发光二极管的阳极为

25、高电平(一般+5V)时,此二极管点亮;共阳极数码管的发光二极管并接到高电平,对于需要点亮的发光二极管使其阴极接低电平即可。显然,要显示某字形就应使次字形的相应字段点亮,实际就是送一个用不同电平组合代表的数据至数码管。这种装入数码管中显示字形的数据称为字形码。LED数码显示器的结构与显示断码的数码显示器是一种发光管组合显示字符的显示器件,它使用了8个LED发光二极管,其中7个用于显示字符,一个用于显示小数点,故通常称之为7段发光显示管,其内部结构如下图3-5所示:图3-5 LED数码(shm)显示器的结构图 数码管的接法及相关段码对应(duyng)关系 数码(shm)显示器有两种连接方法共阴极和

26、共阳极具体方法如下共阴极接法:把发光二极管的样机连接在一起构成公共阳极,使用时公共阳极接正5伏特,每个发光二极管阴极通过电阻与输入端相连。共阴极接法:把发光二极管阴极相连在一起构成公阴极,使用时公共阴极接地,每个发光二极管的阳极通过电阻与输入端相连。LED数码显示器接口方法如下:(1) LED数码显示的接口方法:单片机与LED数码显示器有以硬件为主和以软件为主的两种接口方法,本次设计以软件为主。(2 ) LED数码显示器的接口电路:实际使用的数码管显示器,通过采用动态扫描显示方法,即逐个循环点亮各位显示器。这样虽然在任何时期只有一位显示器被点亮,但由于人眼视觉残留效应,看起来与全部显示器点亮效

27、果基本一样。(3) 驱动器LED显示是单片机控制产品中常见的应用。使用模块,带有显示管和驱动电路,用起来较方便。一般用户直接采用驱动器加显示管的方式,但这次试验直接采用显示器数码管使用注意事项在硬件设计中一定要注意一些数码管的注意事项,不然在后期样机制作中容易损坏。使用(shyng)电压段:根据放光颜色决定使用电流(dinli):静态,动态电流的区别在硬件(yn jin)电路设计中还一定要注意数码管的与单片机的接口。3.7 蜂鸣器及LED电路(1)蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作

28、发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。由于蜂鸣器的工作电流一般比较大,以致于单片机的I/O 口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管来放大电流就可以了。其驱动电路图如图3-6所示:(2)LED驱动电路LED驱动电路比较简单,其电路图如图3-7所示:4 系统软件设计4.1 系统软件模块图 在程序设计中首先我们得有一个设计模块这样白玉设计和写程序,设计模块图如图4-1所示:图3-6 蜂鸣器电路图图3-7 LED驱动(q dn)电路 图4-1 系统软件(x tn run ji

29、n)模块图本次程序溢出中断子程序,外部中断0,外部中断1,延时子程序,通过这几个程序衔接(xinji)在一起就构成了本次设计总的软件系统。4.2 各个(gg)子程序设计程序设计中总模块式在软件系统下分为了主程序,转换子程序,显示子程序,T0本次(bn c)程序设计中主要包括主程序莫奎,转子程序及显示字程序模块,定时器T0中断模块,外部中断模块和延时程序模块。 主程序的主要功能是初始化程序模块,转换子程序及调用子程序以及数码管的断码表及显示程序如图4-2所示:初始化开 始转换子程序显示子程序调用延时 图4-2 各个子程序设计图在主程序设计中,先开始后做一些初始化,顺着依次是转化子程序,显示子程序

30、,然后再返回转换子显示子程序,直到所有的数据转换显示完,最后结束。4.2.1 转换子程序及显示子程序模块 转换子程序将中段服务程序中产生的天,时,分秒数据,转换成适应LED数码管显示的数据,并将其存放在缓冲区,各个要显示的单元都存放在数据缓冲区中。如表4-1所示:表4-1标志位单元取值实现功能R30初始化值R31设置秒单元R32设置分单元R33设置时单元R34设置天单元R35启动定时器,开始倒计时 涉及(shj)到标志位R4如表4-2所示:表4-2 外部中断(zhngdun)0程序的流程图如图4-3所示: 图4-3 外部(wib)中断0程序的流程图外部中断0的程序设计中,主要就是标志R3,R4

31、的不同取值代表了不同的功能,当R4取值到5时,表明时间设置完成,开始倒计时,这时R3清零R4置1,当R4置1后就表明程序进入倒计时,这个(zh ge)时候就不能在设置时间了。4.2.2 外部(wib)中断1外部(wib)中断1程序主要用于天,时,分和秒的修改,按一次家1,其中涉及标志R2如表4-3所示:表4-3工作组寄存器数值功能R20送倒计时时间R21送当前日历R22清0 外部中断1,主要设计就是设计天,时,分 ,秒时的修改,设置出想要他实现的倒计时的值流程图如图4-4所示: 外部中断1 开始R4是否为0R3是否为0R3是否为1秒单元加1秒加到60了吗MMAMA 吗秒单元清0R3是否为2分单

32、元加1分加到60了吗分单元清0R3是否为3时单元加1时加到24了吗时单元清0R3是否为4天单元加1天加到100了吗天单元清0中断返回R2+1,R2等于2吗R2 清0图4-4 流程图4.2.3 延时子程序延时程序主要(zhyo)用于数码管显示延时,流程图如图应用单片机的时候,经常会遇到需要短时间延时的情况,解决这个(zh ge)问题时可以通过程序在执行多个指令时每个指令机器周期所占用的时间来延时。5 仿真(fn zhn)调试5.1 软件调试及仿真(1)Keil 将程序编译连接之后会生成hex文件,此文件可以为Proteus中单片机可执行的机器码,通过双机仿真软件中的单片机模型将hex文件“烧写”

33、进单片机当中去。然后点击Proteus中的Step进行仿真。Proteus中红色框代表高电平,蓝色代表低电平。 (2)时间设定完毕之后(zhhu)按下K1键启动定时器并开始倒计时,其图如图5-1所示:图5-1 开始(kish)倒计时图任意(rny)设计的时间如图5-2所示:图5-2 任意设计的时间图5.2 硬件调试及仿真程序调试完成后,在硬件制作工具中,包括导线若干,1k电阻若干,欧姆电阻若干,烙铁一只,焊锡若干,单片机89C51一个,单片机插槽一个独立开关3个,复位电路元件,电源插槽一个,2个四段共阴极数码管。静态电路,在不上电的情况下,静态电路的实物原图,本次实物制作应用晶振为6MHZ,加

34、了复位电路。如图5-4所示:图5-4 静态(jngti)电路图动态电路制作好以后上电后就为动态电路如图随便(su bin)定义时间2天5小时7分57秒。如图5-5所示:图5-5 动态(dngti)电路图6 总结为期两个周的单片机系统课程设计就要结束了,在此期间学到了很多东西,进一步的巩固了单片机基础知识。因为之前学过但在本次(bn c)倒计时牌设计中还是遇到了不少的问题,也走了不少的弯路。首先(shuxin),在设计过程中89C51在protol软件中很难找到后来采用了isis软件,但设计过程也相当复杂,各个对于原件很难找到,几乎每个都是通过各种资料熟练了该软件的操作,用了大约4个多小时终于有

35、了大致模型。在选择数码显示管时候也亚考虑各种电压电流等各种问题,通过和同学交流共同解决了好多问题。最后,软件设计上,编程语言选择问题上又有问题出现了,是选择比较熟悉驾轻就熟的C语言,发现c语言还是不能熟练掌握。最后选择的汇编语言虽然给我以后的软件设计带来了不小的问题,但通过这一次汇编的实战,我进一步对汇编语言有了更深层次的理解。领略到汇编语言的魅力之后,以后的软件编程都让我更加倾向于选择汇编语言。但通过这次实战,还是出现了不少的问题(wnt)。多实践,多动手,知识才能更趋完善,才能发现自己的不足。参考文献1 杨家成单片机原理与应用(yngyng)及C51程序设计北京(bi jn):清华大学(q

36、n hu d xu)出版社,20072 夏路易 石宗义Protel 99se电路原理图与电路板设计教程北京:北京希望电子出版社,20043 侯宝玉 陈忠平基于Proteus的51系列单片机设计与仿真北京:电子工业出版社,20084 邓兴成单片机原理与实践指导北京:机械工业出版社,20105 张迎新单片微型计算机原理、应用及接口技术北京:国防工业出版社,20046 阎石.数字电子技术基础.北京:高等教育出版社,2009.7刘兆义单片机应用技术 西安电子科技大学出版社8李权利仲伟峰徐军单片机原理及应用清华大学出版社 附录(fl)A 程序清单LED BIT P1.7BUZZER BIT P1.0OR

37、G 00HLJMP MAINORG 0003H LJMP INT_0 ORG 000BH LJMP IT_0 ORG 0013H LJMP INT_1 ORG 0100HMAIN:LCALL INITCLR P1.0 MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#00HMOV R1,#00H MOV R2,#00HMOV R3,#20MOV TMOD,#01H MOV TH0,#3CHMOV TL0,#0B0HSETB EASETB EX0SETB IT0SETB ET0SETB EX1SETB IT1 LCALL ZMZHINIT:MOV A

38、,#0FBH MOV B,#07HLCALL SENDMOV A,BLCALL SEND SETB P2.1MOV A,#0F9H MOV B,#00HLCALL SENDMOV A,BLCALL SEND SETB P2.1MOV A,#0FAH MOV B,#0CHLCALL SENDMOV A,BLCALL SEND SETB P2.1LCALL SENDMOV A,#0FCH MOV B,#01HLCALL SENDMOV A,BLCALL SEND SETB P2.1RETCAIFEN:MOV B,#10DIV ABMOVC A,A+DPTRRETZMZH:MOV DPTR,#TAB

39、 MOV A,33H ACALL CAIFENMOV 46H,A MOV A,BMOVC A,A+DPTRMOV 47H,A MOV A,32H ACALL CAIFENMOV 44H,A MOV A,BMOVC A,A+DPTRMOV 45H,A MOV A,31H ACALL CAIFENMOV 42H,A MOV A,BMOVC A,A+DPTR MOV 43H,A MOV A,30H ACALL CAIFENMOV 40H,AMOV A,BMOVC A,A+DPTR MOV 41H,A DISPLAY:MOV A,#00HMOV 48H,#08HMOV 49H,#08HMOV R0,#

40、47HLP3:MOV A,48H LCALL SENDMOV A,R0LCALL SENDSETB P2.1LCALL DELAYDEC 48HDEC R0DJNZ 49H,LP3 RETSEND:CLR P2.1MOV R4,#08HLP1:RLC AMOV P2.0,CCLR P2.2NOPNOPNOPNOPNOPSETB P2.2DJNZ R4,LP1RETFM:SETB BUZZERLCALL BZDELAYCLR LEDLCALL BZDELAYRETINT_0:PUSH PSW INC R1 CJNE R1,#05H,RE1 SETB TR0 MOV R1,#00H MOV R2,

41、#0FFH RE1 : POP PSW RETIIT_0: MOV TH0,#3CH MOV TL0,#0B0H ACALL DJSHI RETIINT_1:PUSH PSW PUSH ACC CJNE R1,#00H,TIMCHRETURN:POP ACC POP PSW RETITIMCH:CJNE R1,#01H,MIAO INC 33H MOV A,33HLCALL ZMZH CJNE A,#60,RETURN MOV 33H,#00H SJMP RETURNMIAO: CJNE R1,#02H,FEN INC 32H MOV A,32HLCALL ZMZH CJNE A,#60,RE

42、TURN MOV 32H,#00H RETFEN: CJNE R1,#03H,SHI INC 31H MOV A,31HLCALL ZMZH CJNE A,#24,RETURN MOV 31H,#00H SJMP RETURNSHI: CJNE R1,#04,RETURN INC 30H MOV A,30HLCALL ZMZH CJNE A,#100,RETURN MOV 30H,#00HRETDELAY:MOV 34H,#14HLP2:MOV 35H,#8AHDJNZ 35H,$DJNZ 34H,LP2RETDJSHI:DJNZ R3,LP4 MOV R3,#20 DEC 33HLCALL

43、ZMZH MOV A,33H CJNE A,#0FFH,LP4 MOV 33H,#3BH DEC 32H LCALL ZMZHMOV A,32H CJNE A,#0FFH,LP4 MOV 32H,#3BH DEC 31H LCALL ZMZHMOV A,31H CJNE A,#0FFH,LP4 MOV 31H,#17H DEC 30H LCALL ZMZHMOV A,30H CJNE A,#0FFH,LP4 CLR TR0MOV 30H,#00HLCALL ZMZH MOV 31H,#00HLCALL ZMZH MOV 32H,#00HLCALL ZMZH MOV 33H,#00HLCALL ZMZHLCALL FMLP4:RETBZDELAY

温馨提示

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

评论

0/150

提交评论