MT6761/MT6762/MT6765核心板模块 demo串口调试

news2024/11/15 9:25:44

串口调试¶

如果正在进行lk(little kernel ) 或内核开发,USB 串口适配器( USB 转串口 TTL 适配器的简称)对于检查系统启动日志非常有用,特别是在没有图形桌面显示的情况下。

1. 选购适配器¶

常用的许多 USB 转串口的适配器,按芯片来分,有以下几种:

  • CH340
  • PL2303
  • CP2104
  • FT232

一般来说,采用 CH340 芯片的适配器,性能比较稳定,价格上贵一些。

注意:ZM65开发板默认的波特率是 921600,有些USB转串口芯片波特率无法达到 921600,同一芯片的不同系列也可能会有差异,所以在选购之前一定要确认是否支持。

2. 硬件连接¶

串串口转 USB 适配器,有四个引脚:

  • 3.3V 电源(NC),不需要连接
  • GND,串口的地线,接开发板串口的 GND 针
  • TXD,串口的输出线,接开发板串口的 TX 针
  • RXD,串口的输入线,接开发板串口的 RX 针

注意: 如使用其它串口适配器遇到 TX 和 RX 不能输入和输出的问题,可以尝试对调 TX 和 RX 的连接。

3. 串口参数配置¶

ZM65系列开发板使用以下串口参数:

  • 波特率:921600
  • 数据位:8
  • 停止位:1
  • 奇偶校验:无
  • 流控:无

4. Windows 上使用串口调试¶

4.1. 安装驱动¶

下载驱动并安装:

  • CH340
  • PL2303
  • CP210X
  • FT232

如果在 Win8 上不能正常使用 PL2303,参考 这篇文章, 采用 3.3.5.122 或更老版本的旧驱动即可。如果在 Windows 系统上安装官网的 CP210X 驱动,使用 PUTTY 或 SecureC RT 等工具设置串口波特率为 921600,如果出现设置不了或无效的问题,可以下载旧版本驱动。

插入适配器后,系统会提示发现新硬件,并初始化,之后可以在设备管理器找到对应的COM口:

4.2. 安装软件¶

Windows 上一般用 putty 或 SecureCRT。其中我们推荐使用 putty 免费版本。这是一款功能强大的终端软件,在这里介绍一下,putty 的使用方法与之类似。

到这里下载 putty 。

4.3. 软件使用¶

  • 将 串口 修改为在设备管理器中找到的com端口
  • 设置 波特率 为 921600
  • 设置 数据位、校准位、停止位、流控
  • 点击 打开 串口设备

5. Ubuntu 上使用串口调试¶

在 Ubuntu 上可以有多种选择:

  • minicom
  • picocom
  • kermit

篇幅关系,以下就介绍 minicom 的使用。

5.1. 安装 minicom¶

使用下面命令进行安装

sudo apt-get install minicom

连接好串口线的,看一下串口设备文件是什么,下面示例是 /dev/ttyUSB0

$ ls /dev/ttyUSB*
/dev/ttyUSB0

运行:

$ sudo minicom
Welcome to minicom 2.7

OPTIONS: I18n
Compiled on Nov 15 2018, 20:20:04.
Port /dev/ttyUSB0, 17:03:33

Press CTRL-A Z for help on special keys

以上提示 CTRL-A Z 是转义键,按 Ctrl-a 然后再按 Z 就可以调出帮助菜单。

+--------------------------------------------------------------------+
|                 Minicom Command Summary                            |
|                                                                    |
|              Commands can be called by CTRL-A <key>                |
|                                                                    |
|               Main Functions                  Other Functions      |
|                                                                    |
| Dialing directory..D  run script (Go)....G | Clear Screen.......C  |
| Send files.........S  Receive files......R | cOnfigure Minicom..O  |
| comm Parameters....P  Add linefeed.......A | Suspend minicom....J  |
| Capture on/off.....L  Hangup.............H | eXit and reset.....X  |
| send break.........F  initialize Modem...M | Quit with no reset.Q  |
| Terminal settings..T  run Kermit.........K | Cursor key mode....I  |
| lineWrap on/off....W  local Echo on/off..E | Help screen........Z  |
| Paste file.........Y  Timestamp toggle...N | scroll Back........B  |
| Add Carriage Ret...U                                               |
|                                                                    |
|             Select function or press Enter for none.               |
+--------------------------------------------------------------------+

根据提示按O进入设置界面,如下:

+-----[configuration]------+
| Filenames and paths      |
| File transfer protocols  |
| Serial port setup        |
| Modem and dialing        |
| Screen and keyboard      |
| Save setup as dfl        |
| Save setup as..          |
| Exit                     |
+--------------------------+

把光标移动到“Serial port setup”,按enter进入串口设置界面,再输入前面提示的字母,选择对应的选项,设置成如下:

+-----------------------------------------------------------------------+
| A -    Serial Device      : /dev/ttyUSB0                              |
| B - Lockfile Location     : /var/lock                                 |
| C -   Callin Program      :                                           |
| D -  Callout Program      :                                           |
| E -    Bps/Par/Bits       : 921600 8N1                                |
| F - Hardware Flow Control : No                                        |
| G - Software Flow Control : No                                        |
|                                                                       |
|    Change which setting?                                              |
+-----------------------------------------------------------------------+

注意:Hardware Flow Control 和 Software Flow Control 都要设成 No,否则可能导致无法输入。

设置完成后回到上一菜单,选择 Save setup as dfl 即可保存为默认配置,以后将默认使用该配置。

5.2. minicom使用¶

调试的时候使用以下命令进行log保存

sudo minicom -C boot.log

boot.log在当前的窗口目录下面。

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

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

相关文章

SpringCloud:分布式事务Seata实践优化

1.极致性能优化 1.1. 同库模式 通常&#xff0c;一个TM会产生一笔主事务日志&#xff0c;一个RM会产生一条分支事务日志&#xff0c;每个分布式事务由一个TM和若干 RM组成&#xff0c;一个分布式事务总共会有1N条事务日志&#xff08;N为RM个数&#xff09;。 在默认情况下&…

万物的算法日记|第五天

笔者自述&#xff1a; 一直有一个声音也一直能听到身边的大佬经常说&#xff0c;要把算法学习搞好&#xff0c;一定要重视平时的算法学习&#xff0c;虽然每天也在学算法&#xff0c;但是感觉自己一直在假装努力表面功夫骗了自己&#xff0c;没有规划好自己的算法学习和总结&am…

CTFshow-pwn入门-前置基础pwn5 - pwn12

pwn5-pwn12的题目全是关于汇编语言的知识&#xff0c;pwn5-pwn12的汇编文件的代码都是一样的。 我们将可执行文件和汇编文件托到ctfshow-pwn专用虚拟机里&#xff0c;给可执行文件加上执行权限并查看其信息。 32位的&#xff0c;直接扔到ida中去。 在虚拟机中使用cat命令读取下…

SpringBoot的配置文件

SpringBoot的配置文件 &#x1f50e;配置文件的作用&#x1f50e;配置文件的格式&#x1f50e;properties配置文件properties的基本语法读取配置文件 &#x1f50e;yml配置文件yml的基本语法读取配置文件Tips关于 \n&#x1f36d;配置对象&#x1f36d;配置集合&#x1f36d; &…

网络知识点之-DNS协议

域名系统&#xff08;Domain Name System&#xff0c;缩写&#xff1a;DNS&#xff09;是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库&#xff0c;能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。当前&#xff0c;对于每一级域名长度的限制是63个…

4.13 ReentrantLock

相对于 synchronized 它具备如下特点 可中断可以设置超时时间可以设置为公平锁支持多个条件变量 与 synchronized 一样&#xff0c;都支持可重入 基本语法// 获取锁reentrantLock.lock();try{// 临界区} finally{// 释放锁reentrantLock.unlock();}1、可重入 可重入是指同一个…

小程序 抽象节点 selectable 与slot区别

比较 了解了微信小程序的抽象节点组件封装方式之后&#xff0c;觉得与vue的slot使用类似&#xff0c;但也有些区别 &#xff1a; 抽象节点 和 slot 有什么不同&#xff1a; slot只需要你传入一段代码抽象节点需要你传入一个自定义组件&#xff0c;&#xff0c;不是让你只传递…

Kubernetes集群本地连接调试工具KtConnect

一、简介 KtConnect&#xff08;Kt为Kubernetes Toolkit集群工具包的简写&#xff09;是一款基于Kubernetes环境用于提高本地测试联调效率的小工具 Connect&#xff1a;建立数据代理通道&#xff0c;实现本地服务直接访问Kubernetes集群内网&#xff08;包括Pod IP和Service域…

Jetpack Compose教程-水位控制小部件

Jetpack Compose教程-水位控制小部件 Apple的应用程序和小部件一直是设计的典范&#xff0c;也给我们的"复制系列&#xff1a;活动应用"和"卡片应用"提供了灵感。当他们发布了新款苹果手表Ultra时&#xff0c;它里面深度测量小部件的设计引起了我们的兴趣&…

加快奔向“国际数字之都” CDEC2023中国数字智能生态大会走进上海

数智闪耀长三角&#xff0c;风云际会上海滩。 6月14日上午&#xff0c;以汇聚数字产业动能、打造区域合作为主旨的 CDEC2023中国数字智能生态大会上海站活动在浦东软件园创新体验中心举行。 大会以“共建AI智能生态”为主题&#xff0c;吸引致远互联、SAP、浪潮等龙头企业&…

2022年山东省职业院校技能大赛网络搭建与应用赛项网络搭建与安全部署服务器配置及应用

2022年山东省职业院校技能大赛 网络搭建与应用赛项 第二部分 网络搭建与安全部署&服务器配置及应用 竞赛说明&#xff1a; 一、竞赛内容分布 竞赛共分二个模块&#xff0c;其中&#xff1a; 第一模块&#xff1a;网络搭建及安全部署项目 第二模块&#xff1a;服务器…

C#里的var和dynamic区别到底是什么,你真的搞懂了嘛

前言 这个var和dynamic都是不确定的初始化类型&#xff0c;但是这两个本质上的不同。不同在哪儿呢?var编译阶段确定类型&#xff0c;dynamic运行时阶段确定类型。这种说法对不对呢&#xff1f;本篇看下,文章原文地址&#xff1a;在这里 概括 以下详细叙述下这两个(var,dynamic…

CVE-2023-33246命令执行复现分析

简介 RocketMQ是一款低延迟、高并发、高可用、高可靠的分布式消息中间件。既可为分布式应用系统提供异步解耦和削峰填谷的能力&#xff0c;同时也具备互联网应用所需的海量消息堆积、高吞吐、可靠重试等特性。 影响版本 <RocketMQ 5.1.0 <RocketMQ 4.9.5 环境搭建 docker…

Leetcode 剑指 Offer II 031. 最近最少使用缓存

题目难度: 中等 原题链接 今天继续更新 Leetcode 的剑指 Offer&#xff08;专项突击版&#xff09;系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 运用所掌握的数据结构&#xff0c;设计和实现一个 LRU (Least Re…

Python 类型检测:isinstance() 与 type()

文章目录 参考描述面向对象编程概念类与实例继承super() 与代理对象方法的自动继承属性的继承 isinstance 与 type 内置函数isinstance()可迭代对象仅能为元组可能产生的 TypeError嵌套的元组 typeisinstance() 与 type() 的区别 参考 项目描述Python 官方文档https://docs.py…

【C语言初阶】分支语句If与switch的具体用法,有这篇博客就够了

君兮_的个人主页 勤时当勉励 岁月不待人 C/C 游戏开发 Hello,这里是君兮_,今天又来给大家更新0基础学习C语言中的文章啦&#xff01; 今天带来的是对分支语句的详解&#xff0c;初学者建议先看看总集哦, 这里是链接: 【C语言初阶】万字解析,带你0基础快速入门C语言(上) 【C语…

图片转excel表格算法之霍夫变换法原理浅析

大家伙都知道&#xff0c;图片转excel表格是金鸣识别中一项非常重要的功能&#xff0c;金鸣识别的OCR在识别图片中的表格时&#xff0c;会用到一种叫霍夫变换法的算法&#xff0c;那这个算法到底是怎么回事&#xff1f;它的原理又是什么呢&#xff1f; 一、霍夫变换法的概念 …

深入了解模板知识(c++)

前言 在c中模板是很重的&#xff0c;泛型编程就是模板最好的体现&#xff0c;模板的出现就是为了更好的复用代码&#xff0c;有了它&#xff0c;我们不必写各种逻辑相同只是逻辑中的数据的类型的不同的代码&#xff0c;使得我们编写代码变得更加高效&#xff0c;下面让我们一起…

若依权限系统分析(前后端分离版)

若依权限系统分析 一&#xff1a;故事背景二&#xff1a;具体权限控制2.1 页面权限控制2.2 页面元素权限控制 三&#xff1a;实现前端鉴权3.1 封装js与权限交互3.1.1 uni-app自带uni-request与权限交互 3.2 vux状态管理3.2.1 自定义状态3.2.2 在vuex的store配置内添加我们新增的…

rust切片

这里s的不可变引用借用给了wordIndex&#xff0c;而s.clear()又想用可变引用&#xff0c;所以报错。而第一个例子中返回的usize并没有返回不可变引用。