共2条
1/1 1 跳转至页
数码管时钟,在校对时间时,怎么实现分和时的闪动(即亮、灭一会
问
众高手,帮忙解答一下
我用是的公阴的数码管,直接通过3级管相连! 答 1: 我的做法1、用程序实现,你能让她显示也就能让他闪。不过动态刷新时,要闪的位时而跟着闪烁,时而不显示就可
2、用硬件做一个闪光器 答 2: 楼上的大虾!可否再说明白些!用软件!!!谢谢 答 3: 一个计数器随着主计数器走就可以了。char timera,timerb;
void disp()
{
timera++;
if (timera==100)
timerb++;
if (timerb==0)
hide();
else
light();
} 答 4: 这个我知道,谢谢楼上的问题是
怎么样,才能将时和分和秒
分开!!!
即分闪,而时和秒不闪;
谢谢,楼上的
再给点见解 !!!
答 5: 我做过的,你可以看一下"我的数字钟程序 答 6: 用定时器定时放入一个熄灭符! 答 7: win2000_li 我怎么联系你呢???win2000_li 我怎么联系你恩
你的作品放在哪里?? 答 8: 很多书上都有这样的例子;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 闪动调时 程 序 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;T1中断服务程序,用作时间调整时调整单元闪烁指示
INTT1: PUSH ACC ;中断现场保护
PUSH PSW ;
MOV TL1, #0B0H ;装定时器T1定时初值
MOV TH1, #3CH ;
DJNZ R2,INTT1OUT ;0.3秒未到退出中断(50MS中断6次)
MOV R2,#06H ;重装0.3秒定时用初值
CPL 02H ;0.3秒定时到对闪烁标志取反
JB 02H,FLASH1 ;02H位为1时显示单元"熄灭"
MOV 72H,76H ;02H位为0时正常显示
MOV 73H,77H ;
MOV 74H,78H ;
MOV 75H,79H ;
INTT1OUT: POP PSW ;恢复现场
POP ACC ;
RETI ;中断退出
FLASH1: JB 01H,FLASH2 ;01H位为1时,转小时熄灭控制
MOV 72H,7AH ;01H位为0时,"熄灭符"数据放入分
MOV 73H,7AH ;显示单元(72H-73H),将不显示分数据
MOV 74H,78H ;
MOV 75H,79H ;
AJMP INTT1OUT ;转中断退出
FLASH2: MOV 72H,76H ;01H位为1时,"熄灭符"数据放入小时
MOV 73H,77H ;显示单元(74H-75H),小时数据将不显示
MOV 74H,7AH ;
MOV 75H,7AH ;
AJMP INTT1OUT ;转中断退出 答 9: 呵呵,谢谢楼上的汇编我不懂。。。。。
有没有C语言的呢
答 10: win2000_li你好!
我已经找到你的程序了!
没有注释,很难看懂!
你有没有流程图啊?? 答 11: 用标志位控制 答 12: 设定三个标志位设定三个标志位 在闪的时候先查看标志为的状态 然后确定闪那两个管子
程序可以设两组显示码一个放显示码另一个放熄灭码 每隔一定的时间(0.3秒)轮流装入一次 只用一个定时器就可以了
时 分 秒
组1 时显示 分显示 秒显示
组2 熄灭码(0X00或0XFF) 分显示 秒显示
标志位 H_FLAG=1 M_FLAG=0 S_FLAG=0
答 13: 谢谢。楼上的!!!谢谢,楼上各位大虾的帮助!!!
我用是的公阴的数码管,直接通过3级管相连! 答 1: 我的做法1、用程序实现,你能让她显示也就能让他闪。不过动态刷新时,要闪的位时而跟着闪烁,时而不显示就可
2、用硬件做一个闪光器 答 2: 楼上的大虾!可否再说明白些!用软件!!!谢谢 答 3: 一个计数器随着主计数器走就可以了。char timera,timerb;
void disp()
{
timera++;
if (timera==100)
timerb++;
if (timerb==0)
hide();
else
light();
} 答 4: 这个我知道,谢谢楼上的问题是
怎么样,才能将时和分和秒
分开!!!
即分闪,而时和秒不闪;
谢谢,楼上的
再给点见解 !!!
答 5: 我做过的,你可以看一下"我的数字钟程序 答 6: 用定时器定时放入一个熄灭符! 答 7: win2000_li 我怎么联系你呢???win2000_li 我怎么联系你恩
你的作品放在哪里?? 答 8: 很多书上都有这样的例子;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 闪动调时 程 序 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;T1中断服务程序,用作时间调整时调整单元闪烁指示
INTT1: PUSH ACC ;中断现场保护
PUSH PSW ;
MOV TL1, #0B0H ;装定时器T1定时初值
MOV TH1, #3CH ;
DJNZ R2,INTT1OUT ;0.3秒未到退出中断(50MS中断6次)
MOV R2,#06H ;重装0.3秒定时用初值
CPL 02H ;0.3秒定时到对闪烁标志取反
JB 02H,FLASH1 ;02H位为1时显示单元"熄灭"
MOV 72H,76H ;02H位为0时正常显示
MOV 73H,77H ;
MOV 74H,78H ;
MOV 75H,79H ;
INTT1OUT: POP PSW ;恢复现场
POP ACC ;
RETI ;中断退出
FLASH1: JB 01H,FLASH2 ;01H位为1时,转小时熄灭控制
MOV 72H,7AH ;01H位为0时,"熄灭符"数据放入分
MOV 73H,7AH ;显示单元(72H-73H),将不显示分数据
MOV 74H,78H ;
MOV 75H,79H ;
AJMP INTT1OUT ;转中断退出
FLASH2: MOV 72H,76H ;01H位为1时,"熄灭符"数据放入小时
MOV 73H,77H ;显示单元(74H-75H),小时数据将不显示
MOV 74H,7AH ;
MOV 75H,7AH ;
AJMP INTT1OUT ;转中断退出 答 9: 呵呵,谢谢楼上的汇编我不懂。。。。。
有没有C语言的呢
答 10: win2000_li你好!
我已经找到你的程序了!
没有注释,很难看懂!
你有没有流程图啊?? 答 11: 用标志位控制 答 12: 设定三个标志位设定三个标志位 在闪的时候先查看标志为的状态 然后确定闪那两个管子
程序可以设两组显示码一个放显示码另一个放熄灭码 每隔一定的时间(0.3秒)轮流装入一次 只用一个定时器就可以了
时 分 秒
组1 时显示 分显示 秒显示
组2 熄灭码(0X00或0XFF) 分显示 秒显示
标志位 H_FLAG=1 M_FLAG=0 S_FLAG=0
答 13: 谢谢。楼上的!!!谢谢,楼上各位大虾的帮助!!!
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |