STM32單片機以NEC協議實現紅外遙控設計_第1頁
STM32單片機以NEC協議實現紅外遙控設計_第2頁
STM32單片機以NEC協議實現紅外遙控設計_第3頁
STM32單片機以NEC協議實現紅外遙控設計_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

STM32單片機以NEC協議實現紅外遙控設計紅外的介紹、優點、缺點就不給大家說了,進入正題一、紅外遙控協議的的講解紅外遙控的編碼目前廣泛使用的是:NECProtocol的PWM(脈沖寬度調制)和PhilipsRC-5Protocol的PPM(脈沖位置調制)本文將以NEC協議實現紅外遙控。NEC協議的特征:1、8位地址和8位指令長度;2、地址和命令兩次傳輸;(確保可靠性)3、PWM脈沖寬度調制,以發射紅外載波的占空比代表“0”和“1”;4、載波頻率為38KHz5、位時間為1.125ms和2.25msNEC碼位的定義:一個脈沖對應560us的連續載波,一個邏輯1傳輸需要2.25ms(560us脈沖+1680us低電平),一個邏輯0的傳輸需要1.125ms(560us脈沖+560us低電平)。而遙控接收頭在收到脈沖時為低電平,在沒有收到脈沖時為高電平,因此,我們在接收頭端收到的信號為:邏輯1應該是560us低+1680us高,邏輯0應該是560us低+560us高。如下圖:NEC遙控指令的數據格式為:同步碼頭(引導碼)+地址碼+地址反碼+控制碼+控制反碼。同步碼是由一個9ms的低電平和一個4.5ms的高電平組成,地址碼、地址反碼、控制碼、控制反碼均為8位數據格式。按照高位在前低位在后的順序發送。采用反碼是為了增加傳輸的可靠性(可用于校驗)。下圖是我們按下按鍵2時,從紅外接收頭端測到的波形:在圖中可以看到,在100ms之后,我們還收到了幾個脈沖,這是NEC碼規定的連發碼(由9ms低電平+2.5ms高電平+0.56ms低電平和97.94ms高電平組成),如果在一幀數據發送完后,按鍵仍沒有松開,則發送重復碼(連發碼),可以通過統計連發碼的次數來標記按鍵按下的長短/次數。二、解碼程序解析(參考正點原子的代碼)在正點原子的代碼中是利用定時器的輸入捕獲功能來實現遙控解碼的,下面解析一下關鍵代碼:在該實驗remote.h文件中,定義了3個函數:Remote_Init();、TIM4_IRQHandler();、Remote_Scan();。1、Remote_Init();這里要注意中斷優先級,定時器4的兩個中斷,溢出(更新)中斷,捕獲事件中斷的優先級是一樣的。意思就是,他兩誰也不能打斷誰,例如A在執行時,B就不會產生中斷。這里很重要,很重要,很重要!2、TIM4_IRQHandler();注意:遙控器發過來的碼都是編好的,比如想破解遙控器編碼,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論