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叉编译工具链安装目录