ROM-6881 How to use UART

From ESS-WIKI
Revision as of 03:44, 27 November 2023 by Xingxing.li (talk | contribs) (Created page with " = '''Overview''' = <font color="#000000">The Android/Linux UART/serial port access from user is through the tty-devices. The tty-devices have different names depending on UA...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Overview

The Android/Linux UART/serial port access from user is through the tty-devices. The tty-devices have different names depending on UART driver on different board.

RS-485

RS-485 uses half-duplex communication, which means that one medium is shared for transmitting and receiving data.

Therefore the system needs to control the RS-485 transceiver's transmit mode.

Usually the UART RTS signal is used to switch the transmitter on and off.

Boards

ROM-6881 Borad

COM Name Device Node Remark
COM1 /dev/ttyS0 RS232 2-wire
COM2 /dev/ttyS6 RS232 4-wire
COM3 /dev/ttyS9 RS232 4-wire

Note :

 

How to config RS232 or RS485 mode

Enter U-boot interrupt mode

Connect device to debug port, and open debug console. See more : How_to_debug.

Press "ctrl + c" key before power up the device, until get the following information on debug console :

Hit any key to stop autoboot: 0
=> <INTERRUPT>
=>

Then you can input the following cammand to config UART mode.

Config Uart Mode

Only ttyUSB2 and ttyUSB3 support RS485 mode.

RS485 Mode:

setenv uart_mode 0x0c
saveenv
reset

RS232 Mode:

setenv uart_mode 0x00
saveenv
reset

Note :

The default value is RS232.

Cp210x support four port, but RSB4810 Only ttyUSB2 and ttyUSB3 support RS485 mode.

Above command "setenv uart_mode 0x0c", 0x0c means set bit2(ttyUSB2) and bit3(ttyUSB3) to 1 (0 means to RS232; 1 means to RS485).

If you just want ttyUSB2 (or ttyUSB3)to be RS485 mode, please change 0x0c to 0x04 (or 0x08).