最底層與硬件打交道的驅動: 1 硬件初始化 (初始化 控制寄存器, 時鐘控制器,中斷寄存器--當fifo不爲空就產生中斷等) 2 軟件初始化 爲句柄付初值.
3 中斷處理函數 當有數據需要decode 就會調用 ir_decode,ir_decode 調用ir_state_change. 裏面檢測脈衝4個狀態來確定開始和結束.當接收完一個包,就解析出碼
cmd= (pinstance->packet & 0xff00) >> 8;
not_cmd= (~(pinstance->packet) )&& 0x00ff);