




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Arduino視頻教程智宇科技第19講紅外遙控Arduino視頻教程智宇科技紅外接收頭介紹紅外遙控器發(fā)出的信號(hào)是一連串的二進(jìn)制脈沖碼。為了使其在無(wú)線傳輸過(guò)程中免受其他紅外信號(hào)的干擾,通常都是先將其調(diào)制在特定的載波頻率上,然后再經(jīng)紅外發(fā)射二極管發(fā)射出去,而紅外線接收裝置則要濾除其他雜波, 叧接收該特定頻率的信號(hào)并將其還原成二進(jìn)制脈沖碼,也就是解調(diào)。內(nèi)置接收管將紅外發(fā)射管發(fā)射出來(lái)的光信號(hào)轉(zhuǎn)換為微弱的電信號(hào),此信號(hào)經(jīng)由IC內(nèi)部放大器進(jìn)行放大,然后通過(guò)自動(dòng)增益控制、帶通濾波、解調(diào)變、波形整形后還原為遙控器發(fā)射出的原始編碼,經(jīng)由接收頭的信號(hào)輸出腳輸入到電器上的編碼識(shí)別電路。Arduino視頻教程智宇科技
2、要想對(duì)某一遙控器進(jìn)行解碼必須要了解該遙控器的編碼方式。本產(chǎn)品使用的遙控器的碼方式為:NEC協(xié)議。下面就介紹一下NEC協(xié)議的特點(diǎn):(1)8位地址位,8位命令位(2) 為了可靠性地址位和命令位被傳輸兩次(3) 脈沖位置調(diào)制(4) 載波頻率38khz(5) 每一位的時(shí)間為1.125ms或2.25ms 邏輯 0和1的定義如下圖邏輯1的是由560us的高電平和1.69ms的低電平組成的脈沖表示Arduino視頻教程智宇科技邏輯0的是由560us的高電平和565us的低電平組成的脈沖表示重復(fù)脈沖重復(fù)碼的格式是由9ms的AGC高電平和2.25ms的低電平及一個(gè)560us的高電平組成。如右圖所示Arduino
3、視頻教程智宇科技按鍵按下立刻松開的發(fā)射脈沖:下圖片顯示了NEC的協(xié)議典型的脈沖序列。一個(gè)信息發(fā)送是由9mS的AGC自動(dòng)增益控制脈沖開頭,在早期的IR紅外命令。中用來(lái)設(shè)置增益。接著是4.5mS空閑,然后是地址、地址和命令都傳送2次,第二次的地址和命令是反碼,可以用來(lái)校驗(yàn)接收到的信息??偟膫鬏敃r(shí)間是固定的,因?yàn)槊恳晃欢加蟹创a傳送。Arduino視頻教程智宇科技按鍵按下一段時(shí)間才松開的發(fā)射脈沖:一個(gè)命令發(fā)送一次,即使在遙控器上的按鍵仍然按下。當(dāng)按鍵一直按下時(shí),第一個(gè)110ms的脈沖與上圖一樣,之后每110ms重復(fù)代碼傳輸一次。返個(gè)重復(fù)代碼是由一個(gè)9ms的高電平脈沖和一個(gè)2.25ms 低電平和560s
4、的高電平組成,直到按鍵釋放。Arduino視頻教程智宇科技紅外接收頭的引腳與連線如左圖將VOUT接到模擬口,GND接到實(shí)驗(yàn)板上的GND,VCC接到實(shí)驗(yàn)板上的+5v。實(shí)驗(yàn)連線如右圖將紅外接收頭按照上述方法接好,將VOUT接到數(shù)字11口引腳,將LED燈通過(guò)電阻接到數(shù)字引腳2,3,4,5,6,7。Arduino視頻教程智宇科技遙控器鍵值可先用串口顯示對(duì)應(yīng)按鍵編碼,再修改程序使之匹配, 以適應(yīng)不同遙控器示例遙控器按鍵編碼“0” = 0x00FF6897 ; “1”=0x00ff30CF ; “4”=0x00FF10EF ; “7”=0x00FF42BD ;“” = 0x00FF9867 ;“C” =0
5、x00FFB04F ;“2”=0x00FF18E7 ; “5”=0x00FF38C7 ; “8”=0x00FF4AB5 ;“3”=0x00FF7A85 ; “6”=0x00FF5AA5 ; “9”=0x00FF52AD ;編譯前注意:復(fù)制2.例程代碼例程19-紅外遙控里的庫(kù)文件夾IRremote到Arduino的安裝目錄:Arduinolibraries目錄下,缺失庫(kù)文件可能編譯出錯(cuò)。Arduino視頻教程智宇科技參考源程序如下:#include int RECV_PIN = 11; int LED1 = 2;int LED2 = 3; int LED3 = 4; int LED4 = 5;
6、int LED5 = 6; int LED6 = 7;long on1 = 0x00FF6897;/編碼示例,與發(fā)送匹配用long off1 = 0x00FF30CF; long on2 = 0x00FF9867; long off2 = 0x00FF18E7; long on3 = 0x00FFB04F;long off3 = 0x00FF7A85;Arduino視頻教程智宇科技long on4 = 0x00FF10EF; long off4 = 0x00FF42BD; long on5 = 0x00FF38C7; long off5 = 0x00FF4AB5; long on6 = 0x0
7、0FF5AA5; long off6 = 0x00FF52AD; IRrecv irrecv(RECV_PIN); decode_results results;/ Dumps out the decode_results structure./ Call this after IRrecv:decode()/ void * to work around compiler issue/void dump(void *v) /decode_results *results = (decode_results *)v void dump(decode_results *results) int c
8、ount = results-rawlen;if (results-decode_type = UNKNOWN)Serial.println(Could not decode message);Arduino視頻教程智宇科技elseif (results-decode_type = NEC)Serial.print(Decoded NEC: );else if (results-decode_type = SONY)Serial.print(Decoded SONY: );else if (results-decode_type = RC5)Serial.print(Decoded RC5:
9、);else if (results-decode_type = RC6)Serial.print(Decoded RC6: );Serial.print(results-value, HEX);Arduino視頻教程智宇科技Serial.print( ();Serial.print(results-bits, DEC);Serial.println( bits);Serial.print(Raw (); Serial.print(count, DEC); Serial.print(): );for (int i = 0; i rawbufi*USECPERTICK, DEC);elseSer
10、ial.print(-(int)results-rawbufi*USECPERTICK, DEC);Serial.print( );Serial.println();Arduino視頻教程智宇科技void setup()pinMode(RECV_PIN, INPUT); pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); pinMode(LED3, OUTPUT); pinMode(LED4, OUTPUT); pinMode(LED5, OUTPUT); pinMode(LED6, OUTPUT);pinMode(13, OUTPUT); Serial
11、.begin(9600);irrecv.enableIRIn(); / Start the receiverint on = 0;unsigned long last = millis();/*應(yīng)用millis函數(shù)可獲取機(jī)器運(yùn)行的時(shí)間長(zhǎng)度,單位ms。系統(tǒng)最長(zhǎng)的記錄時(shí)間為9小時(shí)22分,如果超出時(shí)間將從0開始。函數(shù)返回值為unsigned long型,無(wú)參數(shù)。 */void loop()Arduino視頻教程智宇科技if (irrecv.decode(&results)/ If its been at least 1/4 second since the last/ IR received, to
12、ggle the relay if (millis() - last 250)on = !on;digitalWrite(8, on ? HIGH : LOW); digitalWrite(13, on ? HIGH : LOW); dump(&results);if (results.value = on1 ) digitalWrite(LED1, HIGH);if (results.value = off1 ) digitalWrite(LED1, LOW);if (results.value = on2 ) digitalWrite(LED2, HIGH);if (results.val
13、ue = off2 ) digitalWrite(LED2, LOW);/Arduino視頻教程智宇科技if (results.value = on3 )digitalWrite(LED3, HIGH);if (results.value = off3 ) digitalWrite(LED3, LOW);if (results.value = on4 ) digitalWrite(LED4, HIGH);if (results.value = off4 ) digitalWrite(LED4, LOW);if (results.value = on5 ) digitalWrite(LED5, HIGH);if (results.value = off5 ) digitalWrit
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中職旅游政策與法規(guī)課件
- 教育法規(guī)在職業(yè)教育中的實(shí)施與挑戰(zhàn)
- 企業(yè)安全與數(shù)據(jù)保護(hù)技術(shù)應(yīng)用場(chǎng)景
- 數(shù)字化教育背景下教師角色的轉(zhuǎn)變與挑戰(zhàn)
- 專題04 薦信 感謝信 倡議書(講義)(解析版)-2025年高考英語(yǔ)二輪復(fù)習(xí)
- 教育國(guó)際化背景下的培訓(xùn)機(jī)構(gòu)品牌塑造
- 新時(shí)代下的基礎(chǔ)教育課程改革探討特別關(guān)注未來(lái)幾年內(nèi)的發(fā)展
- 基礎(chǔ)護(hù)士眼科常考題庫(kù)及答案
- 教育建筑中生態(tài)屋頂?shù)囊?guī)劃與設(shè)計(jì)思考
- 2025年四川省瀘州市物理高二第二學(xué)期期末考試模擬試題含解析
- DB45∕T 1098-2024 橡膠瀝青路面施工技術(shù)規(guī)范
- 2025年沈陽(yáng)水務(wù)集團(tuán)招聘筆試沖刺題2025
- 《蠶絲》教學(xué)課件
- 浙江省麗水市普通高中2024-2025學(xué)年高二上學(xué)期期末教學(xué)質(zhì)量監(jiān)控日語(yǔ)試卷(PDF版含答案不含音頻和聽力原文)
- 2025至2030電子海圖行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢(shì)及投資規(guī)劃深度研究報(bào)告
- 東莞東華分班數(shù)學(xué)試卷
- 江西省金控科技產(chǎn)業(yè)集團(tuán)有限公司招聘筆試題庫(kù)2025
- 2025年湖北省中考英語(yǔ)試題(附答案)
- 2025中國(guó)系統(tǒng)性紅斑狼瘡診療指南解讀課件
- 成人重癥患者顱內(nèi)壓增高防控護(hù)理專家共識(shí)
- 2025年網(wǎng)絡(luò)安全與信息保護(hù)基礎(chǔ)知識(shí)考試題及答案
評(píng)論
0/150
提交評(píng)論