【RK3568+PG2L50H开发板实验例程】Linux部分/UAR读写案例

本原创文章由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处(www.meyesemi.com) 

1.1. 案例简介

本案例旨在介绍如何测试开发板上的 UART 串口通信功能。

开发板支持的串口及其对应的设备节点如下表所示:

以下将以 TTL UART0 为例,详细说明测试流程,包括硬件连接、软件配置以及实现串口读写功能的具体操作步骤。

1.2. 测试前准备 在开始测试之前,请按照以下步骤完成准备工作:

(1) 硬件连接 

使用 USB 转 TTL 串口模块,将 PC 与开发板的 TTL UART4 接口连接。TTL UART4 接 口的具体位置如图所示,请确保连接正确且稳固。 

 

 (2) 软件准备

打开设备管理器,确认设备已被正确识别,首次连接后可能需要重启 PC 才能识别到正 确的设备名“XR21V1410 USB UART” ,如图所示。

 PC 上打开串口调试工具(窗口调试工具安装见“快速开发/调试工具安装”),选择 对应的串口号,例如本案例为 COM13。波特率设为 115200,数据位为 8,无校验位, 配置如下图所示。点击“打开”创建连接。

1.3. 操作流程

(1) TTL UART4 串口测试 将本案例 bin 目录下(05-开发资料\软件开发资料\linux_demo\mes_uart_rw\bin)的 可执行程序 mes_uart_rw 拷贝至开发板文件系统(源码可在 src 路径下查看)。打开终 端,执行如下指令,切换至 mes_uart_rw 可执行程序所在目录。

- 101 - cd ‘文件所在目录’ 切换后可执行指令“ls”查看 mes_uart_rw 可执行程序是否在当前目录下。 ls

若可执行文件 mes_uart_rw 存在当前目录下,则继续执行以下操作。

输入以下指令, 修改文件的权限。

chmod 777 mes_uart_rw

修改权限后可输入以下指令查看是否修改成功。

ls -ld mes_uart_rw

执行结果为:-rwxrwxrwx 1 root root 19016 Mar 3 09:55 mes_uart_rw。

-rwxrwxrwx 表示已经成功修改权限,文件可被执行,可继续进行以下的操作。

继续输入指令,查看程序参数信息。

./mes_uart_rw -h

执行后的结果如下图

(2) 开发板接收

输入以下指令,等待接收 PC 端数据

./mes_uart_rw -d /dev/ttyS4 -r -s 9

PC 上使用串口调试工具发送"Meyesemi"。 

 

 开发板调试串口终端将会打印接收到的数据。

 (3) 开发板发送

执行如下命令,开发板通过 UART4 串口发送数据至 PC 端,发送的数据是 “012345670”。         ./mes_uart_rw -d /dev/ttyS4 -w -s 9

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/89550.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/89550.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Webpack 中的 Loader 和 Plugin 全面详解

🎯 Webpack 中的 Loader 和 Plugin 全面详解 📌 整理不易,记得收藏、点赞再加关注,后续还会更新更多实战文档! Webpack 是现代前端构建体系的核心工具,其中 Loader 和 Plugin 是其功能扩展的两大支柱。它们…

主流分布式中间件及其选型

分布式架构中的中间件技术 在互联网公司的分布式架构中,中间件是支撑系统高可用、高并发、可扩展的核心组件。这些中间件针对分布式环境下的共性问题(如通信、数据一致性、资源调度等)提供标准化解决方案,极大降低了分布式系统的…

设备需求极致紧凑的空间体验,我们该如何解决?

在自动化集成过程,往往会碰到设备对控制系统体积有极致要求的情况,面对这样的挑战,如何解决? 项目背景与需求分析 在自动化集成过程,往往会碰到设备对控制系统体积有极致要求的情况,面对这样的挑战&#x…

Kotlin扩展函数与属性

扩展函数和属性是Kotlin中最具特色的功能之一,它们允许我们在不修改原有类的情况下为类添加新功能。这种设计既保持了类的封装性,又提供了强大的扩展能力。 一、扩展函数:为现有类添加新行为 1.1 基础扩展函数 扩展函数允许我们为任何类&am…

厨师上门做饭小程序源码php方案

厨师上门做饭小程序源码,开发语言后端php,前端uniapp。可二开定制 三个端:用户端师傅端小程序,pc管理后台。 一 用户端 1.单点大厨:选择厨师预约下单,查看厨师评价、厨师的套餐。 2.点套餐:选择…

LLM大模型如何访问MySQL业务数据库

目录 一、LLM大模型如何访问MySQL业务数据库 1.1 为什么需要SQL Agent? 1.2 什么是 create_sql_agent? 1.3 什么是SQLDatabaseToolkit? 二、SQL Agent智能体操作MySQL数据库 三、本地启动服务 验证效果 四、怎么提高SQL Agent智能体的回复准确性&#xff1…

MySQL(112)如何选择读写分离策略?

选择读写分离策略是实施读写分离的关键一步。常见的读写分离策略包括简单的读写分离和基于负载均衡的读写分离。为了实现这些策略,我们需要动态地选择数据源。下面详细介绍如何实现基于Spring Boot的读写分离,并结合代码示例展示不同策略的实现。 读写分…

日志-解决Linux因target is busy无法卸载硬盘/分区的问题 - PHP持续占用分区

效果图 写在前面 此次遇到的问题是,php-fpm持续占用设备/mnt/disk1,强制杀死php所有进程后,依然会自动产生新的进程再次霸占分区,导致设备无法卸载umount。思路是解决谁在不停的捣乱。 步骤 核心: 挂载文件系统到指定…

Linux系统权限维持篇

Openssh后门 重新安装自定义的openssh,达到记录账户密码,也可以采用万能密码连接的功能 1、登录方式 2、登录软件 3、登录机制 环境准备 yum -y install openssl openssl-devel pam-devel zlib zlib-devel yum -y install gcc gcc-c makewget http://c…

spring中maven缺少包如何重新加载,报错java: 程序包org.springframework.web.reactive.function不存在

错误原因分析 java: 程序包org.springframework.web.reactive.function不存在 这个错误是由于 项目中缺少 Spring WebFlux 相关依赖 导致的。org.springframework.web.reactive.function 包属于 Spring WebFlux 模块(用于响应式 Web 开发),如…

Linux--线程池

目录 Linux线程池 线程池的概念 线程池的优点 线程池的应用场景 线程池的实现 Linux线程池 线程池的概念 线程池是一种线程的使用模式。 其存在的主要原因就为:线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程&#…

mars3d (基于 Cesium 的轻量化三维地图库)

mars3d 是什么? Mars3D 作为基于 Cesium 的轻量化框架,正以其简洁的 API 和强大的功能重新定义开发体验。它不仅解决了原生 Cesium 学习曲线陡峭的问题,还通过封装和优化实现了性能与易用性的双重突破。无论是智慧城市、低空经济还是军事仿真,Mars3D 都能提供高效的三维可视…

uniapp 中使用路由导航守卫,进行登录鉴权

前言: 在uniapp 使用中,对于登录界面可能需要路由守卫进行方便判断跳转,以下有两种方案,可以判断用户跳转的时候是否是登录状态 方案一: 1. 可以使用插件 hh-router-guard 2. 使用 uni-simpe-route 方案二: 使用通过uni提供的拦截器实现, uni.addInterceptor 1.新建in…

Leetcode 262. 行程和用户

1.题目基本信息 1.1.题目描述 表:Trips ----------------------- | Column Name | Type | ----------------------- | id | int | | client_id | int | | driver_id | int | | city_id | int | | status | enum | | request_at | varchar | -----------…

P1102 A-B 数对

P1102 A-B 数对 题目背景 出题是一件痛苦的事情! 相同的题目看多了也会有审美疲劳,于是我舍弃了大家所熟悉的 A+B Problem,改用 A-B 了哈哈! 题目描述 给出一串正整数数列以及一个正整数 C C C,要求计算出所有满足 A − B = C A - B = C A−B=C 的数对的个数(不同…

devextreme-vue的DxDataGrid如何显示行号列

devextreme-vue我使用的是23.2版本,其DxDataGrid如何显示行号列,官方一直没有方案。 DataGrid - How to display a row number in data rows in Angular | DevExpress Support dxDataGrid - provide capability to display a column with row numbers …

【设计模式06】建造者模式

前言 没什么用,类似于builder.build UML类图 代码示例 package com.sw.learn.pattern.B_create.e_builder;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();for …

datax-web报错:连接数据库失败. 请检查您的 账号、密码、数据库名称、IP、Port或者向 DBA 寻求帮助(注意网络环境)

文章目录 一、报错内容二、解决方法 一、报错内容 背景描述: 在linux安装了datax202309版本及datax-web2.1.2版本,datax与datax-web默认都是mysql5.x版本的。我的数据库是mysql8.x版本的。 在datax中执行json脚本从一个mysql导入mysql没问题&#xff0…

C#调用C++导出的dll怎么调试进入C++ DLL源码

第一步:首先需要打开C源码,不需要任何设置,直接下断点,然后将生成DLL目录改成到C# exe生成目录里面 第二步:打开winform项目,然后在C#项目属性->启用本地代码调试勾选后即可 最后在C#下断点F10或者F11…

Skyeye 云智能制造办公系统 - Saas v3.16.10 发布

Skyeye 云智能制造,采用 Springboot (微服务) Layui UNI-APP Ant Design Vue 的低代码平台。包含 30 多个应用模块、50 多种电子流程,CRM、PM、ERP、MES、ADM、EHR、笔记、知识库、项目、门店、商城、财务、多班次考勤、薪资、招聘、云售后、论坛、公…