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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

調光LED燈STC15F104單片機源碼

查看數: 5728 | 評論數: 7 | 收藏 5
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2018-8-22 00:09

正文摘要:

調光LED燈軟件STC15F104 ,用的是STC宏晶8腳單片機 ,將一個舊的LED燈加了調光功能. 和大家學習探討. 電路原理圖如下:

回復

ID:140183 發表于 2020-1-31 21:02
很好。太謝謝啦!
ID:591640 發表于 2019-8-5 11:51
謝謝樓主分享
ID:63317 發表于 2019-8-5 09:11
謝謝復習資料
ID:59830 發表于 2018-12-23 00:24
沒有匯編
ID:35873 發表于 2018-8-23 03:25
不錯  有空也搞個玩玩
ID:359281 發表于 2018-8-22 12:04
你好,有匯編的程序嗎?
ID:359281 發表于 2018-8-22 12:01
調光LED燈軟件STC15F104 ,用的是STC宏晶8腳單片機 ,將一個舊的LED燈加了調光功能. 和大家學習探討.  電路原理圖如下:     單片機源程序如下 --------------------------------------------------------  Name File KEY,C  Versions number 1.0  Date      2016.01.01  Remarks   STC15F104E MCU - 文件名   :KEY.C  - 版本     :1.0 - 日期     :2016.01.01 - 備注     :STC15F104E MCU -------------------------------------------------------- #includeconfig.h      unsigned char T1RH,T1RL;   unsigned char code         KeyCodeMap[6]={ 按鍵值數組0-2是S1-S3短按 0x01,0x02,0x03,0x10,0x20,0x30         按鍵值數組3-5是S1-S3長按 }; unsigned char KeySta[3]={ 1,1,1 }; unsigned int idata KeyDownTime[3]={0,0,0};  按鍵按下持續時間 void configtime1(unsigned int ms); 定時器1配置 bit led1flag =1;   LED1狀態標志位 bit led2flag =1;   LED2狀態標志位 bit led3flag =1;   LED3狀態標志位 bit led4flag =0; bit KeyLFlag = 0; 長按標志位 void KeyScan();     按鍵的掃描 void KeyDriver();   按鍵驅動 void LEDOUT();           void KeyAction(unsigned char KeyCode);   按鍵執行 -------------------------------- void KeyAction(unsigned char KeyCode) {           if(KeyCode==0x01)led1flag = ~led1flag;     if(KeyCode==0x02)led2flag = ~led2flag;     if(KeyCode==0x03)led3flag = ~led3flag;         if(KeyCode==0x10)led1flag = ~led1flag;     if(KeyCode==0x20)led2flag = ~led2flag;     if(KeyCode==0x30)led3flag = ~led3flag; } void LEDOUT() {      LED_R=led3flag;       LED_G=led1flag;       LED_B=led2flag;  } ---------------------------- void KeyDriver() {    unsigned char i;        static unsigned char idata backup[3]={1,1,1};      static unsigned int idata TimeThr[3]={600,600,600};      for(i=0;i3;i++)         循環檢測3個按鍵    {    ---------------------------------       if(KeyDownTime[i]  0)   檢測執行快速輸入           {                                          if(KeyDownTime[i] = TimeThr[i])                  {                     if(KeyLFlag != 1)                         {                        KeyAction(KeyCodeMap[i+3]);                       TimeThr[i+3] += 200;                  KeyLFlag = 1;             }                  }           }       if(backup[i] != KeySta[i])           {              if(backup[i] != 1)                  {                     if(KeyLFlag)                         {                            KeyLFlag = 0;                         }                         else                         {                       KeyAction(KeyCodeMap[i]);                           }                  }              backup[i] = KeySta[i];               }    } } ---------定時器1的配置------------ void configtime1(unsigned int ms) {    unsigned long tmp;    tmp = 1105920012;      tmp =(tmpms)1000;      tmp = 65536 - tmp;       tmp = tmp + 18;          T1RH = (unsigned char)(tmp8);      T1RL = (unsigned char)tmp;      TMOD &= 0x0f;     TMOD = 0x10;     TH1 = T1RH;      TL1 = T1RL;       ET1 = 1;         TR1 = 1;         EA = 1;    } ---------按鍵的掃描函數---------- void KeyScan() {    bit RLED=0;      bit GLED=0;      bit BLED=0;      unsigned char i;      static unsigned char KeyBuf[]={    0xff,0xff,0xff    };     RLED=LED_R;     GLED=LED_G;     BLED=LED_B;      S1 = 1;     S2 = 1;     S3 = 1;      _nop_();     _nop_();     _nop_();          KeyBuf[0] = (KeyBuf[0]1)S1;      KeyBuf[1] = (KeyBuf[1]1)S2;      KeyBuf[2] = (KeyBuf[2]1)S3;      for(i=0;i3;i++)    {       if(KeyBuf[i]== 0x00)           {              KeySta[i] = 0;                  按鍵為零                  KeyDownTime[i] += 1;  按鍵持續按下           }           else if(KeyBuf[i]== 0xff)           {              KeySta[i] = 1;                 按鍵彈起狀態                  KeyDownTime[i]=0;   按鍵清零           }    }    _nop_();     _nop_();      LED_R=RLED;     LED_G=GLED;     LED_B=BLED;     _nop_();  ……………………  …………限于本文篇幅 余下代碼請從51黑下載附件………… 復制代碼  所有資料51hei提供下載   調光LED燈軟件STC15F104.zip (78.79 KB, 下載次數 2)

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色综合久 | 亚洲成人自拍 | 美女视频一区二区三区 | 视频一区二区三区中文字幕 | 亚洲精品一区二区网址 | 超碰综合 | 免费观看av | 精品国产欧美 | 国产乱码精品一品二品 | 国产精品视频一二三区 | 日本爱爱视频 | 狠狠色狠狠色综合日日92 | 欧美一级大片免费看 | 91精品久久久久久久久久 | www.com久久久 | 国产三级网站 | 欧美成人免费 | 久久久久久国产 | 四虎成人精品永久免费av九九 | www日本在线播放 | 国产精品久久久久久久免费观看 | www日本在线 | h片在线免费观看 | 日韩视频在线观看一区二区 | 国产视频一区二区三区四区五区 | 草草草草视频 | 欧美一级全黄 | 国产欧美日韩一区 | 日韩一区二区三区视频在线观看 | 人人爱干| 欧美乱操 | 亚洲精品v | 成人h视频| 亚洲精品视频在线观看免费 | 一本一道久久a久久精品综合蜜臀 | 美女一区二区在线观看 | 一道本不卡视频 | www久久久 | 亚洲高清在线观看 | 欧美精品99 | 国产在线一区二区三区 |