新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > 基于ARM的CAN總線電纜溝道監測系統的設計

        基于ARM的CAN總線電纜溝道監測系統的設計

        作者: 時間:2009-06-19 來源:網絡 收藏

        CON8插座是模擬傳感器的連接插座,24 V用于給模擬傳感器供電,信號輸出引腳直接連接到運放LF347輸入引腳。溫度傳感器輸出與被測溫度成線性的4~20 mA的電流信號。所以系統采用射隨器,先讓電流流過125 Ω電阻到地,將4~20 mA電流信號轉換成相對應0.5~2.5 V電壓。電壓輸入信號經過射隨器,運放輸出的電壓信號大小不變,直接連接到LPC2292的A/D引腳。這樣下位機將數字、模擬傳感器各種信號經A/D轉換器轉換采集后,打包通過直接上傳到上位機,上位機再通過數值轉換,就可得到溝道中各種信息真實值。這種電流轉換電壓設計不僅簡單,而且精度高,穩定性好。

        5 通信軟件設計
        設計選用μC/OS-II嵌入式實時操作系統來實現通信,在LPC2292上移植成功后,可用作為內核來編寫監控系統的控制軟件。
        5.1 運行μC/OS-II操作系統
        工程的CAN實現主要通過建立兩個任務來實現,即CAN發送任務和CAN采集任務。在主函數main中先利用OSInit()初始化μC/OS-II操作系統,建立一個信號量并把信號計數器清零,然后利用OSTaskCreate()創建第一個任務Tasksend(),再通過OSStart()啟動操作系統的多任務調度機制,開始運行系統的主要應用程序。主函數代碼如下:


        5.2 數據的收發
        接收數據可采用查詢方式或中斷方式。為了提高效率,數據接收采用中斷方式。兩個任務中,設置任務Tasksend()的優先級最高,任務Taskrev()的優先級次高。任務Tasksend()主要負責初始化CAN,初始化定時器0,初始化VIC,建立信號量用于任務Taskadrev()與中斷通信并建立新的任務Taskrev(),并處理采集數據。任務Taskadrev()一直處于等待信號狀態,一旦從中斷得到信號,立刻采集數據,并通過郵箱將采集到數據指針發給任務Tasksend()。
        基于μC/OS-II的CAN接收數據、發送數據任務流程圖如圖5,6所示。

        6 結語
        7TDMI內核的嵌入式微控制器LPC2292作為主控制器、CAN作為數據傳輸方式通信的嵌入式系統得到了廣泛的應用,同時CAN通信的優良可靠性也成為影響系統性能的關鍵。以LPC2292為開發平臺,并且在成功地移植μC/OS-II的基礎上,研究CAN通信軟件設計。實驗結果說明該系統設計可行,并且滿足了快速、準確、多信息量的要求。


        上一頁 1 2 下一頁

        關鍵詞: ARM CAN 總線 電纜

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 鄄城县| 柏乡县| 渭源县| 定陶县| 湘乡市| 莫力| 肇东市| 松滋市| 凤山市| 开封市| 玛沁县| 江山市| 临邑县| 襄樊市| 深水埗区| 新泰市| 建始县| 临沭县| 邳州市| 丹阳市| 鹤岗市| 乌海市| 澜沧| 米脂县| 永德县| 开平市| 嘉定区| 乃东县| 嘉鱼县| 武川县| 江陵县| 汽车| 沾化县| 莎车县| 南阳市| 镇宁| 大名县| 漳州市| 揭阳市| 阆中市| 长武县|