8位数码管数字钟的制作线路图及视频教程
(衍纸艺术作品)

人气
下面是数码管 数字钟视频,在视频广告时间你可以浏览后面的图文资料哦~ 8位数码管数字钟的制作线路图及视频教程 显示格式依然是23-59-59(同样是小时十位如果为0则不显示),调整时间增加了一只按钮,通过调整选择键SET_KEY选择调整位,选中位开始闪烁,此时再按增加键ADD_KEY或减少键DEC_KEY调整选中位,如果长按ADD_KEY或DEC_KEY,系统识别后则进行调时快进,此时停止闪烁,方便人眼观察。同时还增加了调秒功能:如果选中位是秒,则按增加键或减少键都是将秒清零。

电路原理图:

8位数码管数字钟的制作线路图及视频教程

汇编程序设计:

/**************************************************************程序名称:51单片机8位数码管数字钟汇编程序简要说明:实现24小时制电子钟,8位数码管显示,显示时分秒 显示格式:23-59-59(小时十位如果为0则不显示) 通过3只按键来调整时间 调整选择键SET_KEY:P1.0;通过选择键选择调整位,选中位闪烁 增加键ADD_KEY:P1.1;按一次使选中位加1 减少键DEC_KEY;P1.2;按一次使选中位减1 如果长按ADD_KEY或DEC_KEY,识别后则进行调时快进,此时停止闪烁 如果选中位是秒,则按增加键或减少键都是将秒清零 P0口输出数码管段选信号,P2口输出数码管位选信号。晶振12M编 写:JiangX.net最后更新:08/12/31晚**************************************************************/ORG 0000H;程序入口地址LJMP STARTORG 000BH;定时器0中断入口地址LJMP TIMER_0

ORG 0300H

/*****程序开始,初始化*****/START:SETB 48H;使用一个bit位用于调时闪烁标志SETB 47H;使用一个bit位用于产生脉冲用于调时快进时基MOV R1,#0;调整选择键功能标志:0正常走时、1调时、2调分、3调秒

MOV 20H,#00H;用于控制秒基准时钟源的产生MOV 21H,#00H;清零秒寄存器MOV 22H,#00H;清零分寄存器MOV 23H,#00H;清零时寄存器MOV 24H,#00H;用于控制调时闪烁的基准时钟的产生MOV IP,#02H;IP,IE初始化MOV IE,#82HMOV TMOD,#01H;设定定时器0工作方式1MOV TH0,#3CHMOV TL0,#0B0H;赋定时初值,定时50ms SETB TR0;启动定时器0MOV SP,#40H;重设堆栈指针

/*****主程序*****/MAIN:LCALL DISPLAY ;调用显示子程序LCALL KEY_SCAN ;调用按键检测子程序JZ MAIN;无键按下则返回重新循环LCALL SET_KEY ;调用选择键处理子程序JB 46H,MAIN;如果已进行长按调整(调时快进)(衍纸艺术作品),则不再执行下面的单步调整LCALL ADD_KEY;调用增加键处理子程序,加一LCALL DEC_KEY;调用减少键处理子程序,减一LJMP MAIN ;重新循环/*****定时器中断服务程序*****/TIMER_0:PUSH ACC PUSH PSW ;保护现场MOV TH0,#3CHMOV TL0,#0B0H ;重新赋定时初值CPL 47H;产生脉冲用于调时快进时基INC 24HMOV A,24HCJNE A,#10,ADD_TIME;产生0.5秒基准时钟,用于调时闪烁CPL 48H;取反调时闪烁标志位MOV 24H,#00H

ADD_TIME:;走时INC 20H MOV A,20HCJNE A,#20,RETI1;产生1秒基准时钟MOV 20H,#00H ;一秒钟时间到,清零20HMOV A,21HADD A,#01HDA A;作十进制调整MOV 21H,ACJNE A,#60H,RETI1MOV 21H,#00H ;一分钟到MOV A,22HADD A,#01HDA AMOV 22H,ACJNE A,#60H,RETI1MOV 22H,#00H ;一小时到MOV A,23HADD A,#01HDA AMOV 23H,ACJNE A,#24H,RETI1MOV 23H,#00H ;到24点,清零小时RETI1:POP PSW POP ACC ;恢复现场RETI ;中断返回

收藏: 1 次
热点文章随机推荐