您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于51单片机的数字钟方案设计书(3)
电子系统综合设计课程论文基于51单片机的数字钟设计专业:年级:作者:指导教师:2012年6月13日目录1作品的背景与意义.....................................................12功能指标设计.........................................错误!未定义书签。3作品方案设计.........................................................23.1总体方案的选择...................................................2一基于51单片机的数字钟设计.....................................23.2控制方案比较.....................................................23.3显示方案比较.....................................................33.4公式............................................................44硬件设计.............................................................44.1显示模块电路图...................................................44.24X4矩阵键盘硬件原理图...........................................54.3蜂鸣器驱动电路...................................................55软件设计.............................................................65.1主程序流程图.....................................................65.2显示模块流程图...................................................65.3按键处理流程图...................................................75.4定时器中断流程图................................................86系统测试.............................................................96.1测试环境.........................................................96.1.1调试软件6.1.2仿真软件6.2测试步骤........................................................106.3测试数据........................................................106.4心得体会........................................................10参考文献..............................................................11附录1系统电路图.....................................................12附录2系统软件代码...................................................12附录3系统器件清单...................................................361作品的背景与意义近年来,随着电子产品的发展,人们对数字时钟的要求越来越高,本文针对人们的这一需求,设计了一种有单片机控制的多功能数字时钟。该系统具有年、月、日、星期、时、分、秒设置及显示、闹钟定时等功能。系统以C51单片机为核心,主要进行基于C51单片低功耗MCU的字符型数字钟及其系统的研究,可以通过它的时钟信号进行计时实现计时功能,将其时间数据经单片机输出,利用显示器显示出来。通过键盘可以进行定时、校时功能。输出设备显示器可以用液晶显示技术和数码管显示技术。系统带有数码管显示器,配合按键提供友好的用户界面,操作简单,同时具有定点报时功能,该数字钟能长期、连续、可靠、稳定的工作;同时还具有体积小、功耗低等特点,便于携带,使用方便。系统软件设计包括单片机计算机两部分的编程。计算机软件编程主要实现参数设置、串行口数据接收、指令发送以及数据的显示和存储。单片机软件编程主要实现键盘、数码管显示、定点报时等各模块的功能,采用汇编语言编程。钟表的数字化给人们生产生活带来了极大的方便而且大大地扩展了钟表原先的报时功能。因此,研究数字钟及扩大其应用,有着非常现实的意义。2功能指标设计本设计准备实现的功能:(1)显示公历日期功能(年、月、日、时、分、秒)。(2)可通过按键切换年、月、日及时、分、秒的显示状态。(3)可随时调校年、月、日或时、分、秒。(5)可实现闹钟功能。3作品方案设计3.1总体方案的选择—————————基于51单片机的数字钟设计单片机芯片作为控制系统的核心部件,它除了具备微机CPU的数值计算功能外,还具有灵活强大的控制功能,以便实时检测系统的输入量、控制系统的输出量,实现自动控制。在本次设计中采用单片机技术来实现数字钟的功能。方案的设计可以从以下几个方面来确定。在本次设计中采用AT89C51单片机;显示电路的设计,在这里采用数码管显示;校时和定时电路的设计;实时控制电路是时钟电路的一个重要组成部分,采用的是一个时钟芯片,单片机从中读取数据送到显示器上显示,从而实现数字钟的功能;还有一些其他控制电路如复位电路、时钟电路等。通过这些控制电路的连接构成了完整的电路。3.2控制方案比较程序设计内单片机的程序设计有其自身的特点。在单片机系统中,硬件与软件紧密结合,由于硬件电路的设计不具有通用性,所以必须根据具体的硬件电路来设计对应的软件,硬件设计的优劣直接影响到软件设计的难易,软件设计的优劣又直接影响到硬件的发挥。在很多时候,软件可以替代硬件的功能,当然,需要付出额外占用CPU时间的代价。软件程序的设计是根据硬件电路图的连接和各个元器件的功能进行设计。在编写软件时,可以按各个程序的功能将软件细分为各个功能模块,再通过主程序的调用来实现整个软件系统。而一般编写的程序都是根据事前所用的流程图来编写的,而且,流程图中也包含了对设计所得结果的要求,因此,流程图的设计直接影响到源程序的设计。控制键盘采用独立式按键,开机时,显示12:00:00的时间开始计时;P0.0/AD0控制“秒”的调整,每按一次加1秒;P0.1/AD1控制“分”的调整,每按一次加1分;P0.2/AD2控制“时”的调整,每按一次加1个小时;定时器1中断入口,产生秒基准时间并实现时间日期自增,定时器2中断入口,由软件控制蜂鸣器产生闹钟铃声。3.3显示方案比较单片机控制段式LED数码管显示。码管由7段LED组成,因此可以称为七段数码管。将这七个LED按一定规律点亮,就能够显示数字0~9,以及英文字母A、B、C、D、E、F。而现在的数码管都有带有小数点(DP),实际上数码管就变成8段了。显示二进制、十进制数、十六进制数,小数都不是问题。数码管有共阳、共阴的区分。顾名思义,共阳数码管公共阳极,即将8个数码管正极连接在一起,负极又8个不同端口控制。共阴则与共阳相反。段选引脚用于驱动一位数码管的八个段,即图上的a、c、d、e、f、g和dp。根据不同的数字输出对应的电平,从而点亮一位数码管。位选用于选择在某一时刻驱动哪一位数码管,设计里面使用两位数码管,因此需要两个引脚来控制这些位。在控制位选时候,将数码管的位选引脚直接接到单片机的I/O口,是可行的。原因是,单片机的I/O负载能力不足以驱动数码管,这时候,就需要外加上三极管作为电流放大使用。使用了PNP三极管,将发射极接到电源的+5V,基极串上一10K电阻接到单片机的位选I/O口,集电极就接到数码管的位选端。3.4公式定时时间t=(162-T0初值)*振荡周期*12(1.1)4硬件设计4.1显示模块电路图图4.1AD9851连接电路4.24X4矩阵键盘硬件原理图按钮未按下前,四个I/O口通过一个10K的电阻与VCC相连,所以此时四个I/O口的输入都为1即高电平;当按钮按下时,四个I/O口都接地,此时四个I/O口的输入都为即低电平。图4.24*4键盘4.3蜂鸣器驱动电路蜂鸣器工作电压为+5V,将蜂鸣器的正极连接到电源+5V,负极连接到电源的GND,蜂鸣器就能发出声响。单片机I/O的负载能力并不足以驱动蜂鸣器,为了解决这个问题,必需另需它法。蜂鸣器的典型驱动电路是使用极管做开关。5软件设计5.1主程序流程图图5.1主程序流程图5.2显示模块流程图时间显示按键检测启动定时器秒十位计数显示分个位计数显示分十位计数显示结束程序开始程序开始5.3按键处理流程图NYNYNY5.4定时器中断流程图秒按键按下?秒加1分按键按下?分加1时按键按下?时加1显示时间结束1秒时间到?时个位计数显示时十位计数显示结束开始开始NYNYNYNY秒单元加160秒时间到?秒单元清零;分单元加160分钟时间到?分单元清零,时单元加124小时到?时单元清零时间显示中断返回6系统测试6.1测试环境6.1.1调试软件KEIL:KEILC51标准C编译器为微控制器的软件开发供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强。使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,工程管理器,调试器。uVision2IDE可为它们提供单一而灵活的开发环境。一个单一的uVision2工程能够产生一个或多个目标程序。产生目标程序的源文件构成“组”。开发工具选项可以对应目标,组或单个文件。同时uVision2包含一个器件数据库(devicedatabase),可以自动设置汇编器、编译器、连接定位器及调试器选项,来满足用户充分利用特定,微控制器的要求。此数据库包含:片上存储器和外围设备的信息,扩展数据指针(extradatapointer)或者加速器(mathaccelerator)的特性。uVision2还可以为片外存储器产生必要的连接选项:确定起始地址和规模。uVision2编辑器包含了所有用户熟悉的特性,彩色语法显像和文件辩识都对C源代码进行和优化,也可以在编辑器内调试程序,它能提供一种自然的调试环境,使你更快速地检查和修改程序。另外KEILC51编译器在遵循ANSI标准的同时,为8051微控制器系列特别设计。因为语言上的扩展能让用户使用应用中的所有资源。6.1.2仿真软件PROTEUS:Proteus软件是LabcenterElectronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。6.2测试步骤1.硬件调试,检测硬件是否合格;2.默认为走时模式,按24小时制分别为“时时,分分.秒秒”。然后进行走时调整;3.万年历模
本文标题:基于51单片机的数字钟方案设计书(3)
链接地址:https://www.777doc.com/doc-4113323 .html