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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2552|回復: 6
打印 上一主題 下一主題
收起左側

在單片機倒計時器程序里面再加一個按鍵循環開關?

[復制鏈接]
跳轉到指定樓層
樓主
ID:849826 發表于 2021-7-21 10:42 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
倒計時程序

#include<reg52.h>  //最長99分鐘定時倒計時提醒器
                       //2021-7-14        中微電子
#define uchar unsigned char
#define uint unsigned int
sbit gewei0=P1^6;   //允許個位顯示。
sbit shiwei0=P1^7;  //允許十位顯示。
sbit key1=P1^2;  //鍵1,每按加10分鐘。
sbit key2=P1^1;  //鍵2,每按加1分鐘。
sbit key3=P1^0;  //鍵3,開倒計時或暫停。
sbit beep=P1^3;         //蜂鳴器
sbit  led=P1^4;          //秒指示燈
sbit  jdq=P3^4;        //繼電器        
uchar k;
unsigned int s,m;
void delayms(uchar);
void delay(uint z);
void keyscan();
void display(uchar);
void init();
void xiang1();
void xiang2();
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};


void main()
{ init();     //調“初始化”。
  while(1)
  { keyscan();  //調“監測按鍵”。
    display(k); //調“顯示”。
}}


void keyscan() //監測按鍵。
{ if(key2==0)
  { delayms(26);
    if(key2==0)
    { k++;
      if(k>=99) //k==99與中斷那里一致。
         k=0;
      while(!key2); //抬起按鍵key2時,顯示出k+2的結果。
    }
  }


  if(key1==0)
  { delayms(26);
    if(key1==0)
    { k=k+10;
      if(k>=99) //k==99與中斷那里一致。
         k=0;
      while(!key1);
    }
  }
  if(key3==0)
  { delayms(26);
    if(key3==0)
    {         
          xiang1(); //啟動“倒計時”提示。
      delayms(246);
      TR0=~TR0;
           jdq=~jdq;  //繼電器狀態 隨啟動停止按鍵翻轉
      while(!key3);
         
}}}


void delayms(uchar z) //延時。
{ uchar i,j;
  for(i=z;i>0;i--)
    for(j=110;j>0;j--); }


void delay(uint z)
{  while(z--); }


void display(uchar k) //顯示。
{ uchar shi,ge;
  shi=k/10;
  ge =k%10;


  gewei0=0;
  P2=table[ge];
  delayms(21);
  gewei0=1;


  shiwei0=0;
  P2=table[shi];
  delayms(21);
  shiwei0=1;
}


void init() //初始化。設置中斷與定時器的值。
{ TMOD=0x01;
  TH0=(65536-50000)/256;  //晶振12MHz,定時50ms。
  TL0=(65536-50000)%256;
  EA=1;
  ET0=1;
}


void xiang1() //計時開始提示音。
{
  uchar q;
  for(q=0;q<100;q++)
  {
    beep=0;
    delayms(6);
    beep=1;
    delayms(4);
  }
    delayms(64);
}




   void xiang2() //計時結束提示音--嘟嘟。
{
  unsigned int m;
  uchar n,i;
  for(i=3;i>0;i--)
  {
    for(n=123;n>0;n--)
    {
      beep=0;
      delay(100);
      beep=1;
      delay(100);
    }


   for(m=3456;m>0;m--);
    for(n=123;n>0;n--)
    {
      beep=0;
      delay(90);
      beep=1;
      delay(90);
                  
    }


         
   for(m=56789;m>0;m--);
        
  }

}










void time0()interrupt 1  //0中斷,中斷序號1。
{ uint zxc=65432;
  TH0=0xb1; //晶振12MHz,定時20ms。
  TL0=0xe0;
  s++;
  if(m==25)  //作秒指示。
  {
    m=0;
    led=~led;}
  m++;  //uchar m; 定義為全局變量。
  if(s==3000) //3000×20ms=60000ms÷1000ms=60s(1分鐘)
  { s=0;   //歸零。等待下個1分鐘。
    k--; } //倒計時,減1分鐘。


  if(k<=0) //如果到0,發聲,關閉中斷。
  {
    k=0;
    xiang2();

    TR0=0;   //預定時間到,關中斷0,停止。
        jdq=1;         // 繼電器釋放
}}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:849826 發表于 2021-7-21 10:46 來自手機 | 只看該作者
回復

使用道具 舉報

板凳
ID:849826 發表于 2021-7-21 10:48 來自手機 | 只看該作者
把鏈接里面按鍵循環開關加倒,計時器里面,模擬的時候風扇一個按鍵循環控制三個檔位,和倒計時功能,誰幫我把按鍵循環程序,加倒計時器里面
回復

使用道具 舉報

地板
ID:955239 發表于 2021-7-21 11:50 | 只看該作者
只提供思路參考
按鍵循環可以使用“狀態機”來實現。比如第一次按下,按鍵做出第一次按的響應,同時按鍵狀態更改為下一個狀態。根據“狀態機”狀態來響應同一個按鍵的不同功能。
回復

使用道具 舉報

5#
ID:161164 發表于 2021-7-21 16:04 | 只看該作者
6313 發表于 2021-7-21 10:48
把鏈接里面按鍵循環開關加倒,計時器里面,模擬的時候風扇一個按鍵循環控制三個檔位,和倒計時功能,誰幫我 ...

樓主的魚文,能力太可怕了
我是說樓主的,魚文能力太,可怕了

樓主的代碼中已經有三個按鍵
現在是要再加一個按鍵去實現循環控制三個檔位嗎?
回復

使用道具 舉報

6#
ID:849826 發表于 2021-7-21 20:38 | 只看該作者
lkc8210 發表于 2021-7-21 16:04
樓主的魚文,能力太可怕了
我是說樓主的,魚文能力太,可怕了

是你的理解能力太差
回復

使用道具 舉報

7#
ID:123289 發表于 2021-7-22 09:04 | 只看該作者
的確,估計我的理解能力也差。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品一二区 | 欧美电影大全 | 羞羞色网站 | 久色网| 国产精品a一区二区三区网址 | 天堂男人av| 久久精品在线播放 | 99热.com| 国产色黄 | 在线免费观看成人 | 91视频国产精品 | 亚洲www | 伊人久操| 性高湖久久久久久久久 | 亚洲高清视频在线观看 | 欧美成人精品激情在线观看 | 爱综合| 中文字幕一区二区三区四区五区 | 国产一区二区不卡 | 精品网| 成人性视频免费网站 | 久久99精品久久久久久青青日本 | 免费三级网 | 色综合久| 日韩在线观看一区二区三区 | 国产91丝袜在线播放 | 亚洲成人精品 | 99免费精品视频 | 亚洲福利网站 | 精品国产乱码一区二区三区 | 在线观看h视频 | 黄色一级毛片免费看 | 999国产精品视频免费 | 观看av| 99热播精品 | 日本一级淫片免费啪啪3 | 日本不卡一区 | 国产精品国产精品国产专区不卡 | 男女视频在线观看 | 欧美成人精品一区二区三区 | 成人九区 |