C语言编写单片机万年历系统课程设计报告98分.doc

C语言编写单片机万年历系统课程设计报告98分.doc

ID:53322421

大小:363.50 KB

页数:29页

时间:2020-04-03

C语言编写单片机万年历系统课程设计报告98分.doc_第1页
C语言编写单片机万年历系统课程设计报告98分.doc_第2页
C语言编写单片机万年历系统课程设计报告98分.doc_第3页
C语言编写单片机万年历系统课程设计报告98分.doc_第4页
C语言编写单片机万年历系统课程设计报告98分.doc_第5页
资源描述:

《C语言编写单片机万年历系统课程设计报告98分.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、多功能电脑时钟设计报告一、实训目的意义及任务要求1.1目的意义单片机的使用领域已十分广泛,如智能仪器仪表、实时工控、通讯设备、导航系统、家用电器等。“学好单片机,工作就不成问题了。”老师说,可见学好单片意义之重大。单片机作为一门基础学科,既是对前期学习C语言的综合运用,也是理论与实践相结合的一大体现。电脑时钟有效地检验了对DS1302时钟芯片,STC89C52单片机中断,独立键盘,数码管,蜂鸣器,LED灯的控制,同时提高了学生的工程系统设计能力。LED数字显示的日历钟显示清晰直观、走时准确、可以进行夜视,并且还可以扩展出多种功能。

2、所以,电子万年历无论作为比赛题目还是练习题目都是很有价值。通过此次单片机系统综合训练,不仅要让学生认识了解它,而且增强学生学科积极性。2.2任务要求要求设计的电脑时钟完成以下功能:1.基本功能①实时显示当前时间(4位数码管显示,2位显示小时,2位显示分钟,第2位小数点0.5秒亮,0.5秒灭)。②能用一按键依次切换显示年及月日。③能修改当前时钟。④具有秒表功能,显示秒和百分秒。2.扩展功能①单片机与PC机的通讯(可选)②可设定初值的倒计时功能(可选)③闹钟及报时功能(可选)。④显示星期(可选)。二、实训方案2.1系统分析根据系统功能

3、要求,可将系统组成结构分成四大部分:DS1302时钟芯片读数据写数据模块,数码管显示模块,按键设置调节时间模块,秒表功能模块,。硬件电路接线图如后图,本系统采用DS1302时钟芯片,四位数码管显示年月,日星期,时分,以及秒和百分秒。其中年月日,时分秒和星期采用DS1302的数据显示,秒表采用单片机定时中断实现。本系统共用到四个按键,且均为独立对地按键,分别用于显示切换,修改切换,修改加一,修改减一,秒表启动暂停和数据清零。2.2器件选择选用STC89C52芯片,频率为11.0592MHz;由于系统要求显示年月日小时和分钟,采用四位

4、LED数码管显示即可;按键是用来设置北京时间或闹钟时间或启动秒表等功能的,设置三个按键:显示切换模式键(key3)、修改数据键(key0)、加一键(key1)、减一键(key2)。DS1302时钟芯片。常见的LED显示具有清晰明亮的特点。是显示接口也是绝大多数单片机应用系统必备的部件之一。发光二极管组成的显示器是单片机应用产品中最常用的廉价输出设备。它由若干个发光二极管按一定的规律排列而成。当某一个发光二极管导通时,相应的一个点或一笔画被点亮,控制不同组合的二极管导通,就能显出各种字符。1.显示器的结构常用的7段显示器的结构如图所

5、示,发光二极管的阳极连在一起的称为共阳极显示器,阴极连在一起的成为共阴显示器。1位显示器由8个发光二极管组成,其中7个发光二极管a~g控制7个笔画的亮或暗,另一个控制一个小数点的亮和暗,这种笔画的七段显示器能显示的字符较少,字符的形状有些失真,但失控简单,使用方便。三、系统硬件设计3.1单片机最小系统单片机功能系统图见附录1,。单片机最小系统由STC89C51单片机、复位电路、晶振电路组成。如图3.1所示图3.1单片机最小系统图3.2数码管、独立按键及DS1302时钟芯片电路的设计系统仿真电路图系统仿真电路图DS1302与单片机连

6、线图3.3其他附属电路设计按键、电频转换芯片、RS232串口通信及电源电路等设计,如图3.3所示图3.3附属电路设计图四、软件设计4.1主程序设计主程序采用定时器0对程序进行扫描执行。分别执行DS1302芯片初始化子程序,写数据子程序,将最初的值写入芯片中,采用while循环循环执行键盘扫描子程序。main(){TMOD=0x01;//使用模式1,16位定时器TH0=(65536-10000)/256;//给定初值TL0=(65536-10000)%256;EA=1;//总中断打开ET0=1;//定时器中断打开TR0=1;//定时

7、器开关打开Ds1302_Init();Ds1302_Write_Time();while(1){keyscan();if(Btread==0){Btread=1;Ds1302_Read_Time();}display();}4.2DS1302子程序设计此子程序分为初始化程序,读数据程序,写数据程序,一些数据程序为例;voidDs1302_Write_Byte(unsignedcharaddr,unsignedchard){CE=0;_nop_();SCLK=0;_nop_();CE=1;_nop_();Write1302(addr

8、);Write1302(d);CE=0;_nop_();IO=1;SCLK=1;}分别写入地址,再写入数据。4.3时间调整子程序时间调整子程序采用的是对key1按的次数不同来进行对年月日时分及星期的设置。voidzongshi(void){if(!

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

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

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