Difference between revisions of "How to use UART RK3588"
Zhihao.zhu (talk | contribs) |
|||
| Line 38: | Line 38: | ||
| | ||
| + | |||
== ASR-A501 Borad == | == ASR-A501 Borad == | ||
| + | |||
'''Main Board''' | '''Main Board''' | ||
| + | |||
{| border="1" cellpadding="1" cellspacing="1" | {| border="1" cellpadding="1" cellspacing="1" | ||
|- | |- | ||
| Line 63: | Line 66: | ||
|} | |} | ||
| − | '''Note : ''' | + | '''Note : ''' 1. Only COM1 and COM3 support RS232 4-wire. |
| − | 1. Only COM1 and COM3 support RS232 4-wire. | ||
2. The COM1 and COM3 default mode is RS232 4-wire. | 2. The COM1 and COM3 default mode is RS232 4-wire. | ||
| Line 82: | Line 84: | ||
| RS232 2-wire | | RS232 2-wire | ||
|} | |} | ||
| + | |||
| + | '''Note : ''' | ||
| + | |||
| + | | ||
| + | |||
| + | == AOM-3821 Borad == | ||
| + | |||
| + | {| border="1" cellpadding="1" cellspacing="1" | ||
| + | |- | ||
| + | | '''COM Name''' | ||
| + | | '''Device Node''' | ||
| + | | '''Remark''' | ||
| + | |- | ||
| + | | COM1 | ||
| + | | /dev/ttyS0 | ||
| + | | RS232 2-wire | ||
| + | |} | ||
| + | |||
'''Note : ''' | '''Note : ''' | ||
Revision as of 02:07, 27 April 2025
Contents
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 :
ASR-A501 Borad
Main Board
| COM Name | Device Node | Remark |
| COM1 | /dev/ttyS6 | RS232 4-wire or RS485 |
| COM2 | /dev/ttyS5 | RS485 |
| COM3 | /dev/ttyS9 | RS232 4-wire or RS485 |
| COM4 | /dev/ttyS3 | RS485 |
Note : 1. Only COM1 and COM3 support RS232 4-wire.
2. The COM1 and COM3 default mode is RS232 4-wire.
EG90/RM01/RM02
| COM Name | Device Node | Remark |
| COM1 | /dev/ttyS7 | RS232 2-wire |
Note :
AOM-3821 Borad
| COM Name | Device Node | Remark |
| COM1 | /dev/ttyS0 | RS232 2-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 coming from cpu
RS485 Mode(Taking ASR-A501 for example):
setenv uart_mode_cpu 6:1,9:1 saveenv reset
RS232 Mode(Taking ASR-A501 for example):
setenv uart_mode_cpu 6:0,9:0 saveenv reset
Note :
The default value is RS232 for ASR-A501 ttyS6 and ttyS9.
Above command "uart_mode_cpu 6:1,9:1", 6:1 means set ttyS6 to RS485(0 means to RS232; 1 means to RS485).
If you just want ttyS6(or ttyS9)to be RS485 mode, please change "6:1,9:1"to "6:1,9:0"(or "6:0,9:1").
Config Uart coming from cp2108
RS485 Mode:
setenv uart_mode 0x0c saveenv reset
RS232 Mode:
setenv uart_mode 0x00 saveenv reset
Note :
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).