跳到主要内容

UART

iHC-3568JGW 多个串口可供使用,包括 2 个 RS485,2个 RS232 和 1个 UART

各串口对应的设备文件如下:

RS232_1: /dev/ttyS0
RS232_2: /dev/ttyS3
RS485_1: /dev/ttyS4
RS485_2: /dev/ttyS5
UART : /dev/ttyS9

iHC-3568JGW的RS485收发信息受到GPIO的控制,关系如下

RS485GPIO内核中gpio编号控制关系
RS485_1GPIO3_C1113拉低接收信息,拉高发送信息
RS485_2GPIO2_D694拉低接收信息,拉高发送信息

其他串口正常使用

以 RS485_1 为例:

  • 连接

将 RS485_1 的 A、B 引脚分别和主机串口适配器(USB 转 485 转串口模块)的 A、B 引脚相连。

  • 开发板发送, 主机接收

    将gpio控制节点打开

    echo 113 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio113/direction

    查看串口信息

    busybox stty -F /dev/ttyS4 -a

    将串口波特率设置成9600,8位数据模式

    busybox stty -F /dev/ttyS4 ispeed 9600 ospeed 9600 cs8

    拉高控制引脚

    echo 1 > /sys/class/gpio/gpio113/value

    主机终端先执行:

    /dev/ttyUSB0 为 主机串口适配器 的节点,根据实际修改

    cat /dev/ttyUSB0

    发送数据,开发板调试串口终端执行:

    echo "firefly RS485 test..." > /dev/ttyS4

  • 主机发送,开发板接收

    开发板调试串口终端先执行:

    echo 0 > /sys/class/gpio/gpio113/value busybox stty -echo -F /dev/ttyS4 # 关闭回显 cat /dev/ttyS4

    主机终端执行:

    /dev/ttyUSB0 为 主机串口适配器 的节点,根据实际修改

    echo "firefly RS485 test..." > /dev/ttyUSB0