你好,我們在對接貴公司的門禁控制器,遇到0x7F的問題
2017-02-17 10:00
問題詳情:
我們現在想把貴公司的門禁控制器接入到我們的軟件里,現在開發(fā),遇到0x7F數據與通信結束符相同后導致的通信錯亂。我們打電話質詢后,了解到有一個轉碼,請在這里提供一下具體怎么轉給我們參考一下。謝謝!
專家解答:
您好,很高興能與貴公司合作,感謝使用我們的產品
有關貴公司的二次開發(fā)過程中遇到的通信0x7F,0x7F是我們作為通信 開始 與 通信 結束標志來使用的,而如果在您的通信中出現這個內容,我們要求要轉譯,避免我們當結束符對待。在您編寫代碼遇到這個時,請參考如下轉譯碼:
由于命令中使用了0x7E作為命令的開始和結束標志,所以7E這個字節(jié)就不能出現在命令內容中只能出現在命令頭和命令尾。
轉譯碼如下:
0x7F 01 = 0x7E
0x7F 02 = 0x7F
轉譯碼使用的地方,在命令發(fā)送前對先對命令內容檢驗和計算,然后再進行0x7E和0x7F的數據檢查,發(fā)現0x7E或0x7F就進行上面的公式轉換,再就收到命令后應該先按照上面的公式進行數據反轉譯再進行校驗和檢驗。