모뎀 회선 신호를 확인하는 명령어는 modem입니다. 총 6개의 신호를 동시에 또는 각각 확인할 수 있습니다.
"get modem"
이 경우에는 반환값은 6자리의 이진수 형태의 문자열이며 각각의 자리에 대한 의미는 다음과 같습니다.
(RI)(CTS)(RTS)(DSR)(DTR)(CD)
값 0은 active상태를, 1은 inactive상태를 나타냅니다.
<?php
include "/lib/sd_spc.php";
$sid = 14;
spc_reset();
spc_sync_baud(115200);
spc_request_dev($sid, "set uart 115200N81");
spc_request_dev($sid, "set modem 11"); // RTS & DTR: inactive
echo spc_request_dev($sid, "get modem"), "\r\n"; // output(e.g.): 111111
sleep(1);
spc_request_dev($sid, "set modem 00"); // RTS & DTR: active
echo spc_request_dev($sid, "get modem"), "\r\n"; // output(e.g.): 110101
sleep(1);
?>
"get modem (signal)"
이 경우에는 signal에 확인하고자하는 신호 이름을 입력합니다.
신호 이름 | 설명 |
---|---|
ri | Ring Indicator |
cts | Clear To Send |
rts | Request To Send |
dsr | Data Set Ready |
dtr | Data Terminal Ready |
cd | Carrier Detect |
<?php
include "/lib/sd_spc.php";
$sid = 14;
spc_reset();
spc_sync_baud(115200);
spc_request_dev($sid, "set uart 115200N81");
spc_request_dev($sid, "set modem rts 1"); // RTS: inactive
echo spc_request_dev($sid, "get modem rts"), "\r\n"; // output(e.g.): 1
sleep(1);
spc_request_dev($sid, "set modem dtr 1"); // DTR: inactive
echo spc_request_dev($sid, "get modem dtr"); // output(e.g.): 1
?>