ROC-RK3328-CC

Firefly首个超小型开源主板,特有的USB3.0与DDR4让其性能更快更稳定,超高性价比的ROC-RK3328-CC是你探索程序世界的首选主板。

UART 使用

更新时间:2017-12-25 阅读:5040

简介

ROC-RK3328-CC 支持三路 UART:UART0,  UART1,  UART2, 都拥有两个 64 字节的 FIFO 缓冲区,用于数据接收和发送。 其中:

  • UART0 用于蓝牙传输,UART2 用作调试串口,只有 UART0 和 UART1 支持硬件自动流控。

  • 支持比特率 115.2Kbps,460.8Kbps,921.6Kbps,1.5Mbps,3Mbps,4Mbps。

  • 支持自选波特率,即使使用非整数时钟分频器

  • 支持基于中断或基于 DMA 的模式

  • 支持 5-8 位宽度传输

ROC-RK3328-CC开发板为了方便用户使用,引出了一排通用的GPIO,其对应原理图如下图:
图片.png

其中 RX2 ,TX2 为 UART2 调试串口,RX1,TX1 为 UART1 可作为外部串口使用。

调试方法

配置好串口后,用户可以通过主机的 USB 转串口适配器向开发板的串口收发数据,步骤如下:

(1) 连接硬件

将开发板 UART1 的 TX、RX、GND 引脚分别和主机串口适配器的 TX、RX、GND 引脚相连。

(2) 打开主机的串口终端

在终端打开kermit,并设置波特率:

$ sudo kermit
C-Kermit> set line /dev/ttyUSB0
C-Kermit> set speed 9600
C-Kermit> set flow-control none
C-Kermit> connect
  • /dev/ttyUSB0 为 USB 转串口适配器的设备文件

  • 波特率与配置 DTS 节点中的 current-speed 属性相同

(3) 发送数据

uart1 的设备文件为 /dev/ttyS1。在设备上运行下列命令:

echo firefly uart1 test... > /dev/ttyS1

主机中的串口终端即可接收到字符串“firefly uart1 test...”

(4) 接收数据

首先在设备上运行下列命令:

cat /dev/ttyS1

然后在主机的串口终端输入字符串 “Firefly uart1 test...”,设备端即可见到相同的字符串。

FAQs

Q1: 为何板子接上串口适配器后系统报错?

A1:ROC-RK3328-CC 开发板的 TX 和 RX,分别对应串口适配器(官方)的 TX 和 RX,如果搞混淆了会导致通信出错。