安卓开发板_联发科MTK开发评估套件串口调试

串口调试

如果正在进行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 上使用串口调试

1. 安装驱动

下载驱动并安装:

  • CH340
  • PL2303
  • CP210X
  • FT232

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

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

_images/ft232.png

2. 安装软件

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

到这里下载 putty 。

软件使用

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

_images/serial.png

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.7OPTIONS: I18n
Compiled on Nov 15 2018, 20:20:04.
Port /dev/ttyUSB0, 17:03:33Press 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.mzph.cn/web/52667.shtml

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

相关文章

Unstructured cannot write mode RGBA as JPEG 错误解决

Unstructured cannot write mode RGBA as JPEG 错误解决 0. 错误详细1. 解决方法 0. 错误详细 Image Extraction Error: Skipping the failed image Traceback (most recent call last):File "/root/miniconda3/envs/learn-yolo/lib/python3.11/site-packages/PIL/JpegIm…

通过nginx代理转发实现共用80和443端口

目录 项目场景&#xff1a; 问题&#xff1a;怎么实现端口共用&#xff1f; 一、域名解析到nginx服务器 二、创建vhost解析到实际的服务器 三、防火墙的配置 项目场景&#xff1a; 公司自建服务器&#xff0c;有一条专线带有公网IP&#xff0c;如何满足不同的域名解析共用…

Go语言错误处理之道:优雅地应对程序中的问题

错误处理是任何编程语言中的关键部分&#xff0c;Go语言以其独特的错误处理机制而著称。对于初学者来说&#xff0c;理解Go语言中的错误处理对于编写健壮和可靠的程序至关重要。 为什么需要错误处理 在编程中&#xff0c;错误处理是必不可少的&#xff0c;因为程序可能会遇到…

go-map系统学习

map底层结构 Goland的map的底层结构使用hash实现&#xff0c;一个hash表里有多个hash表节点&#xff0c;即bucket&#xff0c;每个bucket保存了map中的一个或者一组键值对。 map结构定义&#xff1a; runtime/map.go:hmap type hmap struct {// Note: the format of the hma…

代码随想录训练营第29天|控制变量

134. 加油站 class Solution { public:int canCompleteCircuit(vector<int>& gas, vector<int>& cost) {int cur0, total0, start0;for(int i0; i<gas.size(); i){curgas[i]-cost[i];totalgas[i]-cost[i];if(cur<0){starti1;cur0;}}if(start>gas…

pdf 转 jpg

该方法是 pdf 的每一页&#xff0c;分别生成一个 jpg 文件 例&#xff1a;pdf 有6页 生成jpg> 6个jpg文件&#xff0c;分别对应pdf的各页面 依赖 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><versi…

win10 安装多个版本的python

1&#xff0c;安装python3.9 和python3.10 2, 安装完之后分别打开两个版本的Python的安装目录&#xff08;第一层目录&#xff09;&#xff0c;把pythonw.exe分别重命名为pythonw_39.exe和pythonw_310.exe&#xff0c;把python.exe复制一份&#xff0c;并分别重命名为python_…

【C++】_stack和_queue容器适配器、_deque

当别人都在关注你飞的有多高的时候&#xff0c;只有父母在关心你飞的累不累。&#x1f493;&#x1f493;&#x1f493; 目录 ✨说在前面 &#x1f34b;知识点一&#xff1a;stack •&#x1f330;1.stack介绍 •&#x1f330;2.stack的基本操作 &#x1f34b;知识点二&…

吃饭时偶遇领导,该不该抢着买单?高情商的人用这三招受重用

生活中&#xff0c;我们出去吃饭&#xff0c;偶然间遇到什么人都不足为奇&#xff0c;可能是当红明星&#xff0c;可能是故友&#xff0c;也可能是我们的领导。特别是当我们在用餐时偶遇领导&#xff0c;如何处理这一突如其来的“邂逅”&#xff0c;成为了考验职场情商的重要一…

怎么利用XML发送物流快递通知短信

现如今短信平台越来越普遍了&#xff0c;而短信通知也分很多种&#xff0c;例如服务通知、订单通知、交易短信通知、会议通知等。而短信平台在物流行业通知这一块作用也很大。在家时:我们平时快递到了&#xff0c;如果电话联系不到本人&#xff0c;就会放到代收点&#xff0c;然…

Jenkins 执行 shell 时报错 Host key verification failed.

1. 问题描述 在 jenkins 中执行下面的 shell 语句时 sshpass -p "123456" scp -r * dep192.168.1.100:/home/dep/Desktop/报错 Host key verification failed.可能原因是由于首次登录时需要输入 yes 导致无法连接成功。 The authenticity of host 192.168.1.100…

中医笔记目录

目录 &#x1f315;中医基础&#x1f319;阴阳&#xff0c;五行&#xff0c;六气&#xff0c;天干地支&#xff0c;子午流注&#x1f319;十四经脉&#x1f319;中医要背的内容 &#x1f315;艾灸&#x1f315;方解&#x1f315;脉诊&#x1f315;医案&#x1f319;我的医案笔记…

制作炫酷个人网页:用 HTML 和 CSS3 展现你的风格

– 你是否觉得自己的网站应该看起来更炫酷&#xff1f;今天我将教你如何使用 HTML 和 CSS3 制作一个拥有炫酷动画和现代设计风格的个人网页&#xff0c;让它在任何设备上看起来都无敌酷炫&#xff01; 哈哈哈哈哈哈哈哈,我感觉自己有点中二哈哈哈哈~ 目录 炫酷设计理念构建 H…

力扣之1777.每家商店的产品价格

文章目录 1. 1777.每家商店的产品价格1.1 题干1.2 建表1.3 题解1.4 结果截图 1. 1777.每家商店的产品价格 1.1 题干 表&#xff1a;Products -------------------- | Column Name | Type | -------------------- | product_id | int | | store | enum | | price | int | ---…

分布式调度方案:Elastic-Job

文章目录 一、什么是分布式调度二、Elastic-Job 介绍三、Elastic-Job 实战3.1 环境搭建3.1.1 本地部署3.1.2 服务器部署3.1.3 Zookeeper 管控台界面 3.2 入门案例3.3 SpringBoot 集成 Elastic-Job3.4 任务分片&#xff08;★&#xff09;3.5 Dataflow 类型调度任务 一、什么是分…

log4j 的参数配置

在Log4j 1.x版本中&#xff0c;log4j.properties文件是配置日志系统的主要方式。这个文件包含了一系列的属性设置&#xff0c;用于定义日志的行为&#xff0c;包括日志级别、Appender&#xff08;日志输出目的地&#xff09;的配置、以及Appender的布局&#xff08;Layout&…

提升LLM能力表现的四种AI代理策略

欢迎来到AI产品经理从0到1研习之旅。 “AI Agent”系列的第二篇&#xff0c;它来了&#xff01;我说过&#xff0c;AI Agent才是我最看好的&#xff08;大模型落地应用&#xff09;未来&#xff0c;嘿嘿&#xff0c;目测有很多大佬与我有相似的看法。 本文从吴恩达&#xff0…

Python | Leetcode Python题解之第401题二进制手表

题目&#xff1a; 题解&#xff1a; class Solution:def readBinaryWatch(self, turnedOn: int) -> List[str]:ans list()for i in range(1024):h, m i >> 6, i & 0x3f # 用位运算取出高 4 位和低 6 位if h < 12 and m < 60 and bin(i).count("1&…

【0326】Postgres内核之 VACUUM (FULL)构建所有要 VACUUM 的 relation(s) list(17)

上一篇: 【0325】Postgres内核之 VACUUM(FULL) 创建 BufferAccessStrategy object(16) 1. 构建 vacuum 关系表(reltaions) List 在上一篇文章中讲解了Postgres内核创建 缓冲区策略对象 ,之后初始化给全局指针变量 vac_strategy。 接下来Postgres将通过vacuum()函数的…

浙大数据结构:03-树2 List Leaves

这道题我借用了一点上一题的代码思路&#xff0c;这题考察的主要是层序遍历&#xff0c;即用队列来实现&#xff0c;当然此处我依然采用数组模拟队列来实现。 机翻 1、条件准备 map的键存下标&#xff0c;后面值分别存左右子树的下标&#xff0c;没有子树就存-1. head数组只…