我想知道数字电子钟课程设计需要用什么软件做?
设计一个数字时钟,显示范围为00:00:00~23:59:59。
通过几个开关进行控制,其中开关K1用于切换时间设置(调节时钟)和时钟运行(正常运行)状态;开关K2用于切换修改时、分、秒数值;开关K3用于使相应数值加1调节;开关K4用于减1调节;开关K5用于设定闹钟,闹钟同样可以设定初值,并且设定好后到时间通过实验箱音频放出一段乐曲作为闹铃。
选做增加项目:还可增加秒表功能(精确到0.01s)或年月日设定功能。
程序清单:#include#define uchar unsigned char#define uint unsigned int#define delay_time 3uchar k,dat[]={0,0,0,0,0,0,0,0};uint tcount,t,u;uchar dat1[]={0,0,0,0,0,0,0,0};uchar dat2[]={0,0,0,0,0,0,0,0};uchar alarms[]={0,0,0,0,0,0,0,0};uchar dis_bit[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};unsigned char code SEG7[11]={0xC0,/*0*/ 0xF9,/*1*/ 0xA4,/*2*/ 0xB0,/*3*/ 0x99,/*4*/ 0x92,/*5*/ 0x82,/*6*/ 0xF8,/*7*/ 0x80,/*8*/ 0x90,/*9*/ 0xBF,/*-*/ };sbit miaobiao1=P1^0;sbit tminute=P1^1;sbit thour=P1^2;sbit miaobiao2=P1^3;sbit alarm=P1^4;sbit P0_0=P0^0;sbit P1_5=P1^5;sbit P1_6=P1^6;sbit P1_7=P1^7;uchar ms=0;uchar flag=0;uchar sec=0;uchar minit=0;struct time{uchar second;uchar minute;uchar hour;}time1; uchar n,i;void delay(n) { while(n--) { for(i=120;i>0;i--); } }void modify(void){ EA=0; if(thour==0) { if(flag==0) { dat1[6]++;delay(180); if(dat1[6]>9) { dat1[6]=0;dat1[7]++; if(dat1[7]>2) { dat1[7]=0; } } } if(flag==1) { alarms[6]++;delay(200); if(alarms[6]>9) { alarms[6]=0;alarms[7]++; if(alarms[7]>2) { alarms[7]=0; } } dat[6]=alarms[6]; dat[7]=alarms[7]; } } if(tminute==0) { if(flag==0) { dat1[3]++;delay(180); if(dat[3]>=10) { dat1[4]++;dat1[3]=0; if(dat1[4]>5) { dat1[4]=0; } } } if(flag==1) { alarms[3]++; delay(200); if(alarms[3]>9) { alarms[4]++;alarms[3]=0; if(alarms[4]>5) { alarms[4]=0; } } dat[3]=alarms[3]; dat[4]=alarms[4]; } } if(miaobiao1==0) { TR0=0;ET0=0;TR1=1;ET1=1; } if(miaobiao2==0) { TR0=1;ET0=1;TR1=0;ET1=0; dat2[0]=0; dat2[1]=0; dat2[3]=0; dat2[4]=0; dat2[6]=0; dat2[7]=0; ms=0; sec=0; minit=0; } if(P1_5==0) { TR0=0;ET0=0;TR1=0;ET1=0; } if(alarm==0) { TR0=0;ET0=0;TR1=0;ET1=0;flag=1; dat[0]=0; dat[1]=0; dat[2]=10; dat[3]=0; dat[4]=0; dat[5]=10; dat[6]=0; dat[7]=0; } EA=1;}void init(void){ TMOD = 0x11; TH0 = 0xDB; TL0 =0xFF; TH1=0xDB; TL1=0xFF; ET0 = 1; //10ms ET1=1;// TR1=1; TR0=1; tcount=0; ms=0; sec=0; minit=0; EA = 1;}void test(void) { for(k=0;k23) { time1.hour=0; } dat[5]=10; dat[2]=10; dat[0]=dat1[0]; dat[1]=dat1[1]; dat[3]=dat1[3]; dat[4]=dat1[4]; dat[6]=dat1[6]; dat[7]=dat1[7]; flag=0; P0=0x00; if((alarms[7]==dat1[7])&&(alarms[6]==dat1[6])&&(alarms[4]==dat1[4])&&(alarms[3]==dat1[3])) { P0=0x01; } ET0=1;}void time_2(void)interrupt 3{ EA=0; TR0=0; TH1=0xDB; TL1=0xFF; TR1=1; ms++; dat2[0]=ms%10; dat2[1]=ms/10; if(ms>=100) { ms=0; sec++; dat2[3]=sec%10; dat2[4]=sec/10; if(sec>=60) { sec=0; minit++; dat2[6]=minit%10; dat2[7]=minit/10; } } dat[5]=10; dat[2]=10; dat[0]=dat2[0]; dat[1]=dat2[1]; dat[3]=dat2[3]; dat[4]=dat2[4]; dat[6]=dat2[6]; dat[7]=dat2[7]; EA=1; 展开
电子时钟设计
新手 拿分来了 什么都不会只会单片机一功能模、设计指标:1. 显示时、分、秒。
2. 可以24小时制或12小时制。
3. 具有校时功能,可以对小时和分单独校时,对分校时的时候,停止分向小时进位。
校时时钟源可以手动输入或借用电路中的时钟。
4. 具有正点报时功能,正点前10秒开始,蜂鸣器1秒响1秒停地响5次。
5. 为了保证计时准确、稳定,由晶体振荡器提供标准时间的基准信号。
二、设计要求:1. 画出总体设计框图,以说明数字钟由哪些相对独立的块组成,标出各个模块之间互相联系,时钟信号传输路径、方向和频率变化。
并以文字对原理作辅助说明。
2. 设计各个功能模块的电路图,加上原理说明。
3. 选择合适的元器件,在面包上接线验证、调试各个功能模块的电路,在接线验证时设计、选择合适的输入信号和输出方式,在充分电路正确性同时,输入信号和输出方式要便于电路的测试和故障排除。
4. 在验证各个功能模块基础上,对整个电路的元器件和布线,进行合理布局,进行整个数字钟电路的接线调试。
三、制作要求: 自行装配、接线和调试,并能检查和发现问题,根据原理、现象和测量的数据分析问题所在,加以解决。
学生要解决的问题包括元器件和面包板故障引起的问题。
四、设计报告内容要求:1. 目的。
2. 设计指标。
3. 画出设计的原理框图,并要求说明该框图的工作过程及每个模块的功能。
4. 元器件清单。
5. 设计制作的进程,考虑时钟及控制信号的关系、测试、验证的顺序,写出自己的工作进程。
6. 画出各功能模块的电路图,加上原理说明(如2、5进制到10进制转换,10进制到6进制转换的原理,个位到十位的进位信号选择和变换等)。
7. 画出总布局接线图(集成块按实际布局位置画,关键的连接单独应画出,计数器到译码器的数据线、译码器到数码管的数据线可以简化画法,但集成块的引脚须按实际位置画,并注明名称。
)8. 描述设计制作的数字钟的运行结果和操作。
9. 总结。
? ? 设计过程中遇到的问题及解决办法? ? 课程设计过程体会对课程设计内容、方式、要求等各方面的建议。
五、实验仪器、工具:1. 5V电源(或实验箱)4个人合用1个。
2. 四连面包板1块。
3. 示波器2个(每班)4. 万用表5个(每班)。
5. 镊子1把。
6. 剪刀1把。
六、实验器件1. 网络线2米/人。
2. 共阴八段数码管6个。
3. CD4511集成块6块。
4. CD4060集成块1块。
5. 74HC390集成块3块。
6. 74HC51集成块1块。
7. 74HC00集成块4块。
8. 74HC30集成块1块。
9. 10MΩ电阻5个。
10. 500Ω电阻14个。
11. 30p电容2个。
12. 32.768k时钟晶体1个。
13. 蜂鸣器10个(每班)七、设计过程的日程安排 6月28日1. 分发仪器、工具、器件2. 讲解总体设计的过程,明确数字钟实现的功能,由哪些相对独立的功能模块组成,各个模块之间互相联系,时钟信号传输路径、方向和频率变化。
3. 讲解面包板的结构和使用方法,连接导线的要点,包括导线剥线头、插线方法、要求,检查面包板,如面包板中的导电铜片变形或移位,更换导电铜片。
4. 七段数码引脚排列测试,验证每段显示为一个发光二极管,同时完成对每个数码管的检查。
6月29日~7月2日分功能讲解各个模块功能实现原理、实现,搭建实际电路一个个验证。
在接线时注意合理布线和接线的可靠性。
6月29日a) 数码管的译码驱动电路接线、测试、译码器控制功能测试(手工输入测试电平)。
除了进一步熟悉原理外,主要练习接线合理布局,走线整齐、美观,用手指触动导线时也能正常工作。
可以静态显示学号的后几位。
然选一个可正常工作的译码、显示电路,分别测试译码器的3个控制引脚的作用。
6月30日b) 晶体震荡电路接线、测试(用示波器测量4060输入时钟,每一路分频输出的频率)。
c) 5进制计数器接线,输入用4060的2Hz,输出用数码管显示。
7月1日d) 10进制计数器接线、测试。
e) 6进制计数器接线、测试(在10进制基础上改)。
7月2日f) 60进制计数器接线、测试。
g) 24进制计数器、测试(在60进制基础上改)。
h) 校时电路接线(用RS触发器实现锁定、防抖动功能),用示波器观察电路的信号选择功能。
7月5~7日5. 在熟悉各个功能模块基础上,结合对总体框图的理解,设计总接线图。
6. 根据总接线图中各种元器件数量、连线,确定所有元器件布局。
7. 按以下顺序接线:晶体震荡、秒电路、分电路、时电路。
8. 如时间允许加接校时电路和报时电路(整点报时)。
7月8~9日9. 写课程设计报告。
a) 设计的目的、要求。
b) 总体框图设计。
c) 功能模块设计(对所用元器件使用作一些说明)。
d) 总电路图设计。
e) 总结:遇到的问题和解决办法、体会、意见、建议等。
八、Multisim2001软件部分集成块引脚图 集成块引脚图九、部分原理仿真模块电路4511构成译码驱动电路4060构成脉冲发生及分频电路74390 构成十进制计数器74390构成六进制计数器74390构成六十进制计数器校时电路(分校时时,不会进位到小时)十、数字钟的设计与制作原理具体参照:数字电子技术课程设计讲义-数字钟的设计与制作(电子信息学院,2004年6月)十一、Multisim2001软件及其参考仿真电路自己在对应位置下载。
十二、设计...
【设计一个直接显示时,分,秒的数字电子钟.和设计校时,校分的控制...
摘要:本文针对数字电子钟的设计要求,提出了一种基于EWB仿真软件设计数字电子钟的方法.系统由石英晶体振荡器,分频器,计数电路,译码显示电路,校时电路,整点报时电路组成,最终在EWB仿真下基本通过.关键词:EWB,数字电子钟,74160,分频器,计数器,晶体振荡电路一、课题名称:多功能数字电子钟二、设计任务及要求:1、有“时”、“ 分”、“ 秒”(23小时59分59秒)显示且有校时功能.(设计秒脉冲发生器)2、有整点报时功能.(选:上下午、日期、闹钟等)3、用中规模、小规模集成电路及模拟器件实现.4、供电方式:AC220V 50HZ.(设计5V直流稳压电源)三、 工作原理 数字电子钟是一个将“ 时”,“分”,“秒”显示于人的视觉器官的计时装置.它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有校时功能和报时功能.因此,一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”计数器、校时电路、报时电路和振荡器组成.主电路系统由秒信号发生器、“时、分、秒”计数器、译码器及显示器、校时电路、整点报时电路组成.秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现.将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲.“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”.“时计数器”采用24进制计时器,可实现对一天24小时的累计.译码显示电路将“时”、“分”、“秒”计数器的输出状态用七段显示译码器译码,通过七段显示器显示出来.整点报时电路时根据计时系统的输出状态产生一脉冲信号,然后去触发一音频发生器实现报时.校时电路时用来对“时”、“分”、“秒”显示数字进行校对调整.
【数字电子钟】请问电子钟的工作原理是什么简单点解释
一般的电子钟就是一个震荡电路,经整理后输出某个固定频率的脉冲电信号,驱使表针或者显示数字的方式指示时间。
其震荡源有的是一般RC或LC电路解决,一般不用了。
准确点的有石英振当电路来实现。
现在最准确的就是铯原子钟了。
这个问题,在这里不好回答,应在物理分类里呀。
51单片机做数字电子钟
源程序如下: ORG 0000H ;程序开始入口 LJMP START ORG 0003H ;外中断0中断程序入口 RETI ORG 000BH ;定时器T0中断程序入口 LJMP INTT0 ;跳至INTTO执行 ORG 0013H ;外中断1中断程序入口 RETI ORG 001BH ;定时器T1中断程序入口 LJMP INTT1 ORG 0023H ;串行中断程序入口地址 RETI ;---------------主程序----------------------; START:MOV R0,#70H ;70给R0,清70-7FH显示内存 MOV R7,#0FH CLEARDISP:MOV @R0,#00H ;0给R0中的数为地址的内存中存放(70H) INC R0 DJNZ R7,CLEARDISP MOV 78H,#2 ;默认时间为12:00,闹钟5:00 MOV 79H,#1 MOV 74H,#2 ;防止上电时数码管显示00小时 MOV 75H,#1 MOV 66H,#1 ;中断退出时66H为1时,分、时计时单元数据移入显存标志 MOV 68H,#1 ;上电默认闹钟开状态 MOV 7DH,#6 ;闹钟时十位 MOV 7CH,#3 MOV 69H,#0 MOV 7AH,#0AH ;放入"熄灭符"数据 MOV TMOD,#11H ;设T0、T1为16位定时器 MOV TL0,#0B0H ;50MS定时初值(T0计时用) MOV TH0,#3CH SETB EA ;总中断开放 SETB ET0 ;允许T0中断 SETB TR0 ;T0定时器开始计时 MOV R4,#14H ;1秒定时用初值(50MS*20) START1:LCALL DISPLAY ;显示子程序 LCALL BEEP ;闹钟查询 JNB P1.7,SETTIME ;P1.7口为0时转时间调整程序 JMP START1 ;P1.7口为1时跳回START1 ;-----------------------时间闹钟调整系统--------------------------; NFLAG:MOV A,68H ;设置闹钟开关状态 CJNE A,#1,BEE68 MOV 68H,#0 JMP E6 BEE68:MOV 68H,#1 E6:MOV 66H,#8 ;中断退出66H不为1时分、时计时单元数据移入显存标志 MOV 72H,7BH MOV 73H,7CH MOV 74H,7DH MOV 75H,7EH LCALL DDL LCALL DDL MOV 72H,68H MOV 73H,69H MOV 74H,7AH MOV 75H,7AH LCALL DDL LCALL DDL MOV 66H,#1 LJMP START1 SETTIME:LCALL DDL JB P1.7,NFLAG ;键按下时间小于1秒,设置闹钟开关状态并查看闹钟时间,不关走时,确保准确,大于1秒调时 MOV TL1,#0B0H ;T1闪烁定时初值 MOV TH1,#3CH MOV R2,#06H ;进入调时状态,赋闪烁定时初值 MOV 66H,#8 ;调闹钟时保持走时,关闭时钟显示数据 SETB ET1 ;允许T1中断 SETB TR1 ;开启定时器T1 SET1:LCALL DISPLAY ;调用显示,防止键按下无显示 JNB P1.7,SET1 ;P1.7口为0等待键释放 MOV R5,#00H ;清设置类型闪烁标志 SETN1:INC R5 ;闹钟分调整 SET5:LCALL DISPLAY JB P1.7,SET5 SEETN1:LCALL DDL ;有键按下大于1秒分时间连续加(0.5秒加1),小于1秒转调时状态 JB P1.7,SET6 ;键释放查询,键释放自动转调时 MOV R0,#7CH LCALL ADD1 MOV A,R3 CLR C CJNE A,#60H,HHN1 HHN1:JC SEETN1 LCALL CLR0 JMP SEETN1 SET6:INC R5 ;闹钟时调整 SEET6:LCALL DISPLAY JB P1.7,SEET6 SEETNH1:LCALL DDL JB P1.7,SETF MOV R0,#7EH LCALL ADD1 MOV A,R3 CLR C CJNE A,#24H,HOUU1 HOUU1:JC SEETNH1 LCALL CLR0 JMP SEETNH1 SETF:LCALL DISPLAY JB P1.7,SETF LCALL DDL JNB P1.7,SETOUT ;短按调时,长按退出 CLR ET0 CLR TR0 MOV 70H,#00H ;设定后的时间从00秒开始走时 MOV 71H,#00H INC R5 SET3:LCALL DISPLAY JB P1.7,SET3 SETMM:LCALL DDL JB P1.7,SET4 MOV R0,#77H LCALL ADD1 MOV A,R3 CLR C CJNE A,#60H,MMH MMH:JC SETMM LCALL CLR0 AJMP SETMM SET4:INC R5 SEET4:LCALL DISPLAY JB P1.7,SEET4 SETHH:LCALL DDL JB P1.7,SETOUT1 MOV R0,#79H LCALL ADD1 MOV A,R3 CLR C CJNE A,#24H,HOUU HOUU:JC SETHH LCALL CLR0 AJMP SETHH SETOUT1:SETB ET0 SETB TR0 ;计时开始 SETOUT:MOV R5,#00H ;清设置类型闪烁标志 CLR TR1 ;关闭T1 CLR ET1 ;关T1中断 MOV 66H,#1 SETOUT2:LCALL DISPLAY JNB P1.7,SETOUT2 LJMP START1 ;--------------------------延时1秒钟-----------------------; DDL:MOV 18H,#36 DDL0:MOV 17H,#239 DDL1:LCALL DISPLAY DJNZ 17H,DDL1 DJNZ 18H,DDL0 RET ;----------------------------T0中断程序------------------------; INTT0: PUSH ACC ;打包 PUSH PSW CLR ET0 CLR TR0 MOV A,#0B7H ADD A,TL0 MOV TL0,A MOV A,#3CH ADDC A,TH0 MOV TH0,A SETB TR0 DJNZ R4, OUTT0 ;20次中断未到中断退出 ADDSS: MOV R4,#14H ;20次中断到(1秒)重赋初值 MOV R0,#71H ;指向秒计时单元(70-71H) ACALL ADD1 ;调用加1程序(加1秒操作) MOV A,R3 ;秒数据放入A(R3为2位十进制数组合) CLR C ;清进位标志 CJNE A,#60H,ADDMM ADDMM: JC OUTT01 ;小于60秒退出 ACALL CLR0 ;等于或大于60秒清0 MOV R0,#77H ;指向分计时单元(76H-77H) ACALL ADD1 MOV A,R3 CLR C CJNE A,#60H,ADDHH ADDHH: JC OUTT0 ACALL CLR0 MOV R0,#79H ;指向小时计时单元(78H-79H) ACALL A...
单片机电子时钟详细流程图怎么画
利用实验平台上的4个LED数码管,设计带有闹铃功能的数字时钟。
1、 在4位数码管上显示当前时间,计时格式为“时时分分”2、 由LED闪烁做秒显示3、 利用按键可以对时间及闹钟进行设置,并可显示闹铃时间。
当闹铃时间到蜂鸣器发出声响,按停止键可使闹铃声停止。
...