新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CAN總線技術的汽車儀表軟件實現方案

        基于CAN總線技術的汽車儀表軟件實現方案

        作者: 時間:2012-09-26 來源:網絡 收藏

          CAN2.0的分層結構是按ISO/OSI模型對CAN結構的描述。數據鏈路層又分為邏輯鏈路層(LLC,Logical Link Control)和媒體訪問控制(MAC,Medium Access Control)兩個層。LLC層完成下列功能:為數據發送以及以及遠層數據請求傳送服務;判斷是否接受接收到的數據;提供恢復管理和超載處理。

          MAC層主要定義了傳輸協議,包括信息幀格式、仲裁方式、應答信號、錯誤檢測、錯誤信令和故障限制等。

          物理層實現節點間的物理信號的傳送,主要定義網絡的電氣特性。CAN網絡中可以采用多種不同的物理層協議。

          本研究用VC編程語言實現數據的顯示。PC—CAN接口卡自帶三個文件CAN232dll.DLL,CAN232dll.LIB,ExportHead.H,其中ExportHead.H描述了動態鏈接庫CAN232dll.DLL所定義的外部函數。如下所示:

          void OpenSerialPort(int nPort,unsigned int Baud);

          void CAN232Send(unsigned char*sdata,size_t Len);

          void CAN232Setting(unsigned char*sdata,size_t Len);

          char CAN232Receive(unsigned char*CANReceive);

          將接口卡所帶的三個文件拷貝在VC目錄下,在VC菜單的PROJECT->SETTING中的LINK項下,填入CAN232dll.LIB。然后在程序的頭文件中加入“#include ExportHead.H”。

        4、結論

          本研究只有一個CAN節點,所以顯示器所顯示的數據只有轉速、機油壓力、水溫、燃油消耗,但是在實際的汽車網絡中,通過編程我們可以動態獲得CAN總線上的所有信息,并能夠以友好的人機界面顯示,使車輛信息對駕駛員或乘客透明化。所以基于CAN總線的軟件實現是設計的一個新的嘗試。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 舒城县| 武威市| 柘城县| 威海市| 遂昌县| 丰宁| 克山县| 文昌市| 德阳市| 宝坻区| 环江| 青铜峡市| 科技| 阿瓦提县| 乌鲁木齐县| 浠水县| 鄂托克旗| 平塘县| 宁德市| 辽源市| 贡嘎县| 成武县| 黔西| 湘乡市| 台中市| 冷水江市| 庄河市| 如东县| 郁南县| 元朗区| 滨海县| 永定县| 兴文县| 汶川县| 普格县| 岑溪市| 光泽县| 呼和浩特市| 庆元县| 青海省| 天等县|