모뎀 회선 신호를 설정하는 명령어는 modem입니다. 이 명령으로 제어할 수 있는 모뎀 회선 신호는 RTS와 DTR이며 두 신호를 동시에 설정하거나 각각 설정할 수 있습니다.
"set modem (signal)"
signal에 2진수 2자리를 입력합니다.
첫 번째 자리는 RTS신호의 값을, 두 번째 자리는 DTR신호의 값을 의미합니다.
값 0은 active상태를 나타내고 값 1은 inactive상태를 나타냅니다.
설정 값 | RTS상태 | DTR상태 |
---|---|---|
00 | active | active |
01 | active | inactive |
10 | inactive | active |
11 | inactive | 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: active
echo spc_request_dev($sid, "get modem"), "\r\n"; // output(e.g.): 111111
sleep(1);
spc_request_dev($sid, "set modem 00"); // RTS & DTR: inactive
echo spc_request_dev($sid, "get modem"), "\r\n"; // output(e.g.): 110101
sleep(1);
?>
"set modem rts (signal)"
"set modem dtr (signal)"
signal에 2진수 1자리를 입력합니다.
값 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 rts 1"); // RTS: active
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: active
echo spc_request_dev($sid, "get modem dtr"); // output(e.g.): 1
?>
※ 주의: 모뎀 회선 신호 설정("set modem")과 하드웨어 흐름제어(RTS/CTS)는 동시에 사용할 수 없습니다.