紅外 NEC編碼

2021-08-03 18:19:37 字數 1864 閱讀 4893

它是一種電磁波,可以實現資料的無線傳輸

它的波長範圍為760nm ~ 1mm,不為人眼所見

紫外光波長為10-400nm

紅外與藍芽紅外線系統的組成

紅外線系統一般由紅外發射裝置和紅外置收裝置兩大部分組成

紅外發射裝置又可由鍵盤電路、紅外編碼晶元、電源和紅外發射電路組成

紅外置收裝置可由紅外置收電路、紅外解碼晶元、電源和應用電路組成

紅外遙控器發射

紅外遙控器是將遙控訊號(二進位制脈衝碼)調製在38khz的載波上,經緩衝放大後送至紅外發光二極體,轉化為紅外訊號發射出去的

開發紅外置收裝置,一定要知道紅外遙控器的編碼方式和載波頻率

紅外線接收

大多都採用成品紅外置收頭。均有三隻引腳,即電源正(vdd)、電源負(gnd)和資料輸出(vout)

用時注意成品紅外置收頭的載波頻率

資料格式

資料格式包括了引導碼、使用者碼、資料碼和資料碼反碼,編碼總佔32位

資料反碼是資料碼反相後的編碼,編碼時可用於對資料的糾錯

第二段的使用者碼也可以在遙控應用電路中被設定成第一段使用者碼的反碼

位定義

使用者碼或資料碼中的每乙個位可以是位『1』 ,也可以是位『0』

區分『0』和『1』是利用脈衝的時間間隔來區分,這種編碼方式稱為脈衝位置調製方式

時間間隔取乙個中間值(高電平時間1秒)

舉例

sbit irin = p3 ^2;

void

irinit()

void

readir

() interrupt 0

if(irin ==1)

//如果正確等到9ms低電平

for(k =

0; k <

4; k++

)//共有4組資料

err=

500;

while

((irin ==1)

&&(err >0)

)//計算高電平的時間長度

} irvalue[k]

>>=1;

//k表示第幾組資料

if(time >=8)

//如果高電平出現大於565us,那麼是1

time =0;

//用完時間要重新賦值 }}

}if(irvalue[2]

!=~irvalue[3]

)//使用者碼是否匹配

}}

使用邏輯分析儀分析遙控器協議

抓取的二進位制值:0b00000000 – 0b11111111 – 0b00110000 – 0b11001111

因為紅外置收是反相的,低位在前,高位在後。

所以解碼完的資料應該是:0b00001100 = 0x0c

紅外 NEC編碼

它是一種電磁波,可以實現資料的無線傳輸 它的波長範圍為760nm 1mm,不為人眼所見 紫外光波長為10 400nm 紅外與藍芽紅外線系統的組成 紅外線系統一般由紅外發射裝置和紅外置收裝置兩大部分組成 紅外發射裝置又可由鍵盤電路 紅外編碼晶元 電源和紅外發射電路組成 紅外置收裝置可由紅外置收電路 紅...

紅外 NEC編碼

它是一種電磁波,可以實現資料的無線傳輸 它的波長範圍為760nm 1mm,不為人眼所見 紫外光波長為10 400nm 紅外與藍芽紅外線系統的組成 紅外線系統一般由紅外發射裝置和紅外置收裝置兩大部分組成 紅外發射裝置又可由鍵盤電路 紅外編碼晶元 電源和紅外發射電路組成 紅外置收裝置可由紅外置收電路 紅...

紅外發射(NEC)資料

基本概念 gpio general purpose input output 通用輸入 輸出 nec 一種紅外遙控器傳輸協議,由nec開發.從網上找到的概念圖,很形象,借用一下。紅外遙控通常是由傳送端和接收端兩個部分組成。傳送端將要傳送的二進位制訊號編碼成一系列的脈衝訊號,然後通過紅外發射管發射紅外...