Linux
建立連接後如何向調製解調器發送 AT 命令?
我有一個中興 3g 調製解調器。我使用運營商提供的撥號器建立連接。一旦 ppp 連接處於活動狀態,我想發送一些 AT 命令(例如查詢信號強度,
AT+CSQ
)。但是我使用的撥號器鎖定了/dev/ttyUSB0
埠,這是為我的調製解調器發送 AT 命令的命令埠。那麼,一旦連接處於活動狀態,有什麼方法可以發送命令?編輯:我還嘗試了附加埠/dev/ttyUSB1。但是該埠正在傳輸來自調製解調器的隨機數據。下面給出一個範例。
T^PREFMODE?? ^PREFMODE:8 OK TC ^DSDORMANT:1 +CSQ:19, 99 OK T^SYSINFO ^SYSINFO:2,3,0,4,255 OK TT^SYSINFO? ^SYSINFO:2,3,0,4,255
我嘗試添加我的命令,我什至得到了輸出。但是反響很差。大多數時候,我的 AT 命令沒有被注意到。
只要設備用於 ppp 流量,就不可能同時執行 AT 命令1。出於這個原因,所有現代調製解調器都將提供多個串列介面,例如 /dev/ttyUSB0 和 /dev/ttyUSB1(或 /dev/ttyACM0 和 /dev/ttyACM1 用於 Linux 上的 USB CDC 調製解調器)。
早在手機具有 RS-232 兼容連接器(可能帶有額外的 IrDA)的時代,3GPP 將多路復用協議標準化為07.10以克服物理限制,儘管這需要 PC 上的特殊驅動程序,因此它從未成功。如今,憑藉 USB 固有的多路復用功能,沒有理由不提供多個串列介面(儘管通常只有兩個)。
因此,正如評論中已經提到的,您應該使用其他串列設備,例如
/dev/ttyUSB1
.1從理論上講,調製解調器可能支持
+++
轉義,這將允許您在連接進行時執行 AT 命令,儘管您必須以某種方式修改撥號程序以注入這些並提取響應。 .