【正点原子Linux连载】第三章 RV1126开发环境搭建 摘自【正点原子】ATK-DLRV1126系统开发手册

news2024/12/23 12:44:47

1)实验平台:正点原子RV1126 Linux开发板
2)平台购买地址:https://detail.tmall.com/item.htm?id=692176265749
3)全套实验源码+手册+视频下载地址: http://www.openedv.com/thread-340252-1-1.html

第三章 RV1126开发环境搭建

3.1 rv1126的环境配置
在上章节里面我们已经安装好Ubuntu,此时的Ubuntu还是不能做开发的,因为还有很多环境和软件没有安装,所以要先安装环境,这里笔者已经把所有坑都填完了。跟着下面一步一步走就行了。
先设置Ubuntu的源
国内的环境下使用Ubuntu官方的默认源是不能配置出RV1126的开发环境,有一些包不能安装,所以我们要设置合适的源。Ubuntu官方更换源有一个很智能的操作,可以根据自己的网络位置设配合适的源,设置如下步骤:
打开设置,在左边设置栏里面找到“关于”如下图所示:
在这里插入图片描述

图3.1.1 关于设置
我们找到“关于”设置后,右边栏最后面有一个软件更新设置,接下来点击“软件设置”,弹出如下界面:
在这里插入图片描述

图3.1.2 软件更新图
图3.1.2可以看出是下载软件是在“位于中国的服务器”,此时的源链接还是不能配置RV1126开发环境,展开红色框里面,选择“其它”如下图所示:
在这里插入图片描述

图3.1.3 源服务器选择
点击成功就会出现如下图所示:
在这里插入图片描述

图3.1.4 选择下载服务器
从图3.1.4中可以看出来,有很多服务器的选择,在国内最好选择阿里源最合适。选择mirrosr.aliyun.com为阿里源。我们也可以根据自己的网络匹配最合适的源点击“选择最佳服务器”就可以根据网络合适的源。输入密码就可以直接更新源。最后还要更新缓存,直接点击更新即可。更新缓存的还要另一种方法用命令更新,命令如下:
sudo apt update
sudo apt upgrade
SDK编译环境搭建所依赖的软件包
安装的命令如下所示:

sudo apt-get install  device-tree-compiler git-core u-boot-tools mtools parted libudev-dev 
sudo apt-get install libusb-1.0-0-dev autoconf autotools-dev libsigsegv2 m4 intltool libdrm-dev
sudo apt-get install curl sed make binutils build-essential gcc g++ bash patch gzip gawk bzip2
sudo apt-get install perl tar cpio python unzip rsync file bc wget libncurses5 libglib2.0-dev 
sudo apt-get install libgtk2.0-dev libglade2-dev cvs git mercurial openssh-client subversion 
sudo apt-get install asciidoc w3m dblatex graphviz  libc6:i386 libssl-dev expect fakeroot cmake 
sudo apt-get install flex bison liblz4-tool libtool keychain net-tools adb lib32gcc-7-dev g++-7 
sudo apt-get install libstdc++-7-dev libncurses5-dev libncursesw5-dev openssh-server

注意:本来是写成一行命令安装的,想到有些人的PDF会自带换行符,所以就分成8条命令进行安装。
3.2 Ubuntu和Windows文件互传
在开发的过程中会频繁的在Windows和Ubuntu下进行文件传输,比如在Windwos下进行代码编写,然后将编写好的代码拿到Ubuntu下进行编译。Windows和Ubuntu下的文件互传我们需要使用FTP服务(安装vmware tools后可以直接拷贝文件,这种方法不推荐使用),设置方法如下:
1、开启Ubuntu下的FTP服务
打开Ubuntu的终端窗口,然后执行如下命令来安装FTP服务:
sudo apt-get install vsftpd
等待软件自动安装,安装完成以后使用如下VI命令打开/etc/vsftpd.conf,命令如下:
sudo vi /etc/vsftpd.conf
打开以后vsftpd.conf文件以后找到如下两行:
local_enable=YES
write_enable=YES
确保上面两行前面没有“#”,有的话就取消掉,完成以后如图2.5.1所示:
在这里插入图片描述

图3.2.1 vsftpd.conf修改
修改完vsftpd.conf以后保存退出,使用如下命令重启FTP服务:
sudo /etc/init.d/vsftpd restart
2、Windows下FTP客户端安装
Windows下FTP客户端我们使用FileZilla,这是个免费的FTP客户端软件,可以在FileZilla官网下载,下载地址如下:https://www.filezilla.cn/download/client,下载界面如图2.5.2所示:
在这里插入图片描述

图3.2.2 FileZilla软件下载
如果是32位电脑就选择32位版本,64位电脑就选择64位版本,我们已经下载好了64位版本的FileZilla并放到开发板光盘中了,路径为: 开发板光盘A-基础资料4、软件 FileZilla_3.60.1_win64-setup.exe,双击安装即可。安装完成以后找到安装目录,找到图标,然后发送图标快捷方式到桌面,完成以后如图3.2.3所示:
在这里插入图片描述

图3.2.3 FileZilla图标
打开FileZilla软件,界面如图3.2.4所示:
在这里插入图片描述

图3.2.4 FileZilla软件界面
3、FileZilla软件设置
Ubuntu作为FTP服务器,FileZilla作为FTP客户端,客户端肯定要连接到服务器上,打开站点管理器,点击:文件->站点管理器,打开以后如图3.2.5所示:
在这里插入图片描述

图3.2.5 站点管理器
点击图3.2.5中的“新站点(N)”按钮来创建站点,新建站点以后就会在“我的站点”下出现新建的这个站点,站点的名称可以自行修改,比如我将新的站点命名为“Ubuntu”如图3.2.6所示:
在这里插入图片描述

图3.2.6 新建站点
选中新创建的“Ubuntu”站点,然后对站点的“常规”进行设置,设置如图3.2.7所示:
在这里插入图片描述

图3.2.7 站点设置
按照图3.2.7中设置好以后,点击“连接”按钮,第一次连接可能会弹出提示是否保存密码的对话框,点击确定即可。连接成功以后如图3.2.8所示:
在这里插入图片描述

图3.2.8 连接成功
连接成功以后如图3.2.8所示,其中左边就是Windows文件目录,右边是Ubuntu文件目录,默认进入用户根目录下(比如我电脑的“/home/alientek”)。但是注意观察在图3.2.8中Ubuntu文件目录下的中文目录都是乱码的,这是因为编码方式没有选对,先断开连接,点击:服务器(S)->断开连接,然后打开站点管理器,选中要设置的站点“Ubuntu”,选择“字符集”,设置如图3.2.9所示:
在这里插入图片描述

图3.2.9 设置字符集
按照图3.2.9设置好字符集以后重新连接到FTP服务器上,重新链接到FTP服务器以后Ubuntu下的文件目录中文显示就正常了,如图3.2.10所示:
在这里插入图片描述

图3.2.10 Ubuntu下文件目录中文显示正常
如果要将Windows下的文件或文件夹拷贝到Ubuntu中,只需要在图3.2.10中左侧的Windows区域选中要拷贝的文件或者文件夹,然后直接拖到右侧的Ubuntu中指定的目录即可。将Ubuntu中的文件或者文件夹拷贝到Windows中也是直接拖放。
3.3 Visual Studio Code软件的安装和使用
3.3.1 Visual Studio Code的安装
Visual Stuio Code是一个编辑器,可以用来编写代码,Visual Studio Sode本教程以后就简称为VSCode,VSCode是微软出的一款免费编辑器。VSCode有Windows、Linux和macOS三个版本的,是一个跨平台的编辑器。VSCode下载地址是:https://code.visualstudio.com/Download, 下载界面如图3.3.1 所示:
在这里插入图片描述

图3.3.1.1 VSCode下载界面
在图3.3.1.1中下载自己想要的版本,本教程需要Windows和Linux这两个版本,所以下载这两个即可,我们已经下载好并放入了开发板光盘中,路径为:开发板光盘A-基础资料4、软件Visual Studio Code。
1、Windows版本安装
Windows版本的安装和容易,和其他Windows一样,双击.exe安装包,然后一路“下一步”即可,安装完成以后在桌面上就会有VSCode的图标,如图3.3.1.2所示:
在这里插入图片描述

图3.3.1.2 VSCode图标
双击图3.3.1.2打开VSCode,默认界面如图3.3.1.3所示:
在这里插入图片描述

图3.3.1.3 VSCode默认界面
2、Linux版本安装
我们有时候也需要在Ubuntu下阅读代码,所以还需要在Ubuntu下安装VSCode。Linux下的VSCode安装包我们也放到了开发板光盘中, 将开发板光盘中的.deb软件包拷贝到Ubuntu系统中,然后使用如下命令安装:
sudo dpkg -i code_1.72.1-1665423861_amd64.deb
等待安装完成,如图3.3.1.4所示:
在这里插入图片描述

图3.3.1.4 VSCode安装过程
安装完成以后在终端下运行“code”命令即可打开,如下所示:
code
结果如下图所示:

运行成功后会弹出如下所示:

在这里插入图片描述

图4.5.1.9 Linux下的VSCode
可以看出Linux下的VSCode和Windows下的基本是一样的,所以使用方法也是一样的。
3.3.2 Visual Studio Code插件的安装
VSCode支持多种语言,比如C/C++、Python、C#等等,本教程我们主要用来编写C/C++程序的,所以需要安装C/C++的扩展包,扩展包安装很简单,如图3.3.2.1所示:
在这里插入图片描述

图3.3.2.1 VSCode插件安装
我们需要按照的插件有下面几个:
1)、C/C++,这个肯定是必须的。
2)、C/C++ Snippets,即C/C++重用代码块。
3)、C/C++ Advanced Lint,即C/C++静态检测 。
4)、Code Runner,即代码运行。
5)、Include AutoComplete,即自动头文件包含。
6)、Rainbow Brackets,彩虹花括号,有助于阅读代码。
7)、One Dark Pro,VSCode的主题。
8)、GBKtoUTF8,将GBK转换为UTF8。
9)、ARM,即支持ARM汇编语法高亮显示。
10)、Chinese(Simplified),即中文环境。
11)、vscode-icons,VSCode图标插件,主要是资源管理器下各个文件夹的图标。
12)、compareit,比较插件,可以用于比较两个文件的差异。
13)、DeviceTree,设备树语法插件。
14)、TabNine,一款AI自动补全插件,强烈推荐,谁用谁知道!
15)、Remote-SSH,可以远程连接到别的vscode上的软件。
安装完成以后重新打开VSCode,如果要查看已经安装好的插件,可以按照图3.3.2.2所示方法查看:
在这里插入图片描述

图3.3.2.2 显示已安装的插件
3.3.3 vscode远程Ubuntu系统下的vscode
ATK-DLRV1126的开发环境必须在linux系统下进行开发。在开发的时候需要切换到Ubuntu系统,工作写文档的时候就切换回Windows系统,这样是很麻烦的,我们可以使用vscode的远程功能插件“Remote-SSH”,此插件可以进行远程开发。使用此插件前有两个前提:本地端、远程端需要安装vscode、本地和远程网络可以相互ping通(我们安装的是虚拟机,使用桥接网络即可实现)。首先打开Windows下的vscode。点击左下角绿色图标打开远程窗口,如下图所示:
在这里插入图片描述

图3.3.3.1 打开远程窗口
打开远程窗口,就会出现如下图所示:
在这里插入图片描述

图3.3.3.2 远程功能的选择
选择图3.3.3.2中的红色框“Connect to Host”功能,如下图所示:
在这里插入图片描述

图3.3.3.3 添加SSH的配置
选择图3.3.3.3中的红色框“Add New SSH Host”功能。如下图所示:
在这里插入图片描述

图3.3.3.4 添加新的远程连接
根据图中的红色框提示信息输入远程电脑的用户名和IP地址,这边笔者的用户名和IP地址分别为:alientek和192.168.6.208。输入如下命令即可连接:
ssh alientek@192.168.6.208 -A
输入连接命令后,按回车键,如下图所示:
在这里插入图片描述

图3.3.3.5 选择保存配置文件
图3.3.3.5中,主要是要保存刚刚输入的配置到那个文件下,通常选择红色框“C:\Users\liang.ssh\config”的路径文件。配置完成后,就会弹出如下图所示的小框:
在这里插入图片描述

图3.3.3.6 连接远程端的vscode
点击图3.3.3…6中的右下角“Connect”,即可进入连接状态,如下图所示:
在这里插入图片描述

图3.3.3.7 选择远程电脑的系统
图3.3.3.7中,开始进行远程连接配置,首先要选择远程电脑的系统是什么,这边我们连接的是Ubuntu,所以选择“Linux”。左下角开始显示“正在打开远程”,选择完,就会出现如下图所示:
在这里插入图片描述

图3.3.3.8 输入远程登录密码
按照图3.3.3.8中,输入远程端的电脑密码,按回车键,就能弹出新的vscode窗口,显示连接成功,如下图所示:
在这里插入图片描述

图3.3.3.9 远程到192.168.6.208 Ubuntu系统下的vscode
图3.3.3.9中的左下角里面,已经远程Ubuntu系统了。
3.3.4 vscode的使用
本小节主要是教大家如何通过vscode远程的方式,打开ATK-DLRV1126开发板的源码阅读和编译。SDK的源码目录在开发板光盘A-基础资料01、程序源码01、正点原子SDK源码atk-rv1126_linux_release_v1.1_2022127.tar.bz2,拷贝此文件到Ubuntu,解压到Ubuntu下。
根据3.3.3小节使用vscode远程连接Ubuntu系统的vscode,点击文件,进入下所示:
在这里插入图片描述

图3.3.4.1 打开文件夹
点击图3.3.4.1中的“打开文件夹”如下图所示:
在这里插入图片描述

图3.3.4.2 选择SDK包的文件夹
笔者把SDK包的源码目录解压到“/home/alientek/atk-rv1126”所以我们在输入框中输入此路径,点击“确认”,然后就要我们输入密码,输入密码按回车键,进入如下图所示:
在这里插入图片描述

图3.3.4.3 信任文件夹
图3.3.4.3中我们选择是信任文件夹,就会有如下图所示:
在这里插入图片描述

图3.3.4.4 远程浏览Ubuntu系统下的SDK代码
此时我们就可以使用Windows系统下的vscode阅读Ubuntu下的代码了,不用切换系统,还能打开终端进行SDK包的源码编译。

3.4 CH340串口驱动安装
我们一般在Windwos下通过串口来调试程序,或者使用串口作为终端,ATK1126开发板使用CH340这个芯片实现了USB转串口功能,CH340是一枚江苏沁恒生产的国产芯片,稳定性还是很不错的,这里我们要多多支持国产嘛。
先通过USB线将开发板的串口和电脑连接起来起来,连接方式如图3.4.1:
在这里插入图片描述

图3.4.1 开发板串口连接方式
CH340是需要安装驱动的,驱动我们已经放到了开发板光盘中,路径:开发板光盘A-基础资料4、软件CH340驱动(USB串口驱动)_XP_WIN7共用SETUP.EXE,,双击SETUP.EXE,打开如图4.5.2所示安装界面:
在这里插入图片描述

图3.4.2 CH340驱动安装
点击图3.4.2中的“安装”按钮开始安装驱动,等待驱动安装完成,驱动安装完成以后会有如图3.4.3所示提示:
在这里插入图片描述

图3.4.3 驱动安装成功
点击图3.4.3中的“确定”按钮退出安装,重新插拔一下串口线。打开设备管理器,打开方式是在Windows上的“此电脑”图标上点击鼠标右键,选择“管理”,如图3.4.4
在这里插入图片描述

图3.4.4 打开管理窗口
打开以后的计算机管理器如图3.4.5所示:
在这里插入图片描述

图3.4.5计算机管理器
在图3.4.5中,点击左侧“计算机管理(本地)”中的“设备管理器”,在右侧选中“端口(COM和LPT)”,如图3.4.6所示:
在这里插入图片描述

图3.4.6 设备管理器
如果在图3.4.6中找到了有“USB-SERIAL CH340”字样的端口设备就说明CH340驱动成功了,一定要用USB线将开发板的串口和电脑连接起来!!!!
3.5 MobaXterm软件安装和使用
3.5.1 MobaXterm软件安装
MobaXterm是一款终端软件,功能强大而且免费(也有收费版)!我试用了一下,用起来非常舒服!在这里推荐大家使用此软件作为终端调试软件,MobaXterm软件在其官网下载即可,地址为https://mobaxterm.mobatek.net/,如图3.5.1.1所示:
在这里插入图片描述

图3.5.1.1 MobaXterm官网
点击图3.5.1.1中的“Download”按钮即可打开下载界面,如图3.5.1.2所示:
在这里插入图片描述

图3.5.1.2 下载界面
从图3.5.1.2可以看出,一共有两个版本,左侧为免费的Home Edition版本,右侧为付费的Professional Edition版本。毫无疑问,我们肯定选择免费的Home Edition版,点击下方的“Download now”,打开下载界面,如图3.5.1.3所示:
在这里插入图片描述

图3.5.1.3 下载界面
可以看出,当前的版本号为v12.3,点击右侧按钮下载安装包。安装包已经放到了开发板光盘中,路径为:开发板光盘->3、软件->MobaXterm_Installer_v12.3.zip。打开此压缩包,然后双击MobaXterm_installer_12.3.msi进行安装,安装方法很简单,一步一步进行即可。安装完成以后就会在桌面出现MobaXterm图标,如图3.5.1.4所示,如果桌面没有的话就自行添加。
在这里插入图片描述

图3.5.1.4 MobaXterm软件图标
3.5.2 MobaXterm软件使用
双击MobXterm图标,打开此软件,软件界面如图3.5.2.1所示:
在这里插入图片描述

图3.5.2.1 MobaXterm软件主界面
点击菜单栏中的“Sessions->New session”按钮,打开新建会话窗口,如图3.5.2.2所示:
在这里插入图片描述

图3.5.2.2 新建会话
打开以后的新建会话窗口如图3.5.2.3所示:
在这里插入图片描述

图3.5.2.3 新建会话窗口
从图3.5.2.3可以看出, MobaXterm软件支持很多种协议,比如SSH、Telnet、Rsh、Xdmcp、RDP、VNC、FTP、SFTP、Serial等等,我们现在就讲解一下如何建立Serial连接,也就是串口连接,因为我们使用MobaXterm的主要目的就是作为串口终端使用。点击图3.5.2.3中的“Serial”按钮,打开串口设置界面,如图3.5.2.4所示:
在这里插入图片描述

图3.5.2.4 设置串口
打开串口设置窗口以后先选择要设置的串口号,因此要先用串口线将开发板连接到电脑上上,然后设置波特率为1500000(根据自己实际需要设置),完成以后如图3.5.2.5所示:
在这里插入图片描述

图3.5.2.5 设置串口及其波特率
MobaXterm软件可以自动识别串口,因此我们直接下拉选择即可,波特率也是同样的设置方式,下拉选择即可。完了以后还要设置串口的其他功能,下方一共有三个设置选项卡,如图3.5.2.6所示:
在这里插入图片描述

图3.5.2.6 串口其他设置选项
点击Advanced Serial settings选项卡,设置串口的其他功能,比如串口引擎、数据位、停止位、奇偶校验和硬件流控等,按照图3.5.2.7所示设置即可:
在这里插入图片描述

图3.5.2.7 串口设置
如果要设置终端相关的功能的话点击“Terminal settings”即可,比如终端字体以及字体大小等。设置完成以后点击下方的“OK”按钮即可。串口设置完成以后就会打开对应的终端窗口,如图3.5.2.8所示:
在这里插入图片描述

图3.5.2.8 成功建立的串口终端
如果开发板里面烧写了系统的话就会在终端中打印出系统启动的log信息,如图3.5.2.9所示:
在这里插入图片描述

图3.5.2.9 MobaXterm作为串口终端
可以看出,MobaXterm作为串口终端还是非常漂亮的,结合了SecureCRT的功能强大与Putty的免费。推荐大家使用MobaXterm作为串口终端使用,当然了,MobaXterm也可以作为其他终端软件,这里大家就自行摸索吧。
3.6 ADB的安装和使用
3.6.1 ADB命令安装
ADB命令的全称为“Android Debug Bridge”,从英文中看出主要是用作安卓的调试工具。ADB命令在嵌入式开发中越来越常用了,在RV1126上OTG默认当作ADB功能(可以做复用其它功能),所以我们要在Windows上安装ADB工具(linux 已经通过命令安装成功了),安装包已经放到了开发板光盘,路径为:开发板光盘A-基础资料4、软件 platform-tools_r33.0.3-windows.zip。解压到自定义的安装目录。接着我们在Windows上按“win”+“R”组合件打开运行,结果如下所示:
在这里插入图片描述

图3.6.1.1 Windows10的运行
打开运行后,输入sysdm.cpl,按回车就会打开系统属性,如下图所示:
在这里插入图片描述

图3.6.1.2 系统属性
点击图3.6.1.2中的“高级”,进入环境变量设置界面,如下图所示:
在这里插入图片描述

图3.6.1.3环境变量
接着我们可以把ADB的路径添加到系统变量里面,根据上图的步骤操作进入“Path”变量路径添加,如下图所示:
在这里插入图片描述

图3.6.1.4 Path编辑环境变量
根据上图3.6.1.4步骤把ADB的路径添加到Path系统环境变量里面(最好要点击两次确认),这里笔者的路径为:C:\Users\ALIENTEK\Downloads\platform-tools_r33.0.3-windows\platform-tools。运行CMD终端,输入命令进行检验是否安装成功。命令如下所示:
adb --version
显示结果如下所示:
在这里插入图片描述

图3.6.1.5 adb版本验证
3.6.2 ADB命令使用
这里笔者只列出ADB命令在嵌入式Linux下一些常用命令(adb命令在Windows和Linux使用方法都是一样的),这里就使用结合ATK-DLRV1126开发板和创建好的Ubuntu系统进行测试。首先我们先启动开发板(如果开发板没有系统请参考3.7小节进行烧录),用USB Type-C线将开发板的USB OTG接口与电脑连接起来,连接方式如图所示:
在这里插入图片描述

图3.6.2.1 OTG连接方式
默认情况下,USB会连接到Windwos下,我们需要将USB连接到Ubuntu,所以需要设置一下VMware,WMware右下角会有当前电脑所有连接的USB设备,鼠标放上去以后会显示每个USB设备的名字,我们找到含有“Fuzhou Rockchip Android ADB Interface”字样的USB设备,如图3.6.2.2所示:
在这里插入图片描述

图3.6.2.2 ATK-DLRV1126 USB ADB接口
图3.6.2.2中第二个USB设备就是ATK-DLRV1126的ADB接口,此时图标是灰色的,说明并没有连接到Ubuntu下,需要我们进行设置,鼠标放到图3.6.2.2中USB ADB设备上,比如此时我的电脑就是第二个图标,鼠标放上去以后点击鼠标右键,结果如图3.6.2.3所示:
在这里插入图片描述

图3.6.2.3 ADB设备连接到虚拟机
点击图3.6.2.3中的“连接”按钮,此时USB ADB就会断开与主机(Windows)的连接,从而连接到虚拟机(Ubuntu)上。连接成功以后对应的USB图标颜色就会变深,如图3.6.2.4所示:
在这里插入图片描述

图3.6.2.4 ADB设备连接到虚拟机
连接后就可以使用ADB命令进行测试。ADB命令的格式要求,如下文字所示:
adb [-d|-e|-s ]
-d:指定当前唯一通过USB 连接的Android 设备为命令目标。
-e:指定当前唯一运行的模拟器为命令目标。
-s < serialNumber >:指定相应serialNumber 号的设备/模拟器为命令目标。
command:对所需要设备执行命令。
adb帮助查看
adb help
此命令查看ADB帮助。结果如下图所示:
在这里插入图片描述

图3.6.2.5 adb帮助命令
网络连接设备
adb connect
注意:表示要连接的设备,可以IP地址,比如: adb connect 192.168.6.118。(不建议用网络连接,最好使用OTG连接,把OTG和电脑连接上系统会自动连接)如果使用USB当作ADB连接系统会自动连接的,不能卸载。连接如下图所示:
在这里插入图片描述

图3.6.2.6 adb网络连接设备
查看连接设备
adb devices
此命令列出当前和计算机连接的ADB设备信息。结果如下图所示:
在这里插入图片描述

图3.6.2.7 ADB连接设备
图3.6.2.3中看出有两个连接设备,192.168.6.118:5555是通过网络连接的ADB设备。336398dc82d8c3a5是通过USB连接的设备,device表示已经连接上。
进入设备的shell终端
adb -s shell
比如:adb -s 336398dc82d8c3a5 shell进入336398dc82d8c3a5设备的shell终端里。如果只有一个设备可以直接使用adb shell。进入终端后可以当作普通的终端设备操作开发板(相对于连接上串口),退出终端可以直接输入exit即可结束设备终端操作,返回Ubuntu系统的终端。使用结果如下所示:
在这里插入图片描述

图3.6.2.8 adb shell终端
ADB网络断开连接
adb disconnect
比如adb disconnect 192.168.6.118:5555,断开网络设备192.168.6.118:5555。结果如下所示:
在这里插入图片描述

图3.6.2.9 断开ADB连接
拷贝文件到开发板
adb -s push file /oem/
把test文件拷贝到“/oem”目录下,比如:adb -s 336398dc82d8c3a5 push test /oem/。操作结果如下所示:
在这里插入图片描述

图3.6.2.10 adb拷贝文件
把文件拷贝到PC端
adb -s pull /oem/test ./
把开发板里的“/oem/test”文件拷贝到当前路径里,比如:adb -s 192.168.6.118:5555 pull /oem/test ./ 。结果如下所示:
在这里插入图片描述

图3.6.2.11 adb拷贝文件
当使用adb devices列出只有一个连接设备的时候,可以不用加-s < serialNumber >指定设备,默认就会使用设备。
3.7 瑞芯微开发工具的安装和使用
3.7.1 Rockchip烧录驱动的安装
瑞芯微提供了RKDevTool上位机烧录工具,此工具只能在Windows系统下运行,运行前要先安装驱动文件。文件的路径为:开发板光盘A-基础资料04、软件DriverAssitant_v5.0.zip,解压此文件。打开解压后的文件目录进入DriverAssitant_v5.0\DriverAssitant_v5.0目录。进入的目录如下图所示:
在这里插入图片描述

图3.7.1.1 DriverAssitant_v5.0目录
双击“DriverInstall.exe”就弹出一个节目点击驱动安装的按键,直接点击安装即可。结果如下所示:
在这里插入图片描述

图3.7.1.2 瑞芯微烧录驱动安装
接着我们就可以使用RKDevTool软件了。文件路径为:开发板光盘A-基础资料04、软件RKDevTool_Release_v2.81.zip,解压此文件。打开解压后的文件夹进入到如下界面:
在这里插入图片描述

图3.7.1.3 瑞芯微开发工具的文件图
点击图中3.7.1.3RKDevTool.exe文件即可运行。运行结果如下所示:
在这里插入图片描述

图3.7.1.4 瑞芯微开发工具图
3.7.2 Rockchip烧录工具使用
这里笔者只是简单说下如何使用烧录工具烧录ATK-DLRV1126开发板的出厂源码,如果想使用更多的功能请查看图3.7.1.3中的官方使用文档。在分区配置空间处右击鼠标,进入选择“导入配置”,如下图所示:
在这里插入图片描述

图3.7.2.1 导入配置选项图
点击“导入配置”后就会弹出一个文件选择,支持的文件类型为“.cfg”。文件路径为:开发板光盘A-基础资料09、系统镜像01、出厂系统SDK镜像 ATK-DLRV1126出厂系统配置.cfg。导入完成后如下图所示:
在这里插入图片描述

图3.7.2.2 导入配置选项图
在图中3.7.2.2已经导入配置选项,可以看出来一共有9个烧录选项(为啥有9个选项是根据parameter决定的)。“方框”里面打勾表示烧录,“地址”表示烧录到emmc地址,“名字”表示分区名字,“路径”表示要烧录到此选项的文件,“…”表示修改路径中的文件。图中的路径是笔者电脑上的,所以各位需要点击“…”去更改每一个选项的文件路径。每个烧录选项对应官方出厂系统的文件如下表所示:
在这里插入图片描述

表3.7.2.1 烧录镜像文件表
设置好自己的文件路径(设置好了记得导出配置选择,这样做不用每次进行烧录的时候选择文件,导出方法看图3.7.2.1)。
MASKROM模式烧录
接上开发板电源和OTG接口再上电。接着按住“UPDATE”健,再按一下复位键进入“MASKROM”状态(最好多按几次复位键,有时候会误触)。操作结果如下图所示:
在这里插入图片描述

图3.7.2.3 ATK-DLRV1126 MASKROM烧录连接图
进入“MASKROM”状态如下图所示:
在这里插入图片描述

图3.7.2.4 进入MASKROM模式图
接着点击执行即可进行烧录,烧录过程如下图所示:
在这里插入图片描述

图3.7.2.5 烧录状态图
图3.7.2.5中已经开始烧录了,烧录完成系统会自动启动。当开发板没有系统的时候,使用“MASKROM”模式进行出厂系统烧录。
当烧录失败说明你的OTG接口连接到Ubuntu系统里,如图所示:
在这里插入图片描述

图3.7.2.6 烧录固件失败
LOADER模式烧录
接上开发板电源和OTG接口再上电。接着按住“RECOVERY”健,再按一下复位键进入“LOADER”状态(最好多按几次复位键,有时候会误触)。LOADER模式是使用uboot进行烧录的,所以要进入LOADER模式开发板必须能启动到uboot才能烧录。如果开发板是没有系统的会自动跳转到MASKROM模式,这边笔者已经通过MASKROM模式烧录了系统,所以可以进入LOADER模式,进入“LOADER”状态如下图所示:
在这里插入图片描述

图3.7.2.7进入LOADER烧录图
接着点击执行即可进行烧录,烧录过程如下图所示:
在这里插入图片描述

图3.7.2.8 LOADER烧录状态图
烧录完成后,系统会自动启动。
3.8 Update.img包的烧录
在出厂系统的SDK镜像里面有一个update.img镜像,此镜像是根据parameter.txt文件生成一个镜像,把里面需要的文件全部打包到update.img里面。在Windows系统下烧录update.img,此包的烧录支持MASKROM模式和LOADER模式。打开Windows的烧录工具,点击“升级固件”,结果如下图所示:
在这里插入图片描述

图3.9.1 升级固件图
在上图中点击“固件”,即可加载update.img镜像,结果如下所示:
在这里插入图片描述

图3.8.2 加载update固件
加载成功后如下图所示:
在这里插入图片描述

图3.8.3 成功加载固件
有了固件后,我们可以点击“升级”把加载的update.img烧录到emmc里面去,点击“擦除”Flash也可以把整个EMMC擦除。必须是加载固件后才能做这些操作。
3.9 Ubuntu系统下烧录ATK-DLRV1126系统
本章节是通过SDK包自带的烧录工具进行烧录,先看完第4章节。在第4章节里面已经编译出整个SDK包所需要的文件了,先进入“LOADER”或者“MASKROM”模式,把OTG接口挂载到Ubuntu系统下,再跳转到源码目录下运行以下代码进行烧录:
sudo ./rkflash.sh //运行此命令是整个SDK烧录
运行结果如下所示:
在这里插入图片描述

图3.9.1 烧录官方SDK包
也可以运行rkflash.sh脚本进行单独烧录,开发板要先进入LOADER模式下(MASKROM单独烧录很麻烦要先烧录loader,所以直接进入loader模式就行了)。因为这个模式已经启动到uboot,在烧录的时候可以使用uboot命令单独烧录到对应的分区。命令如下表格所示:
在这里插入图片描述

3.10 安装交叉编译工具链
3.10.1 拷贝交叉编译工具链
编译SDK是比较花时间的,为了方便大家不需要编译SDK就能直接编译AI例程来进行测试,正点原子专门定制了一套交叉编译工具链,安装包位于开发板光盘A 05、开发工具 01、交叉编译工具 atk-dlrv1126-toolchain-arm-buildroot-linux-gnueabihf-x86_64.run,如下图3.10.1所示:
注意:此交叉编译工具链后期还会更新,还不是最终版,更新的目的就是为了适配更多的例程,如需重新安装,直接卸载再安装最新版本的即可,安装的过程很简单。
在这里插入图片描述

图3.2.1 叉编译工具链
将atk-dlrv1126-toolchain-arm-buildroot-linux-gnueabihf-x86_64.run拷贝到Ubuntu下,如下图3.2.2所示,笔者拷贝到了Ubuntu的家目录下了。
在这里插入图片描述

图3.2.12拷贝好的叉编译工具链
拷贝完成后,记得用ls -l命令检查文件的属性是否是可执行的,上图中,笔者拷贝完成后,此文件已经具有可执行权限,可直接运行,若检查没有可执行权限,记得执行如下命令设置为可执行权限。
chmod a+x atk-dlrv1126-toolchain-arm-buildroot-linux-gnueabihf-x86_64.run
3.2.2 安装交叉编译工具链
执行如下命令直接安装交叉编译工具链,安装过程如下图3.2.2.1所示。
./atk-dlrv1126-toolchain-arm-buildroot-linux-gnueabihf-x86_64.run
当提示“Enter target directory for toolchain (default: /opt/atk-dlrv1126-toolchain):”时,表示是否选择默认安装在/opt/atk-dlrv1126-toolchain目录下,建议直接选择默认安装路径,直接按下回车键即可。当提示“You are about to install the toolchain to “/opt/atk-dlrv1126-toolchain”. Proceed[Y/n]?”时,直接按下“Y”即可。当弹出提示“$ . export PATH=$PATH:/opt/atk-dlrv1126-toolchain/usr/bin”时,表示已经安装完成。
在这里插入图片描述

图3.2.2.1 安装叉编译工具链
当安装完成后,在/opt目录下就可以看到安装目录,如下图3.2.2.2所示,atk-dlrv1126-toolchain下就是本次安装的交叉编译工具链的目录,而st目录是我以前安装STM32MP157的交叉编译工具链的目录。
在这里插入图片描述

图3.2.2.2叉编译工具链安装目录
可以进入/opt/atk-dlrv1126-toolchain/bin目录下,大概看一下,如下图3.2.2.3所示有不少arm-linux-gnueabihf-*文件,说明交叉编译工具链初步安装完成,若要确定是否已经成功安装,我们可以尝试编译一个AI例程即可。
在这里插入图片描述

图3.2.2.2叉编译工具链安装目录

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

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

相关文章

Gartner发布2022云Web应用程序和API保护魔力象限

8月30日&#xff0c;知名咨询机构Gartner发布2022云Web应用程序和API保护魔力象限。当前&#xff0c;云Web应用程序和API保护市场迅速增长。 Gartner预测&#xff0c;到 2024 年&#xff0c;70%实施多云战略的企业将青睐云 Web 应用程序和API保护平台 &#xff08;WAAP&#x…

26岁从财务转行软件测试,4年沉淀我已经是25k的测开工程师...

此文绝对不是喂鸡汤&#xff0c;而是告诉你实实在在的转行办法。有点长&#xff0c;请细看有些人会轻松上岸。有些人会挣扎着上岸。有些人会淹死在水里。我属于挣扎着上岸的。我原来是做财务方面的&#xff0c;后面自学转行做了软测程序员&#xff0c;从事软件测试工作4年&…

SpringMVC之简介

看到SpringMVC这个名字我们会发现其中包含Spring,那么SpringMVC和Spring之间的会有关系么?答案是肯定有&#xff0c;SpringMVC隶属于Spring&#xff0c;是Spring技术中的一部分。那么SpringMVC到底是用来做什么的呢? 回想web阶段&#xff0c;我们学习过Servlet,而SpringMVC与…

Atlas中间件快速入门(实现数据库读写分离)

一、Atlas简介 1 2 3 41. Atlas是由 Qihoo 360公司Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目 2. 它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上&#xff0c;修改了大量bug&#xff0c;添加了很多功能特性 3. 目前该项目在360公司内部得到了广泛应…

屏幕录制没有声音怎么办?看看你有没有打开这个设置

电脑是我们学习和办公不可或缺的工具&#xff0c;有时我们需要使用工具对电脑屏幕进行录制。但很多小伙伴录制的电脑录屏文件只有画面没有声音。屏幕录制没有声音怎么办&#xff1f;不用慌&#xff01;有可能你只是忘了在录制前打开这个设置。今天小编就来教大家录制前需要开启…

公司企业如何制作微信小程序店铺?

​微信小程序除了可以为公司企业充当展示官网之外&#xff0c;有些主打线上销售商品的公司企业也会借助小程序来卖货&#xff0c;那就是我们常说的微信小程序店铺。那么公司企业如何制作微信小程序店铺&#xff1f;下面给大家做个讲解。 一、注册小程序账号 微信小程序店铺也属…

有效管理 Kubernetes 的流行解决方案,7 款 DevOps 工具管理 Kubernetes ,集群管理更加的轻松顺畅和高效

有效管理 Kubernetes 的流行解决方案&#xff0c;7 款 DevOps 工具管理 Kubernetes &#xff0c;集群管理更加的轻松顺畅和高效。 在新兴的云原生环境中&#xff0c;Kubernetes无处不在。它已成为编排容器的标准。但是&#xff0c;管理多个 Kubernetes 集群&#xff08;必须以…

前端整理 —— 前端安全

1. XSS&#xff08;跨站脚本攻击&#xff09; 什么是XSS 是一种代码注入攻击。攻击者通过在目标网站上注入恶意脚本&#xff0c;使之在用户的浏览器上运行。利用这些恶意脚本&#xff0c;攻击者可获取用户的敏感信息如Cookie、SessionID等&#xff0c;进而危害数据安全常见类型…

【并发编程十四】c++原子操作(2)——实现自旋锁

【并发编程十四】c原子操作&#xff08;2&#xff09;——实现自旋锁一、自旋锁简介二、使用自旋锁三、不使用自旋锁四、分析简介 在介绍完原子操作&#xff0c;我们这篇使用c提供的原子操作&#xff0c;实现一个自旋锁&#xff0c;并加以利用。 原子操作参见【并发编程十三】…

什么是shell?shell在Linux内怎么编写脚本?

目录 一、概念 二、简单创建脚本 三、shell语法 1.变量 2.环境变量 3.参数变量 4.条件 5.控制结构 if语句 elif语句 for语句 一、概念 什么是shell? shell是一个作为用户与Linux系统间接口的程序&#xff0c;它允许用户向操作系统输入需要执行的命令。 下图显示了sh…

kali之setoolkit使用

kali之setoolkit使用 1 搭建钓鱼网站 钓鱼网站是黑客常用的用于盗取目标用户名与账号的方式&#xff0c;今天主要介绍setoolkit来制作钓鱼网站 setoolkit是kali下的社会工程学工具集。 ①进入setoolkit 命令行输入&#xff1a; setoolkit②选择社会工程学攻击 - 网络攻击 - …

基于Android的二手车交易系统

需求信息&#xff1a; 1、登录功能:用户可以注册登录&#xff0c;管理员可以给销售人员权限&#xff0c;所以销售人员只能登陆。 2、维护车辆信息:主要实现的是客户添加修改查询删除车辆信息&#xff0c;然后发布车辆需要提交&#xff0c;提交给管理员&#xff0c;管理员审核了…

四、Executor执行器【无标题】

Executor Executor 接口定义了数据库操作的基本方法&#xff0c;其中 query*() 方法、update() 方法、flushStatement() 方法是执行 SQL 语句的基础方法&#xff0c;commit() 方法、rollback() 方法以及 getTransaction() 方法与事务的提交/回滚相关&#xff0c;clearLocalCac…

Python快速入门

最近在很多地方都可以看到Python的身影&#xff0c;尤其在人工智能等科学领域&#xff0c;其丰富的科学计算等方面类库无比强大。很多身边的哥们也提到Python非常的简洁方便&#xff0c;比如用Django搭建一个见得网站只需要半天时间即可&#xff0c;因此也吸引了我不小的兴趣。…

二叉树:删除二叉搜索树中的节点

删除二叉搜索树中的结点 一、题目描述 给定一个二叉搜索树的根节点 root 和一个值 key&#xff0c;删除二叉搜索树中的 key 对应的节点&#xff0c;并保证二叉搜索树的性质不变。返回二叉搜索树&#xff08;有可能被更新&#xff09;的根节点的引用。 一般来说&#xff0c;删除…

2023牛客寒假算法基础集训营5(通过ABCDHIKL) I题有详解(F已补)

其他题待补中…… 链接&#xff1a;2023牛客寒假算法基础集训营5 简单题 A 小沙の好客&#xff08;贪心&#xff0c;前缀和&#xff0c;二分&#xff09; 题意思路 给定nnn个商品的价值&#xff0c;qqq次询问&#xff0c;每次询问k,xk, xk,x即价值不超过xxx的商品最多可以拿…

文件输入输出缓冲流IO综合练习——学生管理系统文件版

综合练习&#xff08;一&#xff09; 键盘录入3个学生信息(学号,姓名,年龄,居住城市)存入集合。然后遍历集合把每一个学生信息存入文本文件(每一个学生信息为一行&#xff0c;自己定义分割标记) 学生类&#xff1a; package com.itheima; /** 标准的学生类*/ public class St…

【数据结构 (3)】1.4 算法和算法分析

文章目录1. 算法的定义及特性算法的特性算法设计的要求2. 算法的时间复杂度分析算法时间复杂度的基本方法算法时间复杂度分析例题算法时间复杂度的计算3. 算法的空间复杂度1. 算法的定义及特性 算法的定义 对特定问题求解方法和步骤的一种描述&#xff0c;它是指令的有限序列…

WSL-Ubuntu 安装、移动

设置” 启用或者关闭Windows功能“&#xff0c;勾选如下选项。Hyper-v若存在灰色&#xff0c;可进入BIOS-Configuration&#xff0c;Intel Virtual Technology设置Enable重启2、安装Ubuntu3、移动。Ubuntu默认安装C盘。首先D盘创建移动的目录&#xff0c;例如&#xff1a;D:\Ub…

使用kubeadm搭建高可用k8s集群

使用kubeadm搭建高可用k8s集群方案选型高可用k8s集群部署准备工作服务器统一配置配置hostname打通ssh免密登录部署etcd集群step1 在master01上生成配置相关文件step2 每台服务器上启动etcd服务step3 检查etcd集群是否正常部署负载均衡 (haproxy keepalived)step1 下载haproxy与…