紅外發射頭為紅外發光二極體,點亮則發出紅外線。紅外線根據編碼規範再經過載波訊號調製(使用38khz左右的方波訊號)後,形成接收頭(本文使用的為一體化接收頭irm38a)可以接受的有效訊號。接受到有效訊號後,由對應解碼程式識別並進行相應操作。
其中,載波訊號調製和單個位元位的傳送是對應與紅外置收頭而言的。可以理解為當紅外燈按載波訊號點亮時,紅外置收頭才能獲取到光訊號。而閃爍的間隔,則決定了紅外置收頭的訊號輸出為高或低電平。
而命令的編譯碼格式,則是對於程式設計師而言的,由軟體實現。
報頭脈衝:9ms
報頭間距:4.5ms
載波頻率:37.9khz(38khz)
碼段1與碼段2間距:20ms
「1」:脈寬,656us。間距,1640us。
「0」:脈寬,656us。間距,544us。
紅外訊號主要包括cmd1和cmd2兩部分,其中cmd1包括35 位的命令和一位停止位,cmd2包括32位的命令和一位停止位。其中停止位為開關機位取反。具體指令含義可見 。
** 1 cmd1
bit:1~3
45~678
模式開關機(cmd2 32bit取反)
風速是否掃風
是否睡眠
9~12
13~16
溫度睡眠1
17~20
2122
2324
睡眠2超強
燈光健康
乾燥/輔熱
2526
2728
2930
3132換氣0
0010
103334350
10** 2 cmd2
bit:123
4567
8上下掃風00
0左右掃風00
09~10
1112
1314
1516
顯示溫度00
0000
1718
1920
2122
232400
0000
002526
2728
29~3200
00溫度
#include typedef unsigned int u16;
typedef unsigned char u8;
sbit p2_2 = p2^2;
void delay(u16 i); //延時函式
void timer0init(); //高優先順序的定時器,用於產生38khz的方波訊號
void timer0();
void sendbit(u16 b); //傳送一位資料
void sendcmd(); //傳送命令
void main()
}/*********************************
功能:延時
引數:i = 1 延時9微妙
*********************************/
void delay(u16 i)
void timer0init()
/*********************************
功能:38khz載波訊號
*********************************/
void timer0() interrupt 1
/*********************************
功能:傳送一位資料
引數:b 待傳送的位元位
*********************************/
void sendbit(u16 b)
/*********************************
功能:傳送69位命令
*********************************/
void sendcmd()
; u16 comd2[3] = ;
int i,j;
tl0 = 0xf3;
th0 = 0xf3;
tr0 = 1;
//報頭
delay(470);
tr0 = 0;
delay(500);
//命令段1
for(i=0;i<2;i++) }
for(i=0;i<4;i++)
//間隔20ms
delay(2200);
//命令段2
for(i=0;i<2;i++) }
sendbit(comd2[2] & 0x8000);
tr0 = 0;
}
紅外通訊小車
紅外通訊遙控器按下按鍵後,會發射響應的高低電平變化的波,按響應的規律解碼這些波,可以讀出每個按鍵發射的波對應的資料,小車可以根據這些資料進行運動 include typedef unsigned char u8 typedef unsigned int u16 sbit in1 p1 0 sbit ...
紅外遙控通訊原理
摘要 在實際的通訊領域,發出來的訊號一般有較寬的頻譜,而且都是在比較低的頻率段分布大量的能量,所以稱之為基帶訊號,這種訊號是不適合直接在通道中傳輸的。為便於傳輸 提高抗干擾能力和有效的利用頻寬,通常需要 在實際的通訊領域,發出來的訊號一般有較寬的頻譜,而且都是在比較低的頻率段分布大量的能量,所以稱之...
紅外遙控系統之紅外通訊協議分析
紅外通訊過程主要由紅外發射和紅外置收兩個過程組成。首先將一幀資料 數碼訊號 送給紅外發射電路,經調製轉換成紅外光訊號在空中傳輸,然後紅外置收電路收到該紅外光信 號,經過該電路的 解調,將此紅外光訊號還原成可被微控制器處理的數碼訊號,由微控制器內部處理得到原來的資料。本協議制定的原則 1 採用自動重傳...