7. 串口通讯

本章主要讲解LubanCat系列 android系统中串口的基本使用。搭配本套案例的板卡为lubancat-2io,其他串口方法类似。

7.1. 准备工作

lubancat-2io *1 ,ch340串口模块*1 , 野火多功能调试助手

对应截图

未找到图片
  • 需要使用到4个跳线帽将j14、j13上的引脚连接起来

未找到图片

板卡

ch340模块

TXD

RXD

RXD

TXD

GND

GND

  • 板卡tx、rx对接模块rx、tx

7.2. 检查串口设备

查看串口功能是否开启

未找到图片

7.3. 安卓串口通讯实验(Shell)

本次使用板卡上的串口9进行实验,对应的设备文件为/dev/ttyS9。 通过adb shell可对tty的设备文件直接读写就可以控制设备通过串口接收或发送数据。下面我们使用板卡配合Windows下的野火多功能调试助手进行测试。

7.3.1. 连接串口

实验前需要使用串口模块将板卡与电脑连接起来。

7.3.2. 查询串口9的通信参数

串口9外设使能后,在/dev目录下生成ttyS9设备文件,用stty工具查询其通信参数

1
2
#在板卡的终端执行如下命令
stty -F /dev/ttyS9

如下图:

未找到图片

7.3.3. 修改串口波特率

1
2
 #设置通讯速率,其中ispeed为输入速率,ospeed为输出速率
 stty -F /dev/ttyS9 ispeed 115200 ospeed 115200

如下图:

未找到图片

7.3.4. 关闭回显

默认串口是开启回显的 可以使用以下命令关闭回显

1
stty -F /dev/ttyS9 -echo

7.4. 与Windows主机通讯

配置好串口调试助手后,尝试使用如下命令测试发送数据:

1
2
3
4
5
#在板卡上的终端执行如下指令
#使用echo命令向终端设备文件写入字符串"Hello!"、"I'm lubancat"
echo Hello! > /dev/ttyS9
echo "I'm lubancat" > /dev/ttyS9
#Windows上的串口调试助手会接收到内容

如下图:

未找到图片13|

可以看到,往/dev/ttyS9设备文件写入的内容会直接通过串口线发送至Winodws的主机。

而读取设备文件则可接收Winodws主机发往板卡的内容,可以使用cat命令来读取:

1
2
3
4
5
6
7
#在板卡上的终端执行如下指令
#使用cat命令读取终端设备文件
cat /dev/ttyS9 &
#cat命令会等待
#使用串口调试助手发送字符串
#字符串最后必须加回车!
#板卡的终端会输出接收到的内容

如下图:

未找到图片14|

Hello lubancat!

7.5. Android apk测试工具

如下图:

未找到图片

进入app后,选择好串口和波特率,点击打开即可。 在edittext中输入内容,点击发送,在多功能调试助手中可以查看串口发送的内容。 在多功能调试助手中点击发送,可以在textview查看到串口接收到的信息。

未找到图片

7.6. 更多

更多关于uart的使用以及资料可以查阅: rk开源手册/Common/UART

7.7. 参考资料

本文档主要提供有一定经验的使用者快速入门使用,对于初学者可查看以下文档:

《imx6ull : 串口通讯与终端设备》

《LubanCat RK系列 : 串口通讯》

《stty工具命令》

设备树相关知识点请阅读下面章节的内容:

《设备树修改基础知识》

《设备树插件修改方法指导》

rk开源资料(github): 《开源手册》