fireflyCORE-RK3328主板JD4串口调试介绍

描述

串口调试

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

目前在不修改内核配置文件的情况下,建议使用ADB进行查看打印信息,调试等,参考《ADB 介绍》。

配置串口调试

由于用于串口调试的UART2与蓝牙所使用的串口复用,所以官方发布的固件无法使用串口调试。

如果使用串口调试,蓝牙就无法正常使用,需要使用到串口调试请进行如下修改:

Linux配置串口调试

配置串口调试前,首先需要《编译 Linux 固件》,然后请进行如下修改:

打开配置文件kernel/arch/arm64/boot/dts/rockchip/rk3328-core-jd4.dts。

串口调试的相关配置节点:

fiq-debugger{status="disabled";};...&uart2{dma-names="tx","rx";status="okay";};

修改为:

fiq-debugger{status="okay";};...&uart2{dma-names="tx","rx";status="disabled";};

编译内核,然后下载固件。

Android配置串口调试

配置串口调试前,首先需要《编译 Android 固件》,然后请进行如下修改:

打开配置文件kernel/arch/arm64/boot/dts/rk3328-core-jd4.dts。

串口调试的相关配置节点:

fiq-debugger{status="disabled";};...&uart_dbg{status="okay";dma-names="tx","rx";};

修改为:

fiq-debugger{status="okay";};...&uart_dbg{status="disabled";dma-names="tx","rx";};

编译内核,然后下载固件。

准备 USB 串口适配器
选择 USB 串口适配器

CORE-RK3328-JD4 的 UART 调试口默认使用1,500,000波特率和 TTL 电平。

一些串口适配器不能支持如此高的波特率。因此在购买之前,请确保它符合要求并有可用的驱动。参考在线商城上带CP2104芯片的 USB 转串口适配器。

连接适配器和调试口

用三根线将 TX/RX/GND 引脚分别连接在一起:

安卓

如果在使用某些适配器时串口控制台没有输出,可以尝试将适配器的 TX 引脚连接到开发板的 RX 引脚,适配器的 RX 引脚连接到开发板的 TX 引脚,即交换一下 TX、RX 引脚。

串口参数配置

CORE-RK3328-JD4 使用如下配置:

  • 波特率:1,500,000

  • 数据位:8

  • 停止位:1

  • 奇偶检查:无

  • 流控:无

接下来,根据操作系统的不同,为你介绍详细的操作说明。

Windows 下的串口调试
安装驱动

安装卖家推荐的 USB 串口适配器驱动。如果没有,可以检查芯片组并尝试以下驱动

  • CH340

  • PL2303

  • CP210X

提示:如果 PL2303 在 Win8 下无法工作,则可以尝试将驱动程序降级到版本 3.3.5.122 或之前。

安装驱动后,将适配器连接到主机的 USB 端口。操作系统将提示检测到新硬件。完成后,可以在设备管理器中找到新的COM端口:

安卓

 
安装工具

Windows 中有很多串口终端工具,例如 putty 和 SecureCRT。以下介绍Putty这款流行的开源软件的使用。

Putty 下载地址

下载putty.zip,解压并运行PUTTY.exe:

  1. 选择 “Connection type” 为 “Serial”。

  2. 将 “Serial line” 修改为在设备管理器中找到的 COM 端口。

  3. 设置 “Speed” 为 1500000 。

  4. 点击 “Open” 按钮。

安卓

 
Linux 下的串口调试

如果 USB 串口适配器的芯片组受 Linux 内核支持,驱动程序将自动加载。

连接串口适配器,并通过如下命令检查相应的串口设备文件:

$ ls -l /dev/ttyUSB* crw-rw---- 1 root uucp 188, 0 Apr 10 16:44 /dev/ttyUSB0

将你的 Linux 用户添加到uucp组中,以便获得访问此设备的权限(否则每次需要在命令前加sudo来运行相应命令):

sudo gpasswd -a $(whoami) uucp

用户组的更改将在注销并重新登录 Linux 后生效,或使用newgrp命令进入带有新组的 shell:

newgrpuucp

然后根据偏好,使用自己喜欢的串口控制台工具。以下介绍 picocom 和 minicom 。

picocom

picocom轻便小巧, 容易使用。

安装picocom命令:

sudoapt-getinstallpicocom

启动picocom:

$ picocom -b 1500000 /dev/ttyUSB0 picocom v3.1 port is : /dev/ttyUSB0 flowcontrol : none baudrate is : 1500000 parity is : none databits are : 8 stopbits are : 1 escape is : C-a local echo is : no noinit is : no noreset is : no hangup is : no nolock is : no send_cmd is : sz -vv receive_cmd is : rz -vv -E imap is : omap is : emap is : crcrlf,delbs, logfile is : none initstring : none exit_after is : not set exit is : no Type [C-q] [C-h] to see available commands Terminal ready

上面的信息显示Ctrl-a是转义键。 按下Ctrl-aCtrl-q将退出picocom并返回到 shell 。

minicom

安装minicom命令:

sudo apt-get install minicom

启动minicom:

$ minicom Welcome to minicom 2.7 OPTIONS: I18n Compiled on Jan 1 2014, 17:13:19. Port /dev/ttyUSB0, 15:57:00 Press CTRL-A Z for help on special keys

根据以上提示: 按Ctrl-a,然后按z(而不是Ctrl-z)调出帮助菜单:

+-------------------------------------------------------------------+ | Minicom Command Summary | | | | Commands can be called by CTRL-A| | | | 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 | +--------------------------+

选择Serialportsetup,然后按选项前面的大写字母并设置为如下所示的值:

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

注意:

  • HardwareFlowControl和SoftwareFlowControl应该设置为 No 。

  • 结束设置之后, 按ESC键回到之前的菜单, 选择Savesetupasdfl保存覆盖掉默认配置。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分