ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:236.69KB ,
资源ID:4183424      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4183424.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(整点报时数字钟学习资料.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

整点报时数字钟学习资料.docx

1、整点报时数字钟学习资料整点报时数字钟数字钟一、设计任务本任务为:数字钟。设计任务具体内容如下:1.1 基本设计任务依据命题题意,本设计采用89C51进行24小时计时并显示。要求其显示时间范围是00:00:0023:59:59,具备有时分秒校准功能。数字钟上面要带有闹钟,闹钟与时钟之间能随时切换,闹钟具备时分秒设置功能。1.2 控制设计任务由于本设计采用手动校准时钟与手动设置闹钟方案,所以要求用较少的按键来达到切换闹钟与时钟、时钟时分秒校准、闹钟时分秒设置等功能。1.3 软件设计任务数字钟的所有计时都要由软件控制实现。用软件对几个按键所得信号进行相应改变,以控制时钟与闹钟的显示。通过软件对闹钟与

2、时钟进行比较,当时钟所显示时间与闹钟一样时,要启动报时模块。三、总体设计经过对各个方案分析比较,最终确定总方案如图3-1所示。该系统所有模块都由主单片机控制。其中,设计各个模块,包括单片机、显示模块、电机驱动、光电探测由四节AA电池供电。电机驱动采用L298驱动芯片控制。用光电传感器对边线的探测来控制距离。通过单片机的机器周期计算时间计数周期,以达到计时目的。闹钟AT89C52按键时间显示 语音报时 图3-1 系统方案图3.1 系统硬件电路设计3.1.1 显示及控制模块图3-4 语音报时模块3.2 系统软件设计3.2.1 软件计时的分析与计算单片机内部定时器有4种工作模式,方式0是13位计数器

3、,由于计时时间过短,中断频率高,所以不选用此模式;方式2是自动重装式计数器,是8位计数器,同样中断频率过高;方式3也是8位计数器;方式1是16位计数器,综合考虑,选用方式1做精确计时。由于51单片机是12分频,因此机器周期=晶振频率/12。在该设计中,选用频率为12MHz的晶振,因此机器周期=1s。定时1s需要1000000个机器周期,因此通过20次定时器中断完成1s的定时,每次完成50000个周期的定时,因此每次给定时器的初值应该是TH0=B0H,TL0=3CH。3.2.2 系统软件设计设计两套存储方案,一套存储时钟,一套存储闹钟,两者互不干涉,只有当两者相等时才会调用闹钟播放子程序,而当每

4、次整点时则会调用整点报时子程序。本设计有调用T0中断,并有以下子程序:void delay(void) /延时子程序void delay2(void) /1420专用延时子程序void play(unsigned char temp) /1420播放子程序void display(void) /显示子程序void rdisplay(void) /闹钟显示子程序void ring(void) /闹钟控制子程序void examring(void) /闹钟播放子程序void zhengdian(void) /整点报时子程序、测试结果及结果分析4.1 测试仪器及工具测试仪器及工具:电源一个。4.2

5、测试步骤、接上电源。、设定闹钟为00:01:00,并试听闹钟是否准确。、试听每次整点报时是否准确。、试验各按键功能是否正常。4.3 测试结果如下 闹钟与整点报时功能均正确无误,各按键功能均正常。4.4 测试结果分析通过对测试数据的分析,可以看出,数字钟能实现时钟计时,并带有闹钟与整点报时功能,即数字钟已经实现了题目所给出的所有要求。参考文献:1、胡汉才.单片机原理及其接口技术.北京:清华大学出版社,20052、阎石.数字电子技术基础.北京:高等教育出版社,20013、童诗白 华成英.模拟电子技术基础.北京:高等教育出版社,20014、郁有文等.传感器原理及工程应用.西安:西安电子科技大学出版社

6、,2008附件一:参考程序如下:#includeunsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; unsigned char code tab=0xfd,0xfb,0xf7,0xef,0xdf,0xbf; unsigned char code ts=0x00,0x08,0x10,0x18,0x20,0x28,0x30,0x38,0x40,0x48,0x50; unsigned char wei=0,1,2,3,4,5; unsigned char sec,min,hou,rsec,rmin,r

7、hou,tcont;unsigned char a0,a1,a2;unsigned char smh;void delay(void) /延时子程序 unsigned char i,j; for (i=10;i0;i-) for(j=248;j0;j-);void delay2(void) /1420专用延时子程序 unsigned char i,j,k; for (i=200;i0;i-) for(j=248;j0;j-) for(k=20;k0;k-);void play(unsigned char temp) /1420播放子程序 P1=0;P3_0=1;P3_1=1;P1=temp;

8、P3_1=0; delay2(); P1=0; P3_1=1;void display(void) /显示子程序 for(a2=0;a26;a2+) wei0=hou/10; wei1=hou%10; wei2=min/10; wei3=min%10; wei4=sec/10; wei5=sec%10; P2=taba2; P0=tableweia2; delay(); void rdisplay(void) /闹钟显示子程序 for(a2=0;a20;i-) display(); P1=0; P3_1=1; P1=0;P3_0=1;P3_1=1;P1=0x70; P3_1=0; for (i

9、=150;i0;i-) display(); P1=0; P3_1=1; P1=0;P3_0=1;P3_1=1;P1=0x70; P3_1=0; for (i=150;i0;i-) display(); P1=0; P3_1=1; P1=0;P3_0=1;P3_1=1;P1=0x70; P3_1=0; for (i=150;i0;i-) display(); P1=0; P3_1=1; void zhengdian(void) /整点报时子程序 unsigned char dian; if(sec=0) if(min=0) dian=hou/10; if(dian=0) play(0x60);

10、play(0x68);dian=hou%10;dian=tsdian;play(dian);play(0x58); if(dian=1) dian=hou%10; if(dian=0)play(0x60);play(0x68);play(0x50);play(0x58); if(dian!=0)play(0x60);play(0x68);play(0x50);dian=hou%10;dian=tsdian;play(dian);play(0x58); if(dian=2) dian=hou%10; if(dian=0)play(0x60);play(0x68);play(0x10);play(

11、0x50);play(0x58); if(dian!=0)play(0x60);play(0x68);play(0x10);play(0x50);dian=hou%10;dian=tsdian;play(dian);play(0x58); void main(void) /主程序 unsigned char i; TMOD=1; TH0=(65536-50000)/256; TL0=(65536-50000)%256; TR0=1; ET0=1; EA=1; tcont=0; sec=0; min=0; hou=0; rsec=0; rmin=0; rhou=0; smh=0; for (i=

12、50;i0;i-) display(); while(1) display(); examring(); zhengdian(); if(P3_3=0) delay(); if(P3_3=0) switch(smh) case 0: sec+; break; case 1: min+; break; case 2: hou+; break; if(sec=60) sec=0; min+; if(min=60) min=0; hou+; if(hou=24) hou=0; while(P3_3=0) display(); if(P3_2=0) delay(); if(P3_2=0) switch

13、(smh) case 0: sec-; break; case 1: min-; break; case 2: hou-; break; if(sec=-1) sec=59; min-; if(min=-1) min=59; hou-; if(hou=-1) hou=23; while(P3_2=0) display(); if(P3_4=0) delay(); if(P3_4=0) smh+; if(smh=3) smh=0; while(P3_4=0) display(); if(P3_5=0) delay(); if(P3_5=0) ring(); void t0(void) inter

14、rupt 1 using 0 /调用中断 TH0=(65536-10000)/256; TL0=(65536-10000)%256; tcont+; if(tcont=100) tcont=0; sec+; if(sec=60) sec=0; min+; if(min=60) min=0; hou+; if(hou=24) hou=0; 附件二:总原理图如下: 附件三:元器件清单元器件清单报表元件名称数量单片机 AT89C51一块语音芯片 ISD1420一块喇叭一个12M 晶振一个单排排针若干电容220 uF5个47 uF3 个10 uF3 个47 nF5 个33 pF5 个电阻470K5 个100K5 个10K10 个5.1K5 个4.7K10 个1K5 个4703 个大板子一块驻基体一个4位共阴显示数码管2 个排线若干附表一 元器件清单

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1