单片机课程设计-00-59秒计时器.doc_第1页
单片机课程设计-00-59秒计时器.doc_第2页
单片机课程设计-00-59秒计时器.doc_第3页
单片机课程设计-00-59秒计时器.doc_第4页
单片机课程设计-00-59秒计时器.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

课 程 设 计设计名称 0059秒计时器 .全套设计加扣3012250582 学年学期 2014-2015(上) 课程名称 单片机课程设计 专业年级 电气112班 姓 名 学 号 提交日期 2014年6月7日 成 绩 指导教师 水利与建筑工程学院前言 单片机作为微型计算机的一个重要分支,在现代社会的生产和生活中正发挥着越来越重要的作用。单片机技术已经成为实现各种工作测控系统和只能仪器仪表的重要手段。因此,单片机原理与应用技术已经成为高等学校电类、机电类各专业的必修课程。 现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。 汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作,单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。 微机原理课程设计以AT89C51为例子,深入研究单片机的电路图设计、程序编写、电路板制作等。目 录前言0摘 要2方案论证与对比3概述4电路设计5单元电路设计52.1 单片机核心模块52.2 时钟模块62.3 复位电路模块62.4 显示模块7软件程序及调试结果83.1 程序设计内容83.2 程序框图93.3 汇编源程序93.3 C 语言源程序103.4 调试结果11联合仿真124.0 联合仿真结果12电路板制作145.1 印制电路板图145.2 0059 秒计时器电路板三维视图15设计总结17参考文献18附件一 源程序19附件二 电路图20附件三 PCB制板21附件四 三维视图22摘 要 单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。 由于单片机在工业控制领域的广泛应用,单片机由芯片内仅有CPU的专用处理器发展而来。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。 汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。 该课程设计为00-59秒计时器的设计。以AT89C51单片机为核心,配合两个LED显示灯完成。电路图原理参考课程要求,并在原来要求的基础上在P0口加多了一个排阻RESPACK-8来驱动LED实现P0口和P2口同时点亮两个LED灯。该设计从00开始计时直到59,然后从新回到00重复计时。程序设计采用汇编语言编程,利用Keil完成程序的检查和编译。电路图的制作则运用了Proteus,并利用Keil编译的文件进行模拟仿真。根据仿真结果再次检查程序的正确性。关键词: AT89C51单片机、LED显示灯、Keil、程序编译、Protus、模拟仿真方案论证与对比 现在,在许多领域中,定时器得到了广泛的应用,比如在体育比赛中的计时器;游戏中的倒计时;红绿灯,交通控制器,闹钟等等。可见倒计时器在社会中的重要性。当然,设计倒计时器的方法很多,以下是两个设计方案。1.1 方案一 基于AT89C51单片机的LCD液晶显示模块1602显示的倒计时器。主要是以单片机来控制,用按键来设定倒计时初始时刻的值,用按键来进行倒计时初值的选择,LCD1602液晶作为显示模块来显示倒计时间。1.2 方案二 基于AT89C51单片机的数码管显示模块显示的倒计时器。主要是以单片机来控制,用按键来设定倒计时初始时刻的值,按键来进行倒计时初值的选择。采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。1.3 方案对比与选择 比较两个方案,我们发现,方案二总体比方案一好。首先方案一虽然硬件电路简单,但造价较高,且在编写程序实现所要求的功能时较难,而方案二所用的显示模块是比较熟悉的数码管,编写程序是相对容易,且电路造价不高,因此,综合考虑之后决定采用方案二。概述课程设计主要目的 学习单片机开发时的编程及仿真调试,通过仿真软件及相应程序的联机调试,实现单片机设计的硬件、软件、接口、工具四大板块有机结合。1.2 实验任务 如下图所示,在AT89S51单片机的P0和P2端口分别接有两个共阴数码管,P0口驱动显示秒时间的十位,而P2口驱动显示秒时间的个位。1.3 电路原理图图1.3 电路原理图1.4 功能说明 在设计过程中我们用一个存储单元作为秒计数单元,当一秒钟到来时,就让秒计数单元加1,当秒计数达到60时,就自动返回到0,重新秒计数。在数码上显示,仍通过查表的方式完成。一秒时间的产生在这里我们采用软件精确延时的方法来完成,经过精确计算得到1 秒时间为1.002 秒。电路设计单元电路设计 本设计主要分为单片机核心模块,时钟电路模块,复位电路模块和显示模块。设计方案如下2.1 单片机核心模块图2.1单片机电路系统板上硬件连线(1 把“单片机系统”区域中的P0.0/AD0P0.7/AD7 端口用8 芯排线连接到“四路静态数码显示模块”区域中的任一个ah 端口上;要求:P0.0/AD0对应着a,P0.1/AD1 对应着b,P0.7/AD7 对应着h。(2 把“单片机系统”区域中的P2.0/A8P2.7/A15 端口用8 芯排线连接到“四路静态数码显示模块”区域中的任一个ah 端口上;要求:P2.0/A8 对应着a,P2.1/A9 对应着b,P2.7/A15 对应着h。2.2 时钟模块图2.2时钟电路 89C51单片机的时钟信号通常用内部振荡方法得到,在引脚XTAL1和XTAL2外接晶体振荡器或陶瓷谐振器,就构成了内部振荡方法。由于单片机内部有一个高增益反相放大器,当外接晶振后就构成了自激振荡器并产生振荡时钟脉冲。晶振通常选择6MHz、12MHz24MHz。本设计采用11.0925MHz晶振。图中C1、C2起到稳固振荡频率、快速起振的作用。电容值一般为530pF。本设计选用30pF电容。2.3 复位电路模块图2.3 复位电路 复位操作完成电路的初始化,使单片机从一种确定的状态开始运行。由上图可知,控制模块实际上就是单片机的最小系统。本设计采用常用的上电且开关复位电路。上电后,由于电容的充电,使RST持续一段高电平时间。当单片机已运行中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。此处C1电容取10uF,R1=10K。2.4 显示模块图2.4 显示电路 在AT89S51单片机的P0和P2端口分别接有两个共阴数码管U2、U3,P0口驱动显示秒时间的十位,而P2口驱动显示秒时间的个位。显示模块由十脚数码管、电阻、排阻respack-8等元件构成,其中排阻为了驱动电流,增加电流,排阻一般有九个脚,一个脚接VCC,其他脚接单片机I/0口,此设计为了U2提供高电平,从而十位才能显示。软件程序及调试结果3.1 程序设计内容(1 在设计过程中我们用一个存储单元作为秒计数单元,当一秒钟到来时,就让秒计数单元加1,当秒计数达到60 时,就自动返回到0,重新秒计数。(2 对于秒计数单元中的数据要把它十位数和个数分开,方法仍采用对10 整除和对10 求余。(3 在数码上显示,仍通过查表的方式完成。(4 一秒时间的产生在这里我们采用软件精确延时的方法来完成,经过精确计算得到1 秒时间为1.002 秒。DELY1S: MOV R5,#100D2: MOV R6,#20D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1DJNZ R5,D2RET3.2 程序框图图3.2 程序框图3.3 汇编源程序Second EQU 30HORG 0START: MOV Second,#00HNEXT: MOV A,SecondMOV B,#10DIV ABMOV DPTR,#TABLEMOVC A,A+DPTRMOV P0,AMOV A,BMOVC A,A+DPTRMOV P2,ALCALL DELY1SINC SecondMOV A,SecondCJNE A,#60,NEXTLJMP STARTDELY1S: MOV R5,#100D2: MOV R6,#20D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1DJNZ R5,D2RETTABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHEND3.3 C 语言源程序#include AT89X51.Hunsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;unsigned char Second;void delay1s(void)unsigned char i,j,k;for(k=100;k0;k-)for(i=20;i0;i-)for(j=248;j0;j-);void main(void)39Second=0;P0=tableSecond/10;P2=tableSecond%10;while(1)delay1s();Second+;if(Second=60)Second=0;P0=tableSecond/10;P2=tableSecond%10;3.4 调试结果图 3.4 调试结果调试结果如上图所示。联合仿真4.0 联合仿真结果图 4.0.1 开始运行(0S)图 4.0.2 运行中(1S)图 4.0.3 运行中(59S)图 4.0.4 运行结束,仿真结束,显示变为“00”(60S)电路板制作5.1 印制电路板图图5.1 0059 秒计时器印制电路板5.2 0059 秒计时器电路板三维视图图5.2 0059 秒计时器印制电路板三维视图图5.3 0059 秒计时器印制电路板三维视图(背面)设计总结 通过此次的课程设计,我们不仅更加了解单片机在实际应用的具体例子,懂得单片机在实际应用中各种参数的设定,实际生产的电路设计和改良优化,还懂得了做设计不能眼高手低,一下看起来很简单甚至是不起眼的要求,在自己的脑海中觉得很简单没难度,但实际动手起来感觉是完全不一样的。 就像这次的秒表设计只是微机原理中一个很简单的例子,原理并不复杂,但是我们在实际操作中还是出了些错误,后来经过仔细的排查,逐步分析程序找到了问题。从这就提醒了我们无论是何种设计都要谨小慎微,不能想当然,一个小小的错误再简单的设计再简单的工程都会毁于一旦,这就要求我们要有严谨的科学态度去面对每次的设计和工程。课堂上学的理论知识在这次课程设计终于有了用武之地,在动手操作中得到了不一样的升华,让我们不再错误地认为理论知识和实际生产的距离很遥远,实际上二者关系是紧密相连的,纠正了错误的思想让我们在设计中如虎添翼。这次设计让我们巩固了平时学习的专业知识,拓宽了视野和思路,还学会将理论和实际生产有机地结合,举一反三,增强了我们提出问题,面对问题和解决问题的能力。 我们自己看教程自己摸索,掌握了Proteus和Keil这两款软件的使用,并能纯熟的使用于这次任务中。我们一起讨论、一起测试,合作无间地完成了这次任务。在这次设计,我们加深了对理论知识的理解,掌握了汇编语言的应用和软件的使用,了解程序每个模块的作用和原理,制版的原则和布线的思路,程序的排障调试和错误的排查,学会和队友沟通交流,共同面对、解决问题,了解自身的不足和思想的局限性并加以改正,获益匪浅,这不仅增加了我们自身的实力,还激发了我们的兴趣,为我们未来的设计打下了坚实的基础。参考文献1. 李全利 仲伟峰 徐军编著,单片机原理及应用,清华大学出版社,2006.2 2. 姚超友,陈东青,李秋平,谭兆湛编著,光机电一体化强化训练实训教材(单片机篇),华南理工大学广州学院,2012.9 3. Protues教程,/v_show/id_XMTY5ODEyMzI4.html,2012.12.124. Protues PCB制板,/v_show/id_XMzMzODM1MDk2.html,2012.12.145. PCB板制作,/v_show/id_XMzM0MDIwNjYw.html,2012.12.14 6. 谭浩强编著,C程序设计(第四版),北京,清华大学出版社,2010.6 7. 刘娟等编著,单片机C语言与PROTUES仿真技能实训,中国电力出版社,2010.88. 高玉泉编著,单片机应用技术(汇编语言),机械工业出版社,2012.89. 邹久朋编著,80C51单片机实用技术,北京航空航天大学出版社,2008.410. (美)克尼汉 (美)里奇编著著,徐宝文 李志 译,C程序设计语言 第2版新版,机械工业出版社,2004.111. 王爽编著,汇编语言(第2版),清华大学出版社,2008.4附件一 源程序ORG 0START: MOV Second,#00HNEXT: MOV A,SecondM

温馨提示

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

评论

0/150

提交评论