找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6714|回复: 8
收起左侧

单片机按键暂停数码管显示怎么设计程序?

[复制链接]
ID:452212 发表于 2018-12-27 16:35 | 显示全部楼层 |阅读模式
请问可以通过按键暂停数码管显示(主程序)吗?如果能,要怎么操作呢?

回复

使用道具 举报

ID:444306 发表于 2018-12-27 21:50 | 显示全部楼层
能啊,换内容都行!数码管显示只不过是在做扫描动作!你想暂停就是不改变显示的变量值,假如你的数字一直在0-9间变换,你让该变量不加也不减,它就是一个固定值,显示时就好像暂停效果。做一个条件语句,如:if(flag==2){i=i+0;};  else  (flag==1)i++;........后面就是你具体化了

评分

参与人数 2黑币 +50 收起 理由
#include51.h + 15 很给力!
shuisheng + 35 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:123289 发表于 2018-12-27 21:52 | 显示全部楼层
首先了解数码管是如何显示的?再解决什么是“暂停显示”?
弄清楚以上两点,你就可以解决问题了。
回复

使用道具 举报

ID:393699 发表于 2018-12-27 23:31 | 显示全部楼层
暂停显示是指数码管熄灭吗?还是数字停住不动?要熄灭的话直接写数据进去就可以了,数字停止不动这个嘛要看程序了,我做的话就设个标志位加个if判断影响数码管刷新。
回复

使用道具 举报

ID:357520 发表于 2018-12-28 08:39 | 显示全部楼层
如果用定时器和按键实现的话,可以使用标志位flag实现,flag=0时定时器启动,flag=1时定时器关闭
  1.                 if(!c_to_puse)  //暂定和开始计时(S4)
  2.                 {
  3.                         delay_50us(10);
  4.                         if(!c_to_puse)
  5.                         {

  6.                                 TR0=~TR0;
  7.                                
  8.                                 while(!c_to_puse)
  9.                                 {
  10.                                         for(num=0;num<6;num++)
  11.                                         {
  12.                                                 display(num,numduan_base[num]);
  13.                                                 delay_50us(30);               
  14.                                         }
  15.                                 }
  16.                         }                       
  17.                 }
复制代码
回复

使用道具 举报

ID:451718 发表于 2018-12-28 09:25 | 显示全部楼层
一般实用的数码管刷新都是在定时器中断中进行的。那么可以用外部中断来实现你想要的功能。 在中断中判断按键抖动,并设置标志位(第一个标志位用来判断第一次按下,第二个标志位用来判断第二次按下)。在主程序中判断标志位,第一个标志为1时,关计时器中断,暂停刷新,进入while循环等待。两个标志位同时为1时,跳出while循环,开计时器中断,继续刷新数码管。如两个标志位同时为1,记得清零。
回复

使用道具 举报

ID:457092 发表于 2018-12-28 10:56 | 显示全部楼层
按键判定不刷新
回复

使用道具 举报

ID:446674 发表于 2018-12-28 11:26 | 显示全部楼层
可以,一个中断就行了
回复

使用道具 举报

ID:269211 发表于 2019-1-3 21:47 | 显示全部楼层
写个中断就行了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表