打印

新人求助

[复制链接]
273|8
跳转到指定楼层
楼主
 楼主 | 2019-11-22 08:09 | 只看该作者 |退出气泡模式 回帖奖励 |倒序浏览 |阅读模式
#include<reg51.h>                 
#include <intrins.H>

#define uchar unsigned char
#define uint unsigned int  

//sfr P3M0=0Xb2;
//sfr P3M1=0Xb1;

sbit OUT=P3^3;         
sbit K1=P3^2;
bit u=0;

void delay(uint ms)          
{
        uint ti;
        while(ms--)
        {
                for(ti=0;ti<112;ti++)
                {
                }
        }
}

void main()
{       
        OUT=0;
  while(1)
  {
             if(K1==0)
                   delay(500);
                {if(K1==0)
        {
                OUT=!OUT;
                delay(50000);
                while(!K1);
         }
        }
  }
}       

/*上面代码是一个开关,实现按键都延时x秒有效,现在想改成  OUT=0时,延时x秒按键生效。
(意思是可以随时关,但关了之后要延时x秒才能开,哪位大神能指导一下呀!*/
沙发
| 2019-11-22 08:28 | 只看该作者
意思是用按键实现开关的功能吗?
板凳
| 2019-11-22 09:25 | 只看该作者
VX说吧详细说明一下你的问题,帮你分析一下,微信lmwktr1010
地板
 楼主 | 2019-11-22 17:04 | 只看该作者
dirtwillfly 发表于 2019-11-22 08:28
意思是用按键实现开关的功能吗?

开关的功能已经实现了,只是想修改一下按键的延时规则,上面的代码延时规则是不管开,关都延时x秒。
现在想改为,随时可以关,但由“关”变为 “开”时,延时x 秒,按键才有效。
5
| 2019-11-22 17:12 | 只看该作者
hnxhzq 发表于 2019-11-22 17:04
开关的功能已经实现了,只是想修改一下按键的延时规则,上面的代码延时规则是不管开,关都延时x秒。
现在 ...

说清楚就容易了。把
  1.         {
  2.                 OUT=!OUT;
  3.                 delay(50000);
  4.                 while(!K1);
  5.          }
复制代码
改为:
  1. {
  2.     OUT=!OUT;
复制代码


6
 楼主 | 2019-11-22 23:00 | 只看该作者
本帖最后由 hnxhzq 于 2019-11-22 23:50 编辑
dirtwillfly 发表于 2019-11-22 17:12
说清楚就容易了。把
改为:

老师:我用的是STC15F104W单片机,按照您的方法改程序之后,经测试没有达到目标要求,开和关仍是一样的延时。
7
| 2019-11-23 23:28 | 只看该作者
hnxhzq 发表于 2019-11-22 23:00
老师:我用的是STC15F104W单片机,按照您的方法改程序之后,经测试没有达到目标要求,开和关仍是一样的延 ...

不应该啊。
抱歉,手里没有这个mcu做验证。

另外,我也不是老师。
8
| 2019-11-25 08:51 | 只看该作者
加FLAG呗 多嵌套一层判断
9
| 2019-11-26 09:38 | 只看该作者
hnxhzq 发表于 2019-11-22 17:04
开关的功能已经实现了,只是想修改一下按键的延时规则,上面的代码延时规则是不管开,关都延时x秒。
现在 ...

方法很多了。
最典型的,你这是一个单按钮乒乓开关,则用一个计数器,奇数延时、偶数瞬时,或者换一下,就可以实现不对称动作。
或者轮换,每经过一次延时程序段,则修改一个标志,下一次看见标志则绕过延时,同时修改标志位为正常值。
等等,实现方法不一而足。
扫描二维码,随时随地手机跟帖
*滑动验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

关闭

热门推荐上一条 /5 下一条

在线客服 快速回复 返回顶部 返回列表
幸运飞艇官网 福建快三注册 快乐赛车 河北11选5走势图 快乐赛车 三分时时彩 三分快3 幸运赛车 天津十一选五前三走势 三分PK拾平台