在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>如何使用任何遙控器控制LED的亮度

如何使用任何遙控器控制LED的亮度

2022-12-13 | zip | 0.29 MB | 次下載 | 免費

資料介紹

描述

關于這個項目

這個項目,您學習如何使用任何遙控控制LED亮度

1 步:需要什么

對于教程,您需要:

  • 阿杜諾_
  • 跳線
  • 面包板

第2電路

controllingbrightnesswithir_bb_IjvGGedNPg.png?auto=compress%2Cformat&w=740&h=555&fit=max
?

如果您不知道 IR 接收器和發射器的工作原理,您可以單擊此鏈接此鏈接以了解有關它們的更多信息

大多數分線板上的引腳布局如下所示:

ir-receiver-breakout-board-pinout-diagram-186x300_ru18MCbd1r.png?auto=compress%2Cformat&w=740&h=555&fit=max
?

大多數獨立二極管的引腳布局是這樣的:

ir-receiver-stand-alone-pinout-diagram-157x300_HwL0XVdi7c.png?auto=compress%2Cformat&w=740&h=555&fit=max
?

圖片來源:https ://www.circuitbasics.com/arduino-ir-remote-receiver-tutorial/

第 3 步:代碼

這個怎么運作

在查看代碼之前,我們首先需要了解遙控器的按鈕布局。首先你必須從這里下載 IRremote 庫要從ZIP 文件安裝庫,打開 Arduino IDE,然后轉到 Sketch > Include Library > Add.ZIP Library,然后選擇你下載的 IRremote ZIP 文件當你'重新完成上傳下面的代碼并打開串口監視器(這也是一個很好的機會來看看你的引腳布局是否正確)

#include 
const int RECV_PIN = 8;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup(){  
    Serial.begin(9600);  
    irrecv.enableIRIn();  
    irrecv.blink13(true);
}
void loop(){  
    if (irrecv.decode(&results)){        
        Serial.println(results.value, HEX);       
        irrecv.resume(); 
     }
}

Ifnothingseemstobehappening(當您按下按鈕時,Arduino 上的 LED 不閃爍)檢查您的引腳布局,您可能已將 Vcc 與 S 交換

您可以繪制出遙控器的每個按鈕并將其保存在 txt 文件中以供以后參考。

注意:當您連續按住按鈕時,串行監視器將打印 0XFFFFFFFF

現在您知道了遙控器的按鈕布局,讓我們一點一點地查看代碼

#include 
const int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;
const int ledPin = 10;
int brightness=0;
unsigned long key_value = 0;

要使用 IRremote 庫,我們需要創建一個名為irrecv并指定連接 IR 接收器的引腳號的對象(第 3 行)。這個對象負責協議和處理來自接收者的信息。

下一步我們創建一個resultsdecode_results類中調用的對象,該對象將使用該irrecv對象與我們的應用程序共享解碼的信息(第 5 行)。

接下來我們創建變量來為我們的 LED 設置引腳 10 并存儲我們的亮度值,最后一個變量將在稍后解釋

void setup(){
 irrecv.enableIRIn();
 irrecv.blink13(true);
 pinMode(ledPin, OUTPUT);
}

在該void setup()塊中,首先我們設置串行監視器波特率。接下來,我們通過調用IRrecv成員函數enableIRIn()(第 10 行)啟動 IR 接收器。

每次接收器從遙控器收到信號時,第 11 行的irrecv.blink13(true)功能將使 Arduino 的板載 LED 閃爍,這對于調試很有用。

pinMode(ledPin, OUTPUT) 函數將 ledPin(引腳 10)配置為輸出

void loop() {
 if (irrecv.decode(&results)){
.
.
.
.
.
.
    }
}

在該void loop()塊中,如果接收到代碼,該函數irrecv.decode將返回 true,并且程序將執行 if 語句中的代碼。收到的代碼存儲在results.value.

if (results.value == 0XFFFFFFFF)
        results.value = key_value;
     .
     .
     .
     .
     .
key_value = results.value;

在上面的塊中,如果我們從遙控器接收到 0XFFFFFFFF,這意味著重復上一個鍵。因此,為了處理重復鍵模式,我們在 key_value每次接收到代碼時將十六進制代碼存儲在一個全局變量中:

key_value = results.value;

當您收到重復模式時,之前存儲的值將用作當前按鍵。

if(results.value==0xF076C13B){
     brightness-=5;
     if (brightness<0){brightness=0;}
   }
   else if(results.value==0xA3C8EDDB){
     brightness+=5;
     if (brightness>255){brightness=255;}
    }

Theifconditionchecksifthebuttonpressedisa+or-(您的十六進制代碼可能會有所不同,具體取決于您的遙控器和接收器)并增加或減少亮度值。下一個條件將亮度值限制在 0 和 255 之間

 irrecv.resume();

irrecv.resume()isused重置接收器并準備接收下一個代碼。

brightnessControl(brightness);

這一行調用了brightnessControl() 函數并傳入我們的亮度的當前值作為它的參數

 void brightnessControl(int value){
     analogWrite(ledPin,value);
 }

brightControl() 方法接受一個整數作為參數,并使用 PWM 設置我們的 LED 的亮度

有關 PWM 的更多信息,請單擊此處此處

有關 IRremote 的更多信息,請單擊此處

第四步:恭喜!!!

你已經成功地完成了這個項目。做得好!

我希望你喜歡這個,如果你對如何制作我的代碼有任何建議,請在評論中告訴我。

謝謝你


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: 网站四虎1515hhcom | 两性色午夜视频自由成熟的性 | 曰本裸色私人影院噜噜噜影院 | 亚洲xx站| 伊人久操 | 亚洲一二三区在线观看 | 丁香婷五月 | 欧美亚洲在线 | 久久青青成人亚洲精品 | 四虎影院黄色片 | 成人在线播放av | 亚洲人成网站在线 | 免费人成激情视频在线观看冫 | 国产日本久久久久久久久婷婷 | 欧美肉到失禁高h视频在线 欧美三级成人 | 国产精品久久婷婷六月丁香 | 久久久噜噜噜 | 1024国产看片在线观看 | 黄色大秀 | 色爱区综合激月婷婷激情五月 | 女人十六毛片 | 天天免费看片 | 一级片a| 日本黄页网址 | 亚洲欧美日韩在线观看你懂的 | 狼人 成人 综合 亚洲 | 性欧美高清 | 国产精品美女免费视频大全 | 色www永久免费视频 色y情视频免费看 | 久久天天躁狠狠躁夜夜爽 | 天天操人人射 | 天堂网中文在线最新版 | 在线观看免费视频片 | 日日操夜夜骑 | 四虎国产精品永久在线看 | 欧美.成人.综合在线 | 天天躁日日躁狠狠躁中文字幕老牛 | 1024视频色版在线网站 | 男人j进入女人j在线视频 | 最近2018中文字幕免费看2019 | 人人爽人人干 |