UART 설정


UART는 사용하기 전에 반드시 설정이 필요합니다. 통신속도, 데이터비트, 정지 비트, 패리티, 흐름제어등의 설정 항목이 있으며, 설정을 위해서는 pid_ioctl함수의 set명령을 사용합니다.

pid_ioctl($pid, "set ITEM VALUE");

ITEM은 설정 할 항목을, VALUE는 항목에 설정할 값을 의미합니다.

설정 가능한 UART 종류

ITEM VALUE 설명 기본값
baud 예) 9600 통신속도[bps] 19200
parity 0 패리티 사용 안 함 0
1 EVEN(짝수 패리티)
2 ODD(홀수 패리티)
3 MARK(패리티 비트 항상 1)
4 SPACE(패리티 비트 항상 0)
data 8 데이터 비트 8 8
7 데이터 비트 7(이 때 반드시 패리티를 사용해야 함)
stop 1 정지 비트 1 1
2 정지 비트 2
flowctrl 0 흐름제어 사용 안 함 0
1 RTS/CTS 사용
2 Xon/Xoff 사용
3 TxDE 사용(RS485)

UART 설정 예

<?php
$pid = pid_open("/mmap/uart0");     // 0번 UART 열기
pid_ioctl($pid, "set baud 9600");   // 통신속도 9600 bps
pid_ioctl($pid, "set parity 0");    // 패리티 사용 안 함
pid_ioctl($pid, "set data 8");      // 데이터 비트 8
pid_ioctl($pid, "set stop 1");      // 정지 비트 1
pid_ioctl($pid, "set flowctrl 0");  // 흐름제어 사용 안 함
?>