紅外遙控NEC協議

2021-08-22 00:25:11 字數 1425 閱讀 6286

一、nec協議特徵:

8位位址和8位命令長度

每次傳輸兩遍位址(使用者碼)和命令(按鍵值)

通過脈衝串之間的時間間隔來實現訊號的調製(ppm)

38khz載波

每位的週期為1.12ms(低電平)或者2.25ms(高電平)

二、nec協議的典型脈衝鏈:

上圖所示為nec協議的典型脈衝鏈。協議規定低位首先傳送。首先傳送9ms+4.5ms的引導碼,接下來是兩位元組使用者碼,第三位元組是資料碼,用來判斷按鍵值,第四位元組是資料反碼,可以用來校驗,提高按鍵的準確性。

三、nec協議脈衝鏈的其他

除了引導碼、使用者碼和資料碼以外,協議最後還有乙個1bit的停止位,用於資料傳送完畢判斷。另外在nec協議中,似乎沒有說明停止位的高低電平持續時間。

四、nec協議的高低電平辨別方式

使用者碼和資料碼中的『0』和『1』是利用脈衝的時間間隔來區分,這種編碼方式稱為脈衝位置調製方式(ppm)。

其中位0首先為0.56ms的高電平,然後是0.565ms的低電平;位1首先是0.56ms的高電平,然後是1.69ms的低電平。

五、程式設計注意事項

1.紅外置收頭引腳訊號是相反的電平

以上電平是從發射頭角度來看,紅外置收頭引腳輸出的是相反的電平。

如圖,即沒有資料傳輸時,p3.2引腳保持為高電平,當接收到資料時,首先是引導碼,9ms的低電平和4.5ms的高電平,然後是32位資料和1位停止位。一般來說,p3.2與微控制器的某中斷引腳相連,當接收資料時,低電平會觸發中斷。

2.資料從lsb(低位)開始傳送,所以選擇右移方式接收資料。

四個位元組的資料都是先傳送d0,最後傳送d7。所以接收到1位資料後,給變數的最高位賦值,右移。或者先右移,再給變數的最高位賦值。

3.可以用乙個陣列儲存32個資料的持續時間,用於後面判斷高低電平。

用定時器對兩個資料(中斷)之間的時間計時,並儲存這個持續時間用於以後判斷是位1還是位0。

4.可以用2位元組,4位元組變數儲存32個資料,以節省**空間

可以用兩個16位的int型變數儲存資料,第乙個int變數儲存使用者碼,第二個儲存資料碼和資料反碼。也可以用乙個32位long型的變數儲存所有資料。

5.判斷停止位

接收到停止位後可以遮蔽紅外引腳的中斷,防止後面資料的干擾,解碼成功後在開啟中斷。

紅外遙控NEC協議

nec協議的特徵 1 8位位址和8位指令長度 2 位址和命令2次傳輸 確保可靠性 3 pwm脈衝位置調製,以發射紅外載波的占空比代表 0 和 1 4 載波頻率為38khz 5 位時間為1.125ms或2.25ms 高電平持續時間來區分 nec碼的位定義乙個脈衝對應560us的連續載波,乙個邏輯1傳輸...

紅外遙控協議 NEC協議

原文 nec協議是眾多紅外遙控協議的其中一種,除nec外,還有rc5 rc6等其它的。市面上買到的非學習型萬能電視遙控器大多整合一種或多種編碼是nec型的,我買的二個遙控器中就有三種以上編碼是nec的。nec編碼的一幀 通常按一下遙控器按鈕所傳送的資料 由引導碼 位址碼及資料碼組成,如下圖所示,把位...

紅外遙控協議 NEC協議

為方便理解所看到的波形是從紅外置收管出來的訊號,跟協議所說的訊號高低 0或1 剛好相反。nec協議是眾多紅外遙控協議的其中一種,除nec外,還有rc5 rc6等其它的。市面上買到的非學習型萬能電視遙控器大多整合一種或多種編碼是nec型的,我買的二個遙控器中就有三種以上編碼是nec的。nec編碼的一幀...