SIMs小型儀表模塊 通訊示例
簡介
小型儀表模塊SIM系列旨在支持用戶計算機與各種儀器之間的簡單通信。盡管有可能與 SIM 模塊直接通信,但本文只考慮通過SIM900主機通信的情況。
SIM900具有RS-232和GPIB兩種主機計算機接口,兩者可選其一作為主接口。使用面板后面的琴鍵形DIP開關(位置3)來切換接口:向上為 RS-232,向下為 GPIB。根據主機的選擇對最右邊的5個開關進行解讀,并確定默認波特率(RS-232)或儀器地址(GPIB)。僅能啟動一個主接口,且在SIM900上電時確定選擇 。
通過SIM900進行通信的*簡單方式是“connection"模型,管理單個雙向I / O數據流。在開機時,這個數據流最初被定向到 SIM900 本身,因此,例如,一個識別查詢將導致 SIM900 ID 字符串作為響應返回到上位機。使用 SIM900“CONN"命令,用戶可以將 I / O 數據流引導到主機的一個儀器端口(內部插槽為 1-8,遠程 SIM 端口為 9,輔助 RS-232 端口為 A 或者 B)。連接到特定端口后,所有 I / O 都從上位機通過主機引導到目標端口,目標端口的響應通過主機傳回上位機。為了結束 CONNection,上位機發送一個預編程的“escape"密鑰,換碼鍵作為 CONN命令中的第二個參量被提供,應當謹慎選擇,以確保它不會在上位機到目標端口的正常 I/O 數據流中意外出現。在下面的示例中,選擇無意義序列 XYZZY 作為換碼鍵作 (注意該鍵是區分大小寫的;第二個示例實際上使用 xyZZy來演示這一點)。
主機將數據從上位機中繼到 CONNected 端口時,它會持續掃描,查找是否存在可能與換碼鍵匹配的項。如果 key 的第一個字符被接收到,則這個字符被保存在主機的存儲器緩沖器中。接收下一個字符時,它與 key 的第二個字符進行比較;如果它匹配,也會添加到緩沖區,否則,緩沖區中之前的字符和新的字符都會傳輸到目標端口。例如,考慮一個帶有換碼鍵 XYZZY 的連接,如果上位機嘗試向端口發送消息 XYZ,那么在接收到另一個字符(確保該字符不是下一個 Z)之前,主機將保留所有三個字符,對于此局部匹配緩沖沒有超時設置,所以在主機無法將消息數據與換碼鍵唯*區分之前,數據將被無限期地保留。
當使用輔助 RS-232 端口將多個SIM900主機連接在一起時,情況變得更加有趣。在這種情況下,必須為兩臺主機使用不同的換碼鍵,以在不斷開“父"數據流的情況下重定向“子"SIM900 I /O 數據流。關于此演示,請參閱下面的示例 3。
示例 1: RS-232
設置用戶輸入的文本 “bold teletype", 而響應設置為 “plain teletype".
示例 2: GPIB
GPIB (IEEE-488)示例是作為偽代碼編寫的,因為沒有類似的 GPIB 控制臺程序。 發送到 SIM 系統的實際數據再次設置為 “bold teletype", 而響應設置為“plain teletype".
示例 3: 多臺級聯
下面以 RS-232 為例,主機連接的 SIM900 序列號為 000112,該主機的內部槽位填充 SIM970電壓表,輔助端口 A 連接到第二個 SIM900 主機(序列號為 000321)。這第二個主機插滿 SIM925 多路復用器。
發送到 SIM 系統的實際數據再次設置為“bold teletype", 而響應設置為“plain teletype".
立即詢價
您提交后,專屬客服將第一時間為您服務