找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 6480|回復(fù): 10
打印 上一主題 下一主題
收起左側(cè)

STC15F104W單片機(jī)四路按鍵循環(huán)開關(guān)程序

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:849826 發(fā)表于 2020-12-16 14:00 來自觸屏版 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
用一個按鍵控制四個繼電器循環(huán)導(dǎo)通,程序由51單片機(jī)的程序改到STC15F104W上,第一次按鍵,第一個繼電器吸合,第二次按鍵,第二個繼電器吸合,第一個繼電器釋放,以此類推。最初的想法就是實現(xiàn)電風(fēng)扇,三檔開關(guān),程序里面可以修改端口。
#include<reg52.h>

sbit key = P3^4; //定義按鍵

void delayms(void);                         //延時
void led_refresh(unsigned char i);   //led顯示
unsigned char keyscan(void);                 //按鍵
void init(void);                                         //初始化

void main(void)
{
   unsigned char m;

   init();
   while(1)
        {
          m = keyscan();
          led_refresh(m);
        }

}
               
void delayms(void)                   //延時函數(shù)
{
  unsigned int i;

  i = 10000;
  while(i--);
}

void led_refresh(unsigned char j)        //led顯示
{
      switch(j)
           {
                  case 0 :  P3=0xFF; break;            // 全部熄滅
                  case 1 :  P3=0xFE; break;                // led1 點亮
                  case 2 :  P3=0XFD; break;                // led2 點亮
                  case 3 :  P3=0XFB; break;                // led3
                                  case 4 :  P3=0XF7; break;        
           }
}

unsigned char keyscan(void)                          //按鍵掃描
{
        static unsigned char count = 0;
        unsigned char z = 0;
    static bit keyflag = 1;
    static bit backup = 1;

       keyflag = key;
              if(keyflag != backup )
           {
                 delayms();
                     if(keyflag == key)
                       {
                             if(backup == 0)
                            {
                                     count++;
                                   if(count >= 5)
                                             {
                                       count = 0;
                            }         }
                          }
                }
               
                 完整程序請下載文件
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏10 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報

來自 2#
ID:849826 發(fā)表于 2020-12-16 17:45 | 只看該作者
STC15F104W四路按鍵循環(huán)開關(guān).zip (750 Bytes, 下載次數(shù): 139)

評分

參與人數(shù) 1黑幣 +30 收起 理由
admin + 30 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

板凳
ID:328014 發(fā)表于 2020-12-16 14:06 | 只看該作者
樓主您好 ,程序不完整啊
回復(fù)

使用道具 舉報

地板
ID:849826 發(fā)表于 2020-12-16 14:19 來自觸屏版 | 只看該作者
想上傳文件,手機(jī)怎么上傳不了
回復(fù)

使用道具 舉報

5#
ID:328014 發(fā)表于 2020-12-16 14:21 | 只看該作者
6313 發(fā)表于 2020-12-16 14:19
想上傳文件,手機(jī)怎么上傳不了

手機(jī)點擊底部的電腦版可以傳文件,好像手機(jī)版只能發(fā)圖片
回復(fù)

使用道具 舉報

6#
ID:849826 發(fā)表于 2020-12-16 17:55 | 只看該作者
程序由51單片機(jī)修改而來的,只要修改一下輸出端口,51和STC15F104都可以用
回復(fù)

使用道具 舉報

7#
ID:849826 發(fā)表于 2020-12-16 17:56 | 只看該作者

附件已上傳
回復(fù)

使用道具 舉報

8#
ID:35873 發(fā)表于 2021-1-4 05:05 | 只看該作者
非常感謝  有空也照著做一個
回復(fù)

使用道具 舉報

9#
ID:909771 發(fā)表于 2021-4-21 16:55 | 只看該作者
非常好  反向很好  剛好需要一個這種好的程序  謝謝貼主
回復(fù)

使用道具 舉報

10#
ID:849826 發(fā)表于 2021-7-12 21:37 來自觸屏版 | 只看該作者
這只是模擬電風(fēng)扇的循環(huán)開關(guān),誰可以在這基礎(chǔ)上再加一個定時程序,就是電風(fēng)扇的定時程序,一個按鍵控制,按一次加30分鐘,或者是一個小時,一個按鍵循環(huán)使用
回復(fù)

使用道具 舉報

11#
ID:1047308 發(fā)表于 2023-9-28 11:19 | 只看該作者
感謝樓主分享,正在用業(yè)余時間學(xué)習(xí)51單片機(jī)
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表