单片机课程设计_电子时钟设计_2012年

单片机课程设计_电子时钟设计_2012年

ID:40633986

大小:971.50 KB

页数:15页

时间:2019-08-05

单片机课程设计_电子时钟设计_2012年_第1页
单片机课程设计_电子时钟设计_2012年_第2页
单片机课程设计_电子时钟设计_2012年_第3页
单片机课程设计_电子时钟设计_2012年_第4页
单片机课程设计_电子时钟设计_2012年_第5页
资源描述:

《单片机课程设计_电子时钟设计_2012年》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机课程设计电子时钟姓名专业班级学号指导教师付文秀-15-单片机课程设计——电子时钟一、实验目的1.掌握单片机的应用并熟悉单片机系统的开发、研制过程。2.学习单片机定时器时间计时处理、按键扫描及LED数码管显示的设计方法。3.通过自行设计一个电子时钟,掌握51单片机基本功能并学会使用。4.可以比较灵活的掌握单片机仿真软件Keil的使用和Proteus的使用。二、功能实现1.时间显示功能由八个数码管显示时间,以24小时进制,显示格式为00-00-00。以开关A、B键分别调整小时和分钟。2.闹钟设定功能可设定

2、任意闹钟并显示闹铃时间。当设置时间到时蜂鸣器播放《生日快乐》的音乐,且数码管上显示闹铃时间。按停止键G使闹铃声停止。3.秒表计时功能开关D控制秒表的开始、结束和清零。按键开始计时,再按一次停止计时,再按一次复位。4.音乐播放功能。H键实现音乐(《生日快乐》歌)的单独播放。G键禁止音乐的播放。三、工作原理及设计思路1.系统整体设计框图图1电路模块框图2.主控电路选用STC89C54型号单片机。它是兼容8051内核的、高速/低功耗的新一代8051单片机,可反复设置12时钟/机器周期,工作频率为0~40MHZ,相

3、当于普通8051的0~80MHZ。内部带有16K的程序存储空间和1280字节的ROM。由于其内部带有16K的EEPROM,具有看门狗的功能,所以系统无需在外部增加存储字模数据的存储芯片和专用看门狗芯片,极大地简化了电路的设计,降低了系统的成本。单片机具有ISP功能,不需要专用的编程器编程。单片机的最小系统构成所需要的部分有晶振和两个电容构成震荡电路;一个电容和一个电阻构成复位电路;单片机的31管脚接高电平,使得单片机可以访问内部的存储器,上电即可工作。-15-图2MCS-51单片机管脚图3.实验中使用交流蜂

4、鸣器,根据I/O端口输出的方波不同,蜂鸣器就发出不同的声音。使用51单片机产生电子音乐时,要对声音的特性有所了解。本次实验中在只考虑声音的高低音变化。我们要产生不同频率的声音时,可以让51单片机产生不同频率的方波。在程序中,我们使用一个字节来表示每个音符,其中高四位代表音乐的高低,低四位代表音符的节拍。然后根据乐谱就可以生成十六进制代码。闹铃声由交流蜂鸣器产生,电路如图2,当P1.7输出不同频率的方波,.蜂鸣器便会发出不同的声音。图3闹铃电路设计4.动态显示法在数码管显示上,采用动态显示。设计的电路使单片机

5、的P0连接到8个七段数码管显示器。这8个共阳七段显示器的a、b、c、d、e、f和g全部连接在一起,因此P0输出的数据应该会在8个数码管上都显示出来,并且显示的数字是一样的。但是我们利用P2的端口来控制这8位共阳数码管,让他们使用扫描的方式分别显示数字,这样使得P0输出的数据恰好只会在其中一个数码管上面显示出来。当程序执行的速度很快的时候,由于视觉暂留的关系,我们就会看到8位数码管上面显示出不同的数字了。利用单片机定时器完成计时功能,定时器0计时中断程序每隔5ms中断一次并当作一个计数,每中断一次计数加1,当

6、计数200次时,则表示1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了。具体的电路如下图:-15-图4显示部分电路四、软件设计图5主程序流程图软件程序编程如下:-15-#include#defineTIMER0_COUNT0xEC78/*10000h-(12,000,000/(12*200))*/#defineTIMES25unsignedcharnn;unsignedcharTab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf

7、8,0x80,0x90};//0~~~~9unsignedcharint_time,int_time2,int_time3;//中断次数计数变量unsignedcharmsecond;//毫秒计数变量unsignedcharsecond,second2;//秒计数变量unsignedcharminute;//分钟计数变量unsignedcharhour;//小时计数变量unsignedcharnaozhonghour;//闹钟小时计数变量unsignedcharnaozhongminute;//闹钟分钟计数

8、变量unsignedcharnaozhongsecond;//闹钟秒钟计数变量unsignedcharhour;//小时计数变量unsignedcharkeyA=0,keyB=0,keyC=0,keyD=0,keyE=0,keyF=0,keyG=0,keyH=0;//按键初始值,即断开情况下unsignedchari=0,j=0;voidsinging();voiddelay(nn);//函数delay()存在文

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。