久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

下面是單片機按一次燈亮且報警,松開按鍵解除報警怎么改讓它按鍵按下報警,再按解除...

查看數: 1790 | 評論數: 7 | 收藏 1
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2022-9-23 11:49

正文摘要:

#include "reg51.h"          void     delay(unsigned int i); sbit K=P0^0;                 ...

回復

ID:137736 發表于 2022-9-24 21:30
設置個標注位,按鍵翻轉標注位,檢測標注位決定是否報警。
ID:176854 發表于 2022-9-24 15:51
根據上面的建議修改的程序

#include "reg51.h"         
void     delay(unsigned int i);
sbit K=P0^0;                     
sbit beep=P1^0;                  
sbit green=P1^1;                 
sbit red=P1^2;      
unsigned char Flag = 0;
void  main()
{
  green=0;     
  red=1;   
  while(1)
   {
     if(K==0)            
      {
        while(K==0);                       
        Flag = ~Flag;
      }
     if(Flag)
                 {
                   green=1;   
       red=0;      
       beep=0;     
       delay(100);
       red=1;      
       beep=1;
                 }
                 else
                 {
                   green=0;
                         red=1;
       beep=1;                         
                 }
   }
}

void     delay(unsigned int i)            
{
unsigned int k;
for(k=0;k<i;k++);
}

ID:1045644 發表于 2022-9-24 10:17
rctty 發表于 2022-9-23 17:33
這里的K == 0  改成按下到彈起整個過程的狀態,可以通過另一個變量來解決,
比如改成 b == 1,
就有

你好,請問能不能幫我寫一下具體的程序,初學單片機然后有些還不是很懂,謝謝
ID:1045644 發表于 2022-9-24 09:52
munuc_w 發表于 2022-9-23 15:12
可以采用計數的方法,定義一個變量,初始值為0,按一次按鍵加1,然后判斷變量的值,當變量等于1時報警,為2 ...

可不可以寫一下具體程序,初學單片機,好多都還不懂
ID:1045628 發表于 2022-9-23 17:33
rctty 發表于 2022-9-23 16:04
用一個變量做標識,
char a = 1;

這里的K == 0  改成按下到彈起整個過程的狀態,可以通過另一個變量來解決,
比如改成 b == 1,
就有
先判斷按下到談起的狀態
if(K == 0)//按鈕按下
{
     while(K == 0);//等待按鈕彈起
    b = 1;
}

當然,這里的while強制等待是不太合適的,這樣會卡住單片機的運行,可以通過定時器之類的方法進行改善


ID:1045628 發表于 2022-9-23 16:04
用一個變量做標識,
char a = 1;

if(K == 0)//這是檢測到按下的狀態?
{
if(a)
{
     a = 0;
     //報警亮燈代碼

    //
}
else
{
     a = 1;
     //解除報警,滅燈代碼

     //
}
}

不過你這個按鍵識別應該在軟件上做一個防抖動濾波

ID:752974 發表于 2022-9-23 15:12
可以采用計數的方法,定義一個變量,初始值為0,按一次按鍵加1,然后判斷變量的值,當變量等于1時報警,為2時接觸報警,同時清變量。

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久av一区 | 久久精品色欧美aⅴ一区二区 | 一区二区三区四区在线 | 综合久久99| 欧美αv | 一区二区三区av夏目彩春 | 国产精品久久一区二区三区 | av免费网站在线观看 | 久久国产一区二区 | 日韩精品在线看 | 国产一区二区三区在线视频 | 国产精品一区二区在线播放 | 在线观看第一页 | 国产一区二区三区在线看 | 亚洲久久在线 | 黄网站色大毛片 | 日韩一二区在线 | 成年人视频在线免费观看 | 久久视频精品 | 精一区二区| 国产精品不卡 | 激情一区二区三区 | 精品国产一二三区 | 国产综合久久久 | 一区二区三区四区免费观看 | 精品久久久久久久久久久久久久久久久 | 91精品国产综合久久精品图片 | 黄色片a级| 亚洲精品成人 | 国产东北一级毛片 | 日本 欧美 国产 | 天天夜夜操 | 一级a性色生活片久久毛片 午夜精品在线观看 | 亚洲一区二区三区免费视频 | 亚洲精品久久久久久宅男 | 国产日韩欧美在线观看 | 日韩美香港a一级毛片免费 国产综合av | 91www在线观看 | 国产精品一区二区三区在线 | www.久草| 一区二区三区欧美在线 |