标题: 求指导 单片机三位数码管显示,设置时如何让显示的数字闪烁? [打印本页]

作者: zhth1979    时间: 2022-4-8 09:01
标题: 求指导 单片机三位数码管显示,设置时如何让显示的数字闪烁?
三位数码管显示,设置时如何让显示的数字闪烁?退出设置时稳定显示,只是在按下加减键设置时闪烁。最好有例程参考一下。先谢谢各路大神!

作者: hcf007    时间: 2022-4-8 16:16
设置一个标志位,按键按下,if判断标志位成立,数字闪烁
作者: yzwzfyz    时间: 2022-4-9 09:43
1、做三个标记,B_100,B_10,B_1。分别表示百十个位的闪=1,与不闪=0。如果你想闪哪个就将哪个置1。
2、做0.3秒的定时中断,每次中断将。B_FLASH求反。
3、扫描显示:当你取出LED的段码(如:D_N),准备送至端口显示时,将送出的D_N改一下,改成:D_N_F吧:
以个位为例:
D_N_F = D_N *(/B_1 + B_1 * B_FLASH) ,将D_N_F送至端口,这样就要以了。注:/B_1是非逻辑。
如此你可以,决定任何一位的闪与不闪,只需将B_100,B_10,B_1置1清0即可实现。


作者: Y_G_G    时间: 2022-4-9 10:10
设置三个标志
一个是设定模式标志
一个是设置位置标志
一个定时器标志
显示的时候先检测是不是在设置模式,如果是在,就检测设置位置,0.5秒定时器标志位取反一次
当检测到设置标志,设置位标志,定时器标志,三者都符合的时候,这个位就不显示了
等到定时器标志位两次取反,条件就不成立了,这个位就显示了
这就是一个闪的效果了
代码要远比我打的字少,不给代码是想让你思考
作者: 天ノ忆    时间: 2022-4-10 17:07
先让一个数码管闪烁,再让其他正常其中一个闪烁,再做可以任意选择哪个数码管闪烁,再做检测按键的部分,根据检测结果设置标志位来确定让哪个闪烁,或者根据检测结果来确定是否让他闪烁,最后把他们组合到一起。
代码比我打的字多,花费时间也更多,不给代码是想让你思考,而不是我懒
作者: zhth1979    时间: 2022-4-28 10:55
hcf007 发表于 2022-4-8 16:16
设置一个标志位,按键按下,if判断标志位成立,数字闪烁

谢谢 ,已经搞定了
作者: zhth1979    时间: 2022-4-28 10:56
yzwzfyz 发表于 2022-4-9 09:43
1、做三个标记,B_100,B_10,B_1。分别表示百十个位的闪=1,与不闪=0。如果你想闪哪个就将哪个置1。
2、做0 ...

谢 谢 ,已通过定时中断求反搞定了
作者: zhth1979    时间: 2022-4-28 10:56
Y_G_G 发表于 2022-4-9 10:10
设置三个标志
一个是设定模式标志
一个是设置位置标志

谢 谢 ,已通过定时中断求反搞定了
作者: zhth1979    时间: 2022-4-28 10:57
天ノ忆 发表于 2022-4-10 17:07
先让一个数码管闪烁,再让其他正常其中一个闪烁,再做可以任意选择哪个数码管闪烁,再做检测按键的部分,根 ...

谢 谢 ,已通过定时中断求反搞定了
作者: univers    时间: 2022-4-28 17:03
加入LED灭代码即可,大概如下:
显示数字
延时200毫秒
显示灭灯200毫秒
显示数字
延时200毫秒
作者: zhth1979    时间: 2022-4-29 14:42
univers 发表于 2022-4-28 17:03
加入LED灭代码即可,大概如下:
显示数字
延时200毫秒

谢 谢 ,已通过定时中断求反搞定了
作者: shenqiwei    时间: 2022-5-3 03:43
用延时函数,多延时几秒就可以实现你需要功能了!需要代码?
作者: zhth1979    时间: 2022-5-5 15:51
shenqiwei 发表于 2022-5-3 03:43
用延时函数,多延时几秒就可以实现你需要功能了!需要代码?

已经搞定了,谢 谢 了




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1