Настройка UART


Перед использованием UART необходимо установить такие параметры, как скорость в бодах (baud rate), бит данных (data bit), стоповый бит (stop bit), контроль четности (parity) и управление током (flowcontrol) путем использования команды "set" для функции pid_ioctl.

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

ITEM означает установку позиций, а VALUE означает возможное значение элемента.

Доступные элементы UART

ITEM/элемент VALUE/значение Описание Значение
по умолчанию
baud ex) 9600 baud rate[bps] 19200
parity 0 no parity 0
1 EVEN parity
2 ODD parity
3 MARK parity (всегда 1)
4 SPACE parity (всегда 0)
data 8 8 data bit 8
7 7 data bit(it can be only used with parity bit)
stop 1 1 stop bit 1
2 2 stop bit
flowctrl 0 no flow control 0
1 RTS/CTS hardware flow control
2 Xon/Xoff software flow control
3 TxDE flow control for RS485

Пример настройки UART

$pid = pid_open("/mmap/uart0");    // open UART 0
pid_ioctl($pid, "set baud 9600");  // baud rate: 9600 bps
pid_ioctl($pid, "set parity 0");   // no parity
pid_ioctl($pid, "set data 8");     // data bit length: 8
pid_ioctl($pid, "set stop 1");     // stop bit length: 1
pid_ioctl($pid, "set flowctrl 0"); // no flow control