2018年3月14日 星期三

DIY - ESP8266:ESP-12F NEC 紅外線通訊協定(七十五)

DIY - ESP8266:ESP-12F NEC 紅外線通訊協定(七十五):

雖然 ESP-12F TSOP38 紅外線接收器電路是很簡單,但程式相對是複雜,原因是每家廠商都有其一套專屬的紅外線通訊協定(Protocol),所以每家廠商的遙控器都是自家的產品,主要知名的廠商有NEC、SONY、Philips 的 RC5 和 RC6、Toshiba、Sharp 等等,都有自家的紅外線協定。

NEC 紅外線通訊協定波型
一般最常用的是 NEC 紅外線通訊協定(Protocol),NEC 紅外線通訊協定(Protocol)使用調變技術(Pulse Distance Encoding),筆者的 Origo 和 Gadmei 遙控器都是用 NEC 紅外線通訊協定,所以筆者是針對 NEC 紅外線通訊協定作程式。
 
Origo 遙控器
NEC 紅外線通訊協定(NEC Infrared Protocol)特性:
  1. 開始是 9ms 的前導脈衝 /引導碼(Leading Pulse Burst)16倍的前導脈衝用作邏輯數據位的脈衝
  2. 跟隨 4.5ms 的空間
  3. 接收設備的 8位地址(Address)
  4. 地址的 8位邏輯反轉(Address Inverse)
  5. 8位命令(Command) 該命令的
  6. 8位邏輯反轉(Command Inverse)
  7. 最後的 562.5μs 脈衝突發顯示傳輸結束。
NEC 紅外線通訊協定(NEC Infrared Protocol)(圖片來源:互聯網)
Bit Timing :
562.5µs 載波與 1.6875ms Space 組成共 2.25ms 長的波型代表位元 "1" = Logic ‘1’
562.5µs 載波與 562.5µs Space 組成波型共 1.125ms 長的波型代表位元 "0" = Logic ‘0’

NEC 紅外線通訊協定 位元 "1" 和位元 "0" 的波型圖(圖片來源:互聯網)
16bits 地址(Address + Inverse)需要 27ms,16bits 指令(Command + Inverse)需要 27ms,因為地址(Address + Address Inverse)或指令(Command + Command Inverse)常常包括 8個 0 和 8個 1,所以時間長度為 (8 * 1.125ms) + (8 * 2.25ms) == 27 ms,總時間長度為 (9ms + 4.5ms + 27ms + 27ms) = 67.5 ms。

NEC 紅外線通訊協定(NEC Infrared Protocol)(圖片來源:互聯網)
相關網址:
※ DIY - ESP8266:ESP-12F TSOP38 紅外線接收器模組介紹(七十三)
※ DIY - ESP8266:ESP-12F TSOP38 紅外線接收器電路(七十四)
※ DIY - ESP8266:ESP-12F TSOP38 紅外線接收器程式(七十六)
※ DIY - ESP8266:ESP-12F 紅外線發射器電路(七十七)
※ DIY - ESP8266:ESP-12F 紅外線發射器程式(七十八)

2018年 3月 14日 天氣報告
氣溫:19.7@ 19:40
相對濕度:百分之 81%
天氣:微雨

沒有留言:

張貼留言