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

下载本文档

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

文档简介

第一章 绪论一个单片机应用系统从提出任务到正式投入运行的过程,称为单片机的开发。开发过程所用的设备即开发工具。一般用计算机来调试单片机,所用开发工具为仿真器和调试器,两者一起构成硬件平台。软件平台是指装入通用PC的软件开发调试系统,它的作用是编辑、汇编、编译、仿真与调试,称为WINDOWS下的集成开发环境。集成开发环境是单片机厂家为用户提供的产品开发环境,包括单片机的硬件平台和软件平台。20多年来,世界上出现过几种用于51系列单片机的开发软件,下面以伟福6000和Proteus为例。1.1 WAVE6000软件说明这个软件是南京伟福公司的单片机开发软件,一般就是用在C51单片机,具备双工作模式和真正的集成调试环境。此软件可不需要购买仿真器,使用软件模拟仿真器即可,使用很方便。也配有硬件仿真设备,但需购买。它集成了编辑器、编译器、调试器,源程序编辑、编译、下载、调试全部可以在一个环境中完成。且伟福的多种仿真器及所支持各种CPU仿真全部集成在一个环境下。由于此软件风格统一,从而可节省用户的时间和精力。1.2 PROTEUS软件说明PROTEUS是一款集单片机和SPICE 分析于一身的仿真软件,功能极其强大,是其他任何一款软件不能相比的。1.2.1 软件的特点 全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。 具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232 动态仿真、I2C 调试器、SPI 调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。 目前支持的单片机类型有:68000 系列、8051 系列、AVR 系列、PIC12 系列、PIC16 系列、PIC18系列、Z80 系列、HC11 系列以及各种外围芯片。 支持大量的存储器和外围芯片。1.2.2 ISIS智能原理图输入系统ISIS是Proteus系统的中心,具有控制原理图画图的超强的设计环境。ISIS有以下特性:1、出版质量的原理图ISIS提供给用户图形外观,包括线宽、填充类型、字符等的全部控制,使用尸能够生成如杂志上看到的精美的原理图,画完图可以以图形文件输出,画图的外形由风格模板定义。2、良好的用户界面ISIS有一个无连线方式,用户只需单击元件的引脚或者先前布好的线,就能实现布线。此外,摆放、编辑、移动和删除操作能够直接用鼠标实现无需去单击菜单或图标。3、自动走线只要单击想要连接的两个引脚,就能简单地实现走线。在特殊的位置需要布线时,使用者只需在中间的角落单击。自动走线也能在元件移动的时候操作,自动解决相应连线。节点能够自动布置和移除。既节约了时间,又避免了其他可能的错误。4、层次设计ISIS支持层次图设计,模块可画成标准元件,特殊的元件能够定义为通过电路图表示的模块,能够任意设定层次,模块可画成标准元件,在使用中可放置和删除端口的子电路模块。5、总线支持ISIS提供的不仅是一根总线,还能用总线引脚定义元件和子电路。因此,一个连线在处理器和存储器之间的32位的处理器总线可以用单一的线表示,节省绘图的时间和空间。6、元件库ISIS的元件库包含8000个元件,有标准符号、三极管、二极管、热离子管、TTLCMOS、ECL、微处理器,以及存储器元件、PLD、模拟Ic和运算放大器。7、可视封装工具原理图和PCB库元件的匹配是由封装工具简化的。在原理图部分的引脚旁边将显示PCB的封装,并允许每个引脚名对应文本和图形的引脚号码。8、复合元件ISIS的元件库表达方式有很多种,无论是单个元件、同态复合元件、异态复合元件,还是连接器,都可以在原理图上以独立引脚来表达,不用所有线都连到一个独立元件上。9、元件特性设计中的每个元件都有一定数日的属性或特性。某些特性控制软件的特定功能(如PCB封装或仿真)用户也可以添加自己的特性。一旦库建立,就能提供默认值及特性定义。特性定义提供大量的特性描述,当修改元件时,将显示在编辑区域内。10、报告ISIS支持许多第三方网表格式,因此能为其他软件所使使用设置元件清单后可以添加用户所需的元件属性,也可设置属性列以挑选一定数目的属性。ERC报告可列出可能的连线错误,如末连接的输入、矛盾的输出及未标注的网络标号。1.3 MCS-51单片机系统简介 单片机应用系统由硬件系统和软件系统两部分组成。硬件系统是指单片机以及扩展的存储器、IO接口、外围扩展的功能芯片以及接口电路。软件系统包括监控程序和各种应用程序。 在单片机应用系统中,单片机是整个系统的核心,对整个系统的信息输入、处理、信息输出进行控制。与单片机配套的有相应的复位电路、时钟电路以及扩展的存储器和IO接口,使单片机应用系统能够运行。在一个单片机应用系统中,往往都会输入信息和显示信息,这就涉及键盘和显示器。在单片机应用系统中,一般都根据系统的要求配置相应的键盘和显示器。配置键盘和显示器一般都没有统一的规定,有的系统功能复杂,需输入的信息和显示的信息量大,配置的键盘和显示器功能相对强大,而有些系统输入/输出的信息少,这时可能用几个按键和几个LED指示灯就可以进行处理了。在单片机应用系统在中配置的键盘可以是独立键盘,也可能是矩阵键盘。显示器可以是LED指示灯,也可以是LED数码管,也可以是LCD显示器,还可以使用CRT显示器。单片机应用系统中键盘一般用的比较多的是矩阵键盘,显示器用的比较多的是LED数码管和LCD显示器。1.3.1 定时器计数器 1、MCS-51系列中51子系列有两个16位的可编程定时计数器可:定时计数器T0和定时计数器T1。它由加法计数器、方式寄存器TMOD、控制寄存器TCON等组成。方式寄存器用于设定定时计数器T0和T1的工作方式,控制寄存器用于对定时计数器启动、停止进行控制。 2、每个定时计数器既可以对系统时钟计数实现定时,也可以外部信号计数实现计数功能通过编程设定来实现。 3、每个定时计数器都有多种工作方式,其中T0有四种工作方式,T1有三种工作方式,T2有三种工作方式。通过编程可设定工作于某种方式。四种工作方式为:13位定时计数器、16位定时计数器、8位自动重置定时计数器、两个8位定时计数器(只有T0有)。 4、每一个定时计数器定时计数时间到时产生溢出,使相应的溢出位置位,溢出可通过查询或中断方式处理。1.3.2 中断系统1、MCS-51单片机提供5个硬件中断源,2个外部中断源,2个定时计数器T0和T1的溢出中断TF0和TF1,1个串行口发送TI和接收RI中断。2、MCS-51单片机中没有专门的开中断和关中断指令,对各个中断源的允许和屏蔽是由内部的中断允许寄存器IE的各位来控制的。中断允许寄存器IE的字节地址为A8H,可以进行位寻址。系统复位时,中断允许寄存器IE的内容为00H,如果要开放某个中断源,则必须使IE中的总控置位和对应的中断允许位置“1”。3、MCS-51单片机有5个中断源,为了处理方便,每个中断源有两级控制,高优先级和低优先级。通过由内部的中断优先级寄存器IP来设置,中断优先级寄存器IP的字节地址为B8H,可以进行位寻址。如果某位被置“1”,则对应的中断源被设为高优先级;如果某位被清零,则对应的中断源被设为低优先级。对于同级中断源,系统有默认的优先权顺序,从高到低优先权顺序为外部中断0、定时计数器T0中断、外部中断1、定时计数器T1中断、串行口中断。通过设置中断优先级寄存器IP能够改变系统默认的优先级顺序。4、MCS-51单片机响应中断的条件为:中断源有请求且中断允许。1.3.3 LED数码管显示器在单片机应用系统中,经常用到LED数码管作为显示输出设备,LED数码管显示器虽然显示信息简单,但它具有显示清晰、亮度高、使用电压低、寿命长、与单片机接口方便等特点,基本上能够满足单片机应用系统的需要,所以在单片机应用系统中经常用到。LED数码管显示器是由发光二极管按一定的结构组合起来的显示器件。在单片机应用系统中通常使用的是8段式LED数码管显示器,它有共阴极和共阳极两种。所谓译码方式是指由显示字符转换得到对应的字段码的方式。对于LED数码管显示器,通常的译码方式有两种:硬件译码方式和软件译码方式。LED数码管在显示时,通常有两种显示方式:静态显示方式和动态显示方式。在使用时可以把它们组合起来。在实际应用时,如果数码管个数较少,通常用硬件译码静态显示,在数码管个数较多时,则通常用软件译码动态显示。第二章 硬软件设计与分析像一般的计算机系统一样,单片机的应用系统也是有硬件和软件组成的。硬件和软件只有紧密配合,协调一致,才能组成高性能的单片机应用系统。在系统的研制过程中,软、硬件的功能总是在不断的调整,以便相互适应,相互配合,达到最佳性能价格比。单片机应用系统的研制过程包括总体设计、硬件设计、软件设计、在线调试等几个阶段,但他们不是绝对分开的,有时是交叉进行的。2.1 总体设计该课程设计是利用MCS-51单片机内部的定时计数器、中断系统、以及行列键盘和LED显示器等部件,设计一个单片机电子时钟。设计的电子时钟通过数码管显示,并能通过按键实现设置初始时间和暂停、复位、启动控制等。总体步骤如下:1、在PROTEUS中设计硬件2、在WAVE6000中编写程序,编译、连接形成HEX文件。3、在PROTEUS中把HEX文件加载到单片机芯片上。4、运行仿真看结果。2.2 硬件设计硬件电路可通过Proteus软件进行设计。2.2.1 硬件设计电路上图采用8位LED软件译码动态显示程序,使用AT89C51单片机,12MHZ晶振,P0输出字段码,P2口输出位选码,用共阳接法LED数码管,P1.0为暂停、恢复计时和调时位选择按键,P1.1为加1键,P1.2为减1键,P1.3为复位键。2.2.2 PROTEUS软件使用过程1)选择元器件2)放置元器件3)连线4)添加程序5)运行仿真2.2.3元器件清单如下单片机:AT89C51按键:BUTTON电阻:RES电容:CAP晶振:CRYSTALLED数码管:7SEG-MPX8-CA-BLUE(CA:共阳,CC:共阴)地:GROUND电源:POWER2.3 软件设计程序可通过WAVE6000软件来设计。2.3.1电子时钟设计思想用定时计数器T0,工作于定时,采用方式1,对12MHZ的系统时钟进行定时计数,初值设为XXYY(自己计算),形成定时时间为50ms。用片内RAM的7BH单元对50ms计数,计20次产生秒计数器78H单元加1,秒计数器加到60则分计数器79H单元加1,分计数器加到60则时计数器7AH单元加1,时计数器加到24则时计数器清0。然后把秒、分、时计数器分成十位和个位放到8个数码管的显示缓冲区,通过数码管显示出来。显示格式为小时十位、小时个位-分十位、分个位-秒十位、秒个位。在处理过程中加上了按键判断程序,能对按键处理。2.3.2 片内RAM存储分配1、片内RAM的70H到77H单元为LED数码管的显示缓冲区2、78H,79H,7AH分别为秒、分、小时计数单元3、7BH为50ms计数器,7CH为调时按键计数器2.3.3程序设计程序设计的流程图如下:开始显示单元清零T0设为16位计数模式允许T0中断调用显示子程序进入功能程序按下键否?否是开始现场保护,重置初值启动下一个50ms50ms 计数器加1秒单元加1,50ms计数器清0,秒写入秒个位和秒十位50ms 计数器=20?否是分单元加1,秒单元清0,分写入分个位和分十位秒单元=60?时单元加1,分单元清0,时写入时个位和时十位分单元=60?时单元清0时单元=24?中断返回否否否是是是图2-1 主程序流程图 图2-2 定时器/计数器T0中断服务程序流程图具体程序如下:主程序先对显示单元和定时器/计数器初始化,然后重复调用数码管显示模块和按键处理模块,当有键按下,则转入相应的功能程序。延时子程序,便于调用。共阳极顺序数码管常用字型表。本系统共用8个数码管,从右到左依次显示秒个位、秒十位、横线、分个位、分十位、横线、时个位和时十位。采用软件译码动态显示。定时器/计数器T0用于时间计时。选择方式1,重复定时,定时时间设为50ms,定时时间到则中断,在中断服务程序中用一个计数器对50ms计数,计20次则对秒单元加1,秒单元加到60则对分单元加1,同时秒单元清0;分单元加到60则对时单元加1,同时分单元清0;时单元加到24则对时单元清0,标志一天时间计满。在对各单元计数的同时,把它们的值放到存储单元的指定位置。第三章 调试结果3.1 仿真工具栏仿真控制按钮1* 运行2* 单步运行3* 暂停4* 停止3.2 仿真结果按键处理设置为:如没有按键,则时钟正常走时。当按下K0按键时,进入调分状态,时钟停止走动即暂停;按K1或K2按键可进行加1或减1操作;继续按K0键可分别进行分和小时的调整;最后按K0键将退出调整状态,时钟开始计时运行;按K3键可进行复位,即计数重新从零开始。第四章 心得体会1、此次的课程设计使我熟悉了WAVE6000集成环境和PROTEUS仿真软件的使用。2、用此软件练习电脑时钟的设计,不仅能够掌握此软件的使用方法,而且复习了原来的C51汇编语言,对电脑时钟的原理和电脑时钟的汇编程序有了更进一步的理解。3、仿真可把抽象的东西具体化,把理论和实际结合起来

温馨提示

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

评论

0/150

提交评论