课程大作业说明书样本-2013.doc_第1页
课程大作业说明书样本-2013.doc_第2页
课程大作业说明书样本-2013.doc_第3页
课程大作业说明书样本-2013.doc_第4页
课程大作业说明书样本-2013.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

微机原理及应用课程设计说明书交通与汽车工程学院课程设计说明书课 程 名 称: 微机原理及应用课程设计 课 程 代 码: 题 目: xxxx 年级/专业/班: 学 生 姓 名: 学 号: 开 始 时 间: 2012 年 07 月 日完 成 时 间: 2012 年 07 月 日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总 分(100)指导教师签名: 年 月 日目 录摘要11 引言1.1 问题的提出 1.2 任务与分析2 方案设计2.1 系统设计方案 2.2 系统总体框图 3 系统硬件设计3.1 89C51单片机 3.23.34系统软件设计4.1 proteus软件环境介绍 4.2 protel软件环境介绍 4.3系统软件分析 4.4 程序流程图 5 系统调试过程结论致谢参考文献 摘 要 本设计是基于89C51单片机为控制核心的数字时钟设计。系统采用了美国DALLAS公司的DS1302实时时钟芯片构成了计时电路,实现了时间和日期的显示。在系统显示部分,采用了共阳的LED数码管构成了显示模块,此模块用于实时的显示信息。在系统中还增加了调整时间和日期,设置闹钟的功能。本设计说明书对该系统的硬件电路,工作原理进行了详细的介绍。同时给出了软件设计的流程图和主要源代码。关键词: 89C51单片机 DS1302时钟芯片 LED显示器1 引 言 1.1 问题的提出 随着人类科技文明的发展,人们对于时钟的要求在不断地提高。时钟已不仅仅被看成一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。高精度、多功能、小体积、低功耗,是现代时钟发展的趋势。在这种趋势下,时钟的数字化、多功能化已经成为现代时钟生产研究的主导设计方向。本文正是基于这种设计方向,以单片机为控制核心,设计制作一个多功能的数字时钟。 本设计基于单片机技术原理,以单片机芯片AT89C51作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个多功能数字时钟系统。该时钟系统主要由时钟模块、数码管显示模块、键盘控制模块以及信号提示模块组成。系统具有简单清晰的操作界面,可随时进行时间调整。同时,该时钟系统还具有功耗小、成本低的特点,具有很强的实用性。由于系统所用元器件较少,单片机所被占用的I/O口不多,因此系统具有一定的可扩展性。1.2任务与分析 本次设计的系统的控制中心是89C51单片机。首先,在Protel软件环境中进行硬件电路图的设计。然后在8051软件环境中进行系统的软件编程,并进行程序源文件的编译和调试,最后生成.hex文件。此.hex文件是硬件电路运行实现的源代码来源。把.hex文件加载到AT89C51单片机芯片,然后在Proteus软件环境中运行硬件电路,时钟的日期就可以正常显示了。 本设计的系统主要由:AT89C51为中央处理芯片,用于数据处理,初值设定。时钟芯片DS1302是本例的核心模块,由他提供时钟信息并由LED显示,用汇编语言进行编程。本系统可以分为以下4大模块:1、AT89C51模块:用于数据处理,和外围的时钟芯片通信,并控制时钟传输过程,采集时间信息并予以处理。2、DS1302模块:实时显示可以通过软件编程来实现,但这种方法需要编制的程序复杂,代码多,且单片机软件开销大,时间信息也不容易长期保存。而采用时钟芯片DS1302可以避免这些问题,它可以长期保存此信息,因此本例中我们使用此芯片来实现此系统。3、数码管显示模块:显示模块采用普通的共阳LED数码管,此模块用于实时的显示时间信息。4、程序:包括单片机控制时钟芯片的接口程序(实现单片机和时钟芯片之间的数据传输过程)和数码管显示程序。2 系统方案设计2.1 系统设计方案通过查阅相关资料,设计初期共有3个方案供我选择,分别是:(1)采用89C2051单片机组成的系统;(2)采用89C51单片机,8155芯片组成的系统;(3)采用89C51单片机,DS1302实时时钟芯片组成的系统。(1)采用89C2051单片机组成的系统此系统的硬件部分主要是由89C2051单片机,74LS48芯片,ULN2003芯片所组成。该系统硬件结构简单,但是单片机的I/O接口太少,不足以实现多种功能,软件设计部分,程序冗长而复杂,易产生混淆。(2)采用89C51单片机,8155芯片组成的系统 这个方案采用89C51单片机,8155芯片,LED显示器,4*4键盘来组成系统的硬件。该系统采用的是单片机内部的定时/计数器进行中断定时,配合软件延时实现时,分,秒的计时。但这样的话,程序复杂化,时间信息也不容易长期保存。(3)采用89C51单片,DS1302实时时钟芯片组成的系统 此方案在硬件部分采用了89C51单片机,DS13O2时钟芯片,74LS47芯片,LED显示器,几个按键。该系统的最大特点是采用了新的芯片即DS1302。在功能上进行了扩充,并且使得硬件连线显得较为简单,在软件部分,程序显得层次分明。 最后确定设计采用第3方案,即 系统是由89C51单片机,74LS164芯片, DS1302时钟芯片,LED显示器组成。2.2 系统总体框图按键电路时钟芯片复位电路时钟电路P1.0AT89C51单片机LED显示电路74LS47芯片图1 系统总体框图 当程序启动后,程序进入初始化阶段。单片机将从DS1302时钟芯片中读出年,月,日,时,分,秒,。并且经过显示缓存后送入LED显示器进行显示。当需要调整日期和时间时,按下“调日历”键,进入调整年、月、日。首先“年”的两位数码管闪烁显示,表示在调整“年”状态,按“加一”键调整到期望的年,再按“调日历”键确认“年”,同时进入调整“月”状态。同理,月和日的调整方法也是一样。调整时间也是同样的道理。闹钟的设置则是当按下闹钟键后,时分秒的显示不变,并且小时部分闪烁,按“加一”键调整到期望的闹钟时间后,再按“闹钟”键确认小时,同时进入调整分钟的状态。调整好后再按下“闹钟”键确认,返回正常显示,当到达设定时间时,蜂鸣器响。3 系统硬件电路设计3.1 89C51单片机 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图2 89C51单片机引脚图 89C51单片机与早期Intel的8051/8751/8031芯片的外部引脚和指令系统完全兼容,只不过用Flash ROM 替代了ROM/EPROM而已3。89C51单片机内部结构如图所示。图3 89C51单片机内部结构示意图各引脚的功能如下:VCC:供电电压。 GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高3。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR 8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA:当/EA保持低电平时,则在此期间CPU只访问外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,则执行内部程序存储器中的程序。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。 写出其它硬件芯片的介绍!4 系统软件设计4.1 proteus软件环境介绍本系统的硬件设计首先是在Proteus软件环境中仿真实现的。Proteus软件是来自英国Labcenter electronics公司的EDA工具软件,Proteus软件有十多年的历史,在全球广泛使用,除了具有和其它EDA工具一样的原理布图、PCB自动或人工布线及电路仿真的功能外,其革命性的功能是,它的电路仿真是互动的。针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试。如果有显示及输出,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,还能看到运行后输入输出的效果。Proteus建立了完备的电子设计开发环境,尤其重要的是Proteus Lite可以完全免费,也可以花微不足道的费用注册达到更好的效果2。Proteus是目前最好的模拟单片机外围器件的工具。可以仿真51系列、AVR、PIC等常用的MCU及其外围电路(如LCD,RAM,ROM,键盘,马达,LED,AD/DA,部分SPI器件,部分IIC器件.)。其实Proteus 与 multisim比较类似,只不过它可以仿真MCU,当然,软件仿真精度有限,而且不可能所有的器件都找得到相应的仿真模型,用开发板和仿真器当然是最好选择,可是初学者拥有它们的可能性比较小。当然,硬件实践还是必不可少的。在没有硬件的情况下,Proteus能像pspice 仿真模拟/数字电路那样仿真MCU及外围电路。另外,即使有硬件,在程序编写早期用软件仿真一下也是很有必要的。Proteus软件主要具有以下几个方面的特点:1、设计和仿真软件Proteus 是一个很有用的工具,它可以帮助学生和专业人士提高他们的模拟和数字电路的设计能力。2、它允许对电路设计采用图形环境,在这种环境中,可以使用一个特定符号来代替元器件,并完成不会对真实电路造成任何损害的电路仿真操作。3、它可以仿真仪表以及可描述在仿真过程中所获得的信号的图表。4、它可以仿真目前流行的单片机,如PICS, ATMEL-AVR, MOTOROLA, 8051 等。5、在设计综合性方案中,还可以利用ARES开发印制电路板。4.2 Protel软件环境介绍Protel印制板设计软件包是澳大利亚protel technology公司与1990年推出的电子CAD产品,具有方便、易学、实用、快速以及高速度、高步通率的特点。它采用了分层次下拉窗口菜单结构形式,用户基本上不需要记背太多的键盘命令,用鼠标点击菜单命令就能操作,protel有着很高的自动布线布通率。布通率是电子产CAD产品的一项重要指标,它反映电子元件在电路图中连接关系有多少能在印刷版图中实现。在设计常用的单、双面印制板时只要选择适当的元件布局和布线策略方法,protel就可以轻易的达到98%-100%的布通率。对于极少数不能布通的定方,protel可以用飞线指示出来,引导用户用手工方法连通。另外,protel有强大的宏命令设置功能,利用宏命令功能多定义的热键可以大大提高操作速度1。 Protel对微机的软硬件配置要求很低:cpu在8088以上,dos2.0以上版本,内存640kb以上,双软件(或一个软件一个硬盘),单色显示器(多层板设计时最好用彩色),各种兼容打印机。也能在Windows9X平台的模拟DOS下运行。Protel已成为印制板设计加工方面的工业标准。据初步统计protel在CAD的市场占有率达 95%,成为电子产品制造业界的首选CAD软件。4.3系统软件分析 (写出你编写程序前,主要要先考虑的地方)任何一个应用系统,它们都有着自己的硬件系统和软件系统,少了任何一个部分都不可能称之为一个完整的应用系统,它们之间是相互依存的一个整体,硬件系统是软件系统的一个基础和前提,为软件系统提供了一个操作平台;而软件系统是硬件系统的灵魂,它对硬件系统起到扩充和完善的作用。可想而知软件系统与硬件系统同等重要,下面为系统软件设计过程:(1)日历程序设计过程因为使用了时钟芯片DS1302,日历程序只需要从DS1302各寄存器中读出年、周、月、日、时、分、秒等数据,再处理即可。在首次对DS1302进行操作之前,必须对它进行初始化,然后从DS1302中读出数据,在经过处理后,送给显示缓冲单元。(2)确定数值存储地址 表3 数值存储地址表60H从1302中读出的秒存放的地址单元61H从1302中读出的分存放的地址单元62H从1302中读出的小时存放的地址单元63H从1302中读出的日期存放的地址单元64H从1302中读出的星期存放的地址单元65H从1302中读出的月份存放的地址单元66H从1302中读出的年份存放的地址单元 4AH-4BH年份的显示缓冲单元48H-49H月份的显示缓冲单元46H-47H日期的显示缓冲单元44H-45H小时的显示缓冲单元42H-43H分钟的显示缓冲单元40H-41H秒的显示缓冲单元58H闹钟的小时存放单元57H闹钟的分钟存放单元(3)中断允许寄存器IE在程序采用了外部中断1的工作方式。完成闹钟的时间输入的功能。在程序中使用了中断允许寄存器IE。下面介绍IE。IED7D6D5D4D3D2D1D0IEEAESET1EX1ET0EX0位地址AFHACHABHAAHA9HA8H1、EA:中断总允许位。EA=1,CPU开放中断;EA=0,CPU禁止所有的中断请求。2、ES:串行中断允许位。ES=1,允许串行口中断;ES=0,禁止串行口中断。3、ET1:T1溢出中断允许位。ET1=1,允许T1中断;ET1=0,禁止T1中断。4、EX1:外部中断1允许位。EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断。5、ET0:T0溢出中断允许位。ET0=1,允许T0中断;ET0=0,禁止T0中断。6、EX0:外部中断0允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断5。(4) LED动态扫描显示方式的设计1、将要显示的数据地址送至P1口,让LED接收信号。2、通过单片机P2.0P2.6控制相应的LED位选线,本设计定义的位选线如下表所示:表4 位选线定义表位选线LED被选中位所代表的含义P2.0年份的高位和小时的十位P2.1年份的低位和小时的个位P2.2月份的高位和分钟的十位P2.3月份的地位和分钟的个位P2.4日的高位和秒的十位P2.5日的低位和秒的个位4.4 程序流程图(1)主程序流程图 开 始设置初值,开中断初始化DS1302芯片停止DS1302振荡调用调日历子程序判断调日历键是否按下?是调用调时间子程序否判断调时间键是否按下?将年月日,时分秒送入显示缓冲单元调用显示子程序是否调用显示子程序调用显示子程序判断闹钟键按下?否跳至闹钟中断程序是判断闹钟时间到了?蜂鸣器响否是 图15 主程序流程框图主程序流程图说明:因为使用了时钟芯片DS1302,只需要从DS1302各寄存器中读出年、周、月、日、时、分、秒等数据,再处理即可。程序初期,对地址单元赋初值,并且开启中断。在首次对DS1302进行操作之前,必须对它进行初始化,然后进行按键的判断,如果按下闹钟键,则转去处理闹钟中断的程序,若没按下闹钟键,则再判断是否按下了调日历和挑时间按键,若按下,则转去处理相应的调整子程序,若没按下,则正常显示当前的日期和时间。将正常显示的时间与闹钟设置的时间相对比,若相等则使蜂鸣器响,若不相等,则正常显示。(2)调日历子程序的流程图开始调用显示子程序调日历键是否按下?年份位闪烁再判断调日历键是否按下?跳入月份调整程序调显示子程序+1键是否按下?调显示子程序再判断+1键是否弹起?跳至+1程序判断是否到2099年?对年份单元赋初值显示调整后的年份是是是是否否否是否否返回图16 调日历子程序流程图框图调日历子程序流程图说明: 在此流程图中,主要说明的是年份的调整方法,之所以没有说明月份和日的调整,是因为它们的调整方法与年份如出一辙,故此省略。通过流程图可以看出日历的调整,是先通过判断调日历的按键是否按下,以此来确定是否进入调整日历子程序。日历的调整是由调日历键和+1键来共同实现的,当按下调日历键,调整的相应位闪烁,再按下+1键,调整闪烁位的数值,调好后再按下调日历键,确认刚调整位以及使下一调整位闪烁。当全部的日历都调整好后,再按下调日历键,返回显示部分。(3)INT1中断程序流程图现场保护使小时部分闪烁判断闹钟键是否再此按下?是否判断+1键是否按下?否是分钟部分闪烁调用显示子程序跳至+1程序判断+1键是否按下?调用显示子程序跳至+1程序是否中断返回将输入的时间送入相应地址单元将输入的小时送入相应的地址单元图18 中断程序流程图框图 中断程序流程图说明:当按下闹钟键,则执行外部中断1的程序,跳至中断程序。将小时的部分闪烁,表示要对此进行调整。按下+1键,对闪烁位进行调整,输入闹钟的小时时间。再按下闹钟键,对小时位进行确认,使分钟位闪烁,再按下+1键进行分钟位的调整。将输入的闹钟的小时,分钟分别放入相应的地址单元保存起来。再次按下闹钟键

温馨提示

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

评论

0/150

提交评论