新聞中心

        EEPW首頁 > 汽車電子 > 設計應用 > 紅外遙控技術在汽車中的應用

        紅外遙控技術在汽車中的應用

        作者: 時間:2010-08-21 來源:網絡 收藏

        四、軟件編程

          單片機89C2051軟件包括主程序,串行口中斷服務程序和定時中斷服務程序三部分,在2051單片機內部RAM區建立相應的工作單元和標志位。

          (一)、發送程序:SEND-BUFO∽SEND-BUF3為四個字符發送緩沖區,SEND-MARK為請求發送標志。當鍵盤掃描到有發送請求時,啟動定時器,在P1.0輸出一個38K的方波,同時啟動串行口,把SEND-BUFO至SEND-BUF3中的數據,發送至SBUF中,合成后發送。其程序流程過程如下:

          發送主程序:初始化時設置定時器、看門狗和串行口,并清顯示,而后掃描鍵盤。若有鍵按下,進行按鍵處理;若是發送鍵,則置串口發送標志,啟動定時器和串行發送程序,后返回主程序中的顯示程序,送顯示數據至緩沖區。

          串口中斷程序:現場保護,取發送數據至發送緩沖區,啟動軟件定時產生38K的方波,而后判數據是否發送完畢,結束則清除發送標志,反之,則返回繼續送數據。

          定時中斷程序:現場保護回填定時長度,啟動計數定時,并在指定的管腳P1.0取反,變成反相電平,返回。

          (二)、接收程序:REC-BUFO∽REC-BUF4為四個字符的接收緩沖區,REC-MARK為數據接收完整的標志。當串行口中斷產生時,按次序接收數據至REC-BUF0至REC-BUF3中,數據滿后,計算累加和。如果正確,置REC-MARK標志;反之,把緩沖區數據清零。主程序中若判斷有REC-MARK標志,則把數據進行處理后,送外存25045和顯示緩沖區中顯示,同時由于接收是在汽車中進行,電源電壓和其它干擾很多,包括有可能產生的串行口誤判等。因此,為了保證程序能正常運行,啟動了25045中的看門狗電路,以每隔500ms時間定時刷新。其程序流程過程如下:

          接收主程序:初始化時設置定時器、看門狗、清顯示和外存25045判斷有否數據接收標志,若有進行數據判斷,正確的寫至數據外存,并送至顯示區顯示,反之,返回主程序的顯示程序和刷新看門狗。

          串行口中斷接收程序:現場保護后,判斷接收數據是否為頭或尾部數據,作相應處理是正常數據時存放緩存,并指針加一,當完整的一組數據正常收到后,置接收數據標志后返回。

          定時中斷程序和發送一致,只是定時刷新看門狗。

        五、結束語

          以上方法非常簡單地實現了紅外線遙控信號的接收解碼,極大地節約了硬件實現的資源開銷。該系統的設計已應用于公交車中,改善了公交系統的服務質量,提高了工作效力。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 察雅县| 永德县| 郴州市| 宜良县| 古丈县| 内黄县| 专栏| 新竹县| 邮箱| 东明县| 钟祥市| 屏山县| 白河县| 浪卡子县| 永年县| 白朗县| 岐山县| 屏山县| 河池市| 清流县| 怀远县| 娱乐| 榆林市| 墨脱县| 南城县| 竹北市| 乳山市| 凉山| 龙山县| 山东| 柳江县| 湟中县| 乌兰浩特市| 内江市| 威宁| 英吉沙县| 虹口区| 汤原县| 安丘市| 万安县| 阆中市|