小凌派-RK2206开发板:UART控制案例
一、简介
通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART。它将要传输的资料在串行通信与并行通信之间加以转换。作为把并行输入信号转成串行输出信号的芯片,UART通常被集成于其他通讯接口的连结上。
本文基于瑞芯微RK2206芯片 + OpenHarmony系统,通过uart控制实现PC和开发板的互相通信功能。
二、硬件电路设计
模块整体硬件实物图如下图所示。电路比较简单,这边不对电路进行说明。

图1电路实物图图
三、程序设计
UART控制主要分为UART初始化和UART收发。
1、UART初始化
这部分代码为uart初始化的代码。首先用 LzUartDeinit() 函数将串口释放掉;其次用PinctrlSet()将GPIO0_PB6复用为UART0_RX_M0,GPIO0_PB7复用为UART0_TX_M0。最后调用 LzUartInit()函数初始化uart。源代码如下所示:

2、UART发送
具体uart写操作如下:

3、UART接收
具体uart读操作如下:

四、编译过程
1、搭建和下载源代码
我已将OpenHarmony源代码上传到Gitee社区中,大家可以根据以下网址下载。
https://gitee.com/Lockzhiner-Electronics/lockzhiner-rk2206-openharmony3.0lts
本文使用的案例网址如下:https://gitee.com/Lockzhiner-Electronics/lockzhiner-rk2206-openharmony3.0lts/tree/master/vendor/lockzhiner/rk2206/samples/b6_uart
2、打开sdk下面路径的文件
/vendor/lockzhiner/rk2206/samples/b6_uart/uart_example.c
3、修改编译脚本
修改 vendor/lockzhiner/rk2206/sample 路径下 BUILD.gn 文件,指定 uart_example 参与编译。
"./b6_uart:uart_example",
修改 device/lockzhiner/rk2206/sdk_liteos 路径下 Makefile 文件,添加 -luart_example 参与编译。
hardware_LIBS = -lhal_iothardware -lhardware -luart_example
3、编译固件
hb set -root .
hb set
hb build -f
4、烧写固件
请参考Gitee网址的说明手册(“烧录打印”章节):https://gitee.com/Lockzhiner-Electronics/lockzhiner-rk2206-openharmony3.0lts/blob/master/device/rockchip/README_zh.md
五、实验结果
程序编译烧写到开发板后,按下开发板的RESET按键,通过串口软件查看日志如下:

-
PC
+关注
关注
9文章
2175浏览量
159902 -
开发板
+关注
关注
26文章
6509浏览量
121364 -
瑞芯微
+关注
关注
27文章
903浏览量
54736 -
串口软件
+关注
关注
0文章
6浏览量
1855 -
RK2206
+关注
关注
0文章
38浏览量
2601
发布评论请先 登录
基于OpenHarmony+小凌派RK2206开发板制作的简易示波器
首发!成功移植OpenHarmony到瑞芯微RK2206开发板,2022年2月即将开源~
轻量系统开发套件介绍:凌睿智捷 | 小凌派-RK2206 开发板套件
将OpenHarmony1.1.2版本移植到瑞芯微RK2206开发板上介绍
基于RK2206开发板实现一种智慧车载模块的设计
首发!成功移植鸿蒙到瑞芯微RK2206开发板,代码即将开源~
基于小凌派RK2206开发板所制作的简易示波器
基于OpenHarmony轻量级操作系统实现RK2206 WiFi-AP模式通信开发案例
基于小凌派RK2206开发板:OpenHarmony如何使用IoT接口控制GPIO外设
基于瑞芯微RK2206芯片实现PC和开发板互相通信功能
评论