簡體   English   中英

RS232串行端口通訊的設置

[英]Settings for RS232 serial port communication

我正在使用該庫與Java的串行端口進行通信。 另外,我正在使用USB轉串口轉換器連接到設備。 這是與設備有關的文檔:

2.1 物理接口主機和VGM之間所需的物理接口是EIA-232接口。

2.2 邏輯接口串行數據鏈路應以每秒19,200比特(BPS)的速度運行,具有一個起始位,八個數據位,一個喚醒位和一個停止位。 喚醒位應在消息的第一個字節中設置。 消息的其余部分應清除喚醒位。 當響應主機時,VGM應清除喚醒位。

當連接到串行端口時,我有點困惑如何設置rs232庫設置。 有波特率設置,以位(5、6、7、8)為單位的數據長度,停止位(1、2)和奇偶校驗設置。 當我弄亂這些設置時,我當然會得到不同的輸出(大多數時候看起來像垃圾)。 您能幫我猜一下有關引用文檔的設置嗎?

據我了解,您的協議需要一個額外的第9個數據位,該位在某些特殊的應用程序中使用,例如Multidrop總線 (另請參見Stackoverflow 14212660 )。 在您的情況下,這第9位稱為“喚醒位”,但您在Java庫或標准RS232應用程序中找不到此類名稱。

有一種使用標准USB到串行轉換器的解決方法。 這正是Stackoverflow 14212660中所謂的

並且通過使用奇偶校驗位作為第9個數據位來避免篡改

因此,除非您想購買專用硬件,否則我建議您使用“ fudging”:

使用奇偶校驗設置MARK和SPACE應該對應於所需的設置“喚醒位設置”。 “喚醒位清除”。 我們的軟件Docklight Scripting允許您在免費評估中進行這種臨時的奇偶校驗切換 ,但是我認為周圍還存在其他工具或代碼示例。 為此,MDB / multidrop總線應該是不錯的Google關鍵字。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM