7. RS232

本章介绍在Android中使用RS232总线与外部设备的通讯。

目前硬件上支持RS232的有以下板卡:

  1. LubanCat-1金手指底板(含有RS232x2)

  2. LubanCat-1BTB底板(含有RS232x2)

  3. LubanCat-1H底板(含有RS232x4)

  4. LubanCat-1HS底板(含有RS232x4)

  5. LubanCat-2金手指底板(含有RS232x2)

  6. LubanCat-2BTB底板(含有RS232x2)

  7. LubanCat-2H底板(含有RS232x2)

  8. LubanCat-5IO底板(含有RS232x2)

注意

其中LubanCat-2金手指/BTB和LubanCat-5IO的RS232需要跳帽配置,其他板卡不需要。

LubanCat-2金手指/BTB正面图硬件标识图:

LubanCat-2M板卡硬件资源图
  • 图中左边红框为RS232的两个接口,右边红框为串口和RS232的选择接口,ttl串口和rs232接口二选一

  • 使用RS232需要用跳帽连接,如图下所示

LubanCat-2M板卡硬件资源图

LubanCat-5IO底板上的RS485和RS232是共用同一组UART信号的,使用跳帽切换RS485或者RS232

未找到图片

7.1. 硬件标识

具体的引脚定义可以参考背面的丝印

  1. LubanCat-2金手指底板引脚定义图:

LubanCat-2M板卡硬件资源图
  1. LubanCat-1HS底板引脚定义图:

../../../_images/rs232_3.jpg
  1. LubanCat-5IO底板

引脚定义图

未找到图片

其他板卡可结合底板丝印和原理图确认具体引脚。

7.2. 引脚定义

LubanCat-1金手指/BTB底板:

232引脚

对应串口

RS232-1

UART4-M1

RS232-2

UART3-M1

LubanCat-1H底板:

232引脚

对应串口

RS232-1-1

UART4-M1

RS232-1-2

UART5-M1

RS232-2-1

UART7-M1

RS232-2-2

UART9-M1

LubanCat-1HS底板:

232引脚

对应串口

RS232-1-1

UART2-M1

RS232-1-2

UART3-M1

RS232-2-1

UART4-M0

RS232-2-2

UART7-M0

LubanCat-2金手指/BTB底板:

232引脚

对应串口

RS232-1

UART7-M1

RS232-2

UART9-M1

LubanCat-2H底板:

232引脚

对应串口

RS232-1

UART6-M0

RS232-2

UART7-M0

LubanCat-5IO底板:

232引脚

对应串口

RS232-1

UART4_M2

RS232-2

UART7_M2

7.3. 接口使能

大部分板卡的RS232对应的串口接口默认是开启的,但如LubanCat-5IO板卡的RS232和RS485共用一组UART接口,硬件通过跳帽切换,而软件默认配置为RS485, 因此需要修改设备树源码来关闭RS485开启RS232,并重新编译镜像

如果对设备树不熟悉的用户,请学习野火配套的《嵌入式Linux驱动开发实战指南》的 Linux设备树 章节内容。

以使能LubanCat-5IO的RS232对应的UART4_M2和UART7_M2为例,修改SDK源码/kernel-5.10/arch/arm64/boot/dts/rockchip/rk3588-lubancat-5io.dtsi (其他板卡修改板卡对应的设备树),在设备树中添加以下节点:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
&uart4{
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <&uart4m2_xfer>;
};

&uart7{
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <&uart7m2_xfer>;
};

提示

如果不清楚选定的引脚节点怎么写,可以参考Linux内核对应的 设备树插件源码

修改为如下图所示,如果与其他节点冲突需关闭冲突节点再添加(此处修改就是存在冲突,默认使用了RS485配置,因此要需注释RS485配置,仅添加UART节点)

rs232节点

参考 编译 Android 镜像 章节重新编译镜像并将编译出来的镜像烧录到板卡。

7.4. 使用方法

通过USB转RS232模块与板卡RS232接口进行连接,实现板卡与电脑通信,接线如下所示:

1
2
3
4
5
6
#板卡与USB转RS232模块连接

板卡  ------  USB转RS232模块
GND   ------  GND
RX    ------  TX
TX    ------  RX

RS232收发数据的方法和操作普通串口 完全一致,因此就不进行赘述了,请参考“串口通信”章节收发数据进行测试。