Before using UART, it needs to set parameters such as baud rate, data bit, stop bit, parity and flowcontrol by using "set" command of pid_ioctl function.
pid_ioctl($pid, "set ITEM VALUE");
ITEM means setting items and VALUE is possible value of the item.
| ITEM | VALUE | Description | Default Value |
|---|---|---|---|
| baud | ex) 9600 | baud rate[bps] | 19200 |
| parity | 0 | no parity | 0 |
| 1 | EVEN parity | ||
| 2 | ODD parity | ||
| 3 | MARK parity (always 1) | ||
| 4 | SPACE parity (always 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 |
<?php
$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
?>