標籤:類比 說明 長度 ace 進一步 出錯 關於 處理 https
github連結如下:https://github.com/cyj-fightman/CanTool
該軟體用的虛擬串口工具是友善串口調試助手,類比連接埠串連使用的是VSPD
展示下開發介面:其中Main.java為主要的入口,點擊Main.java運行即可,若不是為了調試,我們小組也對軟體進行了打包處理:CanTool.exe為可運行檔案,CanTool.jar為可執行jar包,都可以運行
需要提醒的幾點是需要
1.程式需要將rxtxParallel.dll,rxtxSerial.dll 這兩個檔案複製到 C:\Windows\System32 目錄下(不管調試還是為了使用都需要的)
2.程式另外匯入RXTXcomm.jar,SerialPortIO.jar兩個jar包(調試需要)
3.程式使用eclipse開發,使用SWT/Jface外掛程式,開發語言為java
4.程式使用java jdk 1.8
5.database.txt需要放在可執行檔同一層,方便預設進行解析,當然也可以在匯入功能中匯入。調試時放在最頂層目錄。
6.程式開發和運行需要配置環境,可以參照github上面的“”安裝和配置說明“” https://github.com/cyj-fightman/CanTool/tree/master/CanTool_data
接下來是程式的主介面:
主介面的功能表列有:檔案,參數設定,和關於,
其中檔案分為兩個內容,分別是匯出接收到的並解析完成的檔案,也是在視窗右側邊欄擷取到的資料
匯入資料檔案是匯入定義的資料檔案,根據資料檔案來解析擷取到的欄位擁有的內容
另外有參數設定,用以設定跟串口串連是的參數,如傳輸速率,連接埠,停止位等。
關於:主要是對軟體和本小組成員的一些介紹
來看一下軟體接收功能,首先需要的是類比對端的Can裝置,這邊採用友善串口調試助手開啟COM2口,傳輸速率設定為115200,資料位元8位,停止位1,
其中的 t35880011121314151617 為將要發送的資料,該資料經過編碼,需要在程式中進行解碼操作
程式的解碼分為兩個部分,首先是解析得到的ID DLC DATA資料:代碼如下
再通過ID來對應資料庫中的ID,以此來擷取資料庫中的進一步解析方式:如下
其中資料庫中的856 進行十進位跟十六進位的轉換就能得到從t35880011121314151617解析得到的ID,也即是:358:
再根據資料庫中的內容進行解析產生的DATA:
,(拿第一行舉例)每行所對應的重要內容有,
器件名:CDU_HVACOffButtonSt
提取DATA中的起始位和長度:0|1
提取方向:0+
A,B值:(1,0) A為1LSB(Least Significant Bit)代表的物理值大小,也稱Factor,B是物理量的位移量
取值範圍:[0|1]
單位名稱:"" (這邊為空白,後面有溫度符號 °C)
節點名:HVAC
接下來接收內容:本軟體就會將資料擷取到並且解析,左邊框代表收到的資料,右邊框代表解析後的資料與資料庫中表內容的對應
接下來介紹發送內容:軟體可以在視窗直接打字進行發送:
在另外一個連接埠就會收到內容:
同時本軟體還提供了智能發送的功能,因為需要將編碼後的資料發送給下一層的Can裝置,而編碼結果很難人工把握,比如編碼t35880011121314151617就很難看懂,
因此完成了智能發送的功能:
點擊智能發送可以看到另一個視窗彈出:
點擊任意的對應的資料庫表名:表名也是從資料的對應的ID後面提取出來的:
如點擊CDU_1出現如下內容:
在此表格的數值上可以進行編輯,編輯完成之後點擊×,即可退出該視窗,同時,在主視窗的發送框內出現了需要發送的編碼內容:
點擊發送,發現對端已經接收到內容了
附:此外添加了一下錯誤提示:
1:如參數設定介面出錯:
2:如資料庫規定取值範圍編輯出錯
以上就是我們軟體的基本內容
團隊成員:陳煌榕
陳育建
李俊
袁琳琳
CanToolAPP_成果展示