智能电子钟的功能

上传人:子 文档编号:43835173 上传时间:2018-06-07 格式:DOC 页数:31 大小:251.50KB
返回 下载 相关 举报
智能电子钟的功能_第1页
第1页 / 共31页
智能电子钟的功能_第2页
第2页 / 共31页
智能电子钟的功能_第3页
第3页 / 共31页
智能电子钟的功能_第4页
第4页 / 共31页
智能电子钟的功能_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《智能电子钟的功能》由会员分享,可在线阅读,更多相关《智能电子钟的功能(31页珍藏版)》请在金锄头文库上搜索。

1、一、智能电子钟的功能一、智能电子钟的功能1、全日历计时。 2、12/24 小时转换。 3、8 路定时输出(可关/开控制) 4、误差:15S+1uS 5、大、小月,润年,周,自动追踪二、二、 调校调校上电后,电子钟显示“1:00”。1、8 路定时时间查询按下 K1 键依此显示 8 路定时时间。星期位显示:“H”表示:打开当前定 时输出;“L” 表示:关闭当前定时输出。此时按 K2 键可进行“H”、“L”的 切换。所有输出,均由蜂鸣器输出!2、显示状态的控制按下 K2 键可进入以下工作状态: 1)12 小时/ 日月交替显示。 2)12 小时固定显示。 3)24 小时/ 日月交替显示。 4)24 小

2、时固定显示。3、校时按下 K2 键 3S 后,进入校时菜单。按下 K1 键依次进入校时状态:分、时、 天、月、年、微调系数。此时按 K2 键,完成+1。当显示“d”时,表示要调整 微调系数(0-99),其值越小,时钟走时越慢。当使用的 6MHz 的晶振偏差大时, 应仔细调整微调系数!当显示“out”时,按 K2 键,即可退出!退出后,按任 意键即可启动时钟。4、设置定时时间按下 K1 键 3S 后,进入设置菜单。按下 K1 键依次进入 8 路定时调整状态: 时、分。此时按 K2 键,完成+1。当显示“out”时,按 K2 键,即可退出! 三、原理图和 PCB 图下一页 AT89C2051 的智

3、能时钟单片机源程序以下为 AT89C2051 的智能时钟的内部程序;2001.5.24 ;* ;all_clk1 _program 2000-10-12 ;* fl_250ms bit 00h fl_500ms bit fl_250ms+1 set_clk_f bit fl_500ms+1 set_al4_f bit set_clk_f+1 am_f bit set_al4_f+1 fl_3s bit am_f+1 al1_f bit fl_3s+1al2_f bit fl_3s+2 al3_f bit fl_3s+3 al4_f bit fl_3s+4 set_over bit al4_f+

4、1 ha_f bit set_over+1 ha_over bit ha_f+1 fl_ms_f bit ha_over+1 fl_s_f bit fl_ms_f+1 key_over bit fl_s_f+1 ;* key_data equ 08h timers equ key_data+1 t_30ms equ timers+1 t_20ms equ t_30ms+1 t_1s equ t_20ms+1 k1_data equ t_1s+1 k2_data equ k1_data+1 stat_work equ k2_data+1 stat_led equ stat_work+1 t_1m

5、s equ stat_led+1 t_20m equ t_1ms+1 beep equ t_20m al1 equ beep+1 al2 equ beep+2 al3 equ beep+3 al4 equ beep+4 al5 equ beep+5 al6 equ beep+6 al7 equ beep+7 al8 equ beep+8 ret_timer equ al8+1 ;* sec equ 23h min equ sec+1h hour equ min+1h day equ hour+1h mon equ day+1h year equ mon+1h w_adj equ year+1h

6、 week equ w_adj+1h ;* al1_h equ week+1h al1_m equ al1_h+1h al2_h equ al1_m+1hal2_m equ al2_h+1h al3_h equ al2_m+1h al3_m equ al3_h+1h al4_h equ al3_m+1h al4_m equ al4_h+1h al5_h equ al4_m+1h al5_m equ al5_h+1h al6_h equ al5_m+1h al6_m equ al6_h+1h al7_h equ al6_m+1h al7_m equ al7_h+1h al8_h equ al7_

7、m+1h al8_m equ al8_h+1h beep_t equ al8_m+1 frist equ beep_t+1 ;* led1 equ frist+1 led2 equ led1+1 led3 equ led2+1 led4 equ led3+1 led5 equ led4+1 sp_data equ led5+1 ;* led_1 bit p3.5 led_2 bit p3.4 led_3 bit p3.3 led_4 bit p3.2 led_5 bit p3.1beep_f BIT P3.7 key_f bit p3.0;* t_h_100ms equ 05dh ;100 m

8、s for 6MHz t_l_100ms equ 07fh ;c6 for 100ms timer_no equ 8d ;3c90+30d=3cb0h w_adj_dat equ 50d key_da equ 00000110b;* blk_led equ 20d dot_led equ 21d f_led equ 22d n_led equ 23d u_led equ 24d t_led equ 25d b_led equ 26d d_led equ 27doRG 0000H; ; sJMP start ORG 0003H; ; reti; ORG 000BH ; ;ajmp t0 reti

9、 ; ORG 0013H reti ; ORG 001BH ; aJMP T1 ; ORG 0023H ; RETI; AJMP RS_485 ;* start: call clr_ram MOV SP,#sp_data ; call int_t0 call timer_int call timer_20ms STAR_BI: call clock call week_auto call al_out CALL KEY_bord call key_del call set_clk_al call key_jmp call reback call led_jmp sjmp star_bi ;*

10、reback: mov a,stat_work jz reback_end jb al1_f ,ka1 mov ret_timer,sec setb al1_f sjmp reback_end ka1: mov a,ret_timer add a,#05d mov b,#60d div ab mov a,sec cjne a,b,reback_end clr al1_f mov stat_work,#00d reback_end: ret key_jmp: mov a,key_data jz key_jmp_end mov ret_timer,sec cjne a,#01d,kk1 mov a

11、,stat_work inc a ;k1_key cjne a,#9d,kka1 mov a,#00d kka1: mov stat_work ,a sjmp key_jmp_end kk1: mov a,stat_work ;k2_key jnz kk2 mov a,stat_led inc a cjne a,#05d,kka2 mov a,#00d kka2: mov stat_led,a sjmp key_jmp_end kk2: acall all1 cpl a mov r0,a key_jmp_end: retall1: mov r0,#al1 mov a,stat_workdec

12、a add a,r0 mov r0,a mov a,r0 retled_jmp: ;* ;mov stat_work,#01d ;mov stat_tw,#01dmov a,stat_work jnz led_al1 mov a,stat_led acall led_t_d mov led1,week sjmp led_jmp_end led_al1: acall all1 mov led1,#f_led jnz le_t2 mov led1,#n_led le_t2: jb fl_250ms ,le_t4 mov led1,#blk_led le_t4: acall al_led led_j

13、mp_end: acall led ret ;*time_24: mov a,hour acall bcd_8 mov led2,a jnz tim4 mov led2,#blk_led tim4: mov led3,b jb fl_500ms,tim1 mov a,b add a,#10d mov led3,a tim1: acall led_min time_12_end: ret ;* led_min: mov a,min acall bcd_8 jb fl_500ms ,tim2 add a,#10d tim2: mov led4,a mov led5,b ret ;*date_led

14、: mov a,mon acall bcd_8 mov led2,a jnz da1 mov led2,#blk_led da1: mov a,b add a,#10d mov led3,a mov a,day acall bcd_8 mov led4,a jnz da2 mov led4,#blk_led da2: mov led5,b date_led_end: ret;* ; D_8=BCD ;* BCD_8: MOV B,#10D DIV AB RET ;*LED: mov p1,#0 mov dptr,#led_asc ;*led1 mov a,led1 movc a,a+dptr mov p1,a clr led_1 acall timer_1ms acall timer_1ms ;acall timer_1ms ;acall timer_1ms ;acall timer_1m

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号