OpenHarmony3.0在树莓派3B上的烧录与通讯步骤

描述

   

本篇文章详细给出 OpenHarmony 3.0 在树莓派 3B 上的烧录与通讯步骤,对其中使用的指令进行详细解释,同时附有烧录与通讯过程中使用的各类软件的下载链接,欢迎各位浏览指正。

     

OpenHarmony 3.0 编译及烧录

   

 

①安装必要的依赖包

 

安装必要的依赖包:执行 sudo 的 apt update 命令,用来检查已安装的软件包是否有可用的更新;再执行 sudo 的 apt install -y 命令,用来下载安装后续需要使用的依赖包。

sudo apt update
sudo apt install -y binutils git git-lfs gnupg flex bison gperf build-essential 
                    zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 
                    lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache 
                    libgl1-mesa-dev libxml2-utils xsltproc unzip m4 wget bc python python3 
                    android-tools-fsutils libssl-dev mtools

此处需要注意的是,在 Ubuntu20 的环境下执行上一步命令时,可能会出现 android-tools-fsutils 工具安装失败的情况,如图 1 所示。

OpenHarmony

图 1:android-tools-fsutils 安装失败示意图只需将上述安装指令中的 android-tools-fsutils 替换为图 1 红框中的 android-sdk-libspares 和 android-sdk-ext4-utils,并重新执行即可。  

安装 repo 工具:使用 curl 命令从 Gitee 网站上下载 repo 工具,并通过 sudo 的 tee 命令将下载后的结果以 repo 命名,标准输出到 /usr/local/bin/repo 路径下,实现 repo 安装。

curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 | sudo tee /usr/local/bin/repo >/dev/null

安装完成后,使用 sudo 的 chmod 命令为已安装后的文件添加权限,此处设置的是 a+x,即为全部使用者添加此文件的可执行权限。

sudo chmod a+x /usr/local/bin/repo

将 /bin/sh 重新指向 /bin/bash:此步骤由 sudo 的 ln -sf 命令实现,命令含义是由 /bin/sh 重新指向 /bin/bash。

sudo ln -sf bash /bin/sh

设置 git 信息:在前面安装依赖包的步骤中,我们已经成功安装好了 git,由于 git 是分布式版本控制系统,因此需要设置 git 自己的名字和电子邮件以作区分。

git config --global user.name your_name
git config --global user.email your_email

②下载编译内核需要的工具链

编译内核需要下载和安装工具链 gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf,安装路径此处设置为 /ohos,因此需要先创建并切换至此路径。

mkdir ~/ohos
cd ~/ohos

使用 Wget 下载命令可以从官网进行下载,然后使用 tar 命令对已下载的工具链安装包进行解压即可。

Wget https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/arm-linux-gnueabihf/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz

tar -xvf gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz

③编译 OpenHarmony

 拉取源码同样将路径切换至 /ohos 下,新建名为 openharmony 的文件夹并进入此文件夹。

通过前面已安装好的 repo 工具从 Gitee 网站上(https://gitee.com/xfan1024/oh-rpi3b.git)拉取代码。

cd ~/ohos
mkdir openharmony
cd openharmony

repo init -u https://gitee.com/xfan1024/oh-rpi3b.git -m oh-rpi3b.xml -b refs/tags/v20210823 --no-repo-verify

repo sync -c
repo forall -c 'git lfs pull'
./build/prebuilts_download.sh

在 openharmony 文件夹中,先打补丁;之后进入 /ohos 路径下使用 export 命令设置环境变量;设置完成后再回到 openharmony 文件夹,即可开始编译。

cd ~/ohos/openharmony
python3 projectpatch/patch.py

cd ~/ohos
export PATH="$PATH:$(pwd)/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin"
cd openharmony
python3 build-rpi3.py build

编译完成的界面如图 2 所示:


	

OpenHarmony

图 2:编译完成界面图

 

④烧录到 SD 卡(Windows 烧录方法)

编译完成后生成的映像 firmware.img 的位置路径是 out/ohos-arm-release/packages/phone/images/firmware.img。在开始烧录之前,最好先检查下映像 firmware.img 的大小,这是为了防止由于未拷贝完成可能造成的烧录失败。

 

经查看后,其大小为 941 MB,如图 3 所示:OpenHarmony图 3:firmware.img 映像大小示意图  之后将此 firmware.img 拷贝到 window 电脑上使用 Win32DiskImager 进行烧录。

下载地址:

https://sourceforge.net/projects/win32diskimager/

 

此处我们需要使用 SD 卡+读卡器的组合,将映像烧录到 SD 卡所在的分区上。首先将 SD 卡正确安装在读卡器中,然后将读卡器插到电脑上,“设备与驱动器”中会增加 SD 卡的分区。

按照下图所示配置 Win32DiskImager 工具后,点击写入即可完成烧录。

OpenHarmony

图 4:Win32DiskImager 工具配置界面

⑤点亮树莓派的开发板的屏幕

烧录完成后,接下来需要点亮树莓派的开发板的屏幕,此部分主要分为如下 4 个步骤:

插入 SD 卡:将 SD 卡插入到树莓派开发板的 SD 卡槽中,正确插入后的效果如图 5 红框中所示。

OpenHarmony图 5:在树莓派开发板上插入 SD 卡示意图

连接开发板和其他硬件:按照图 6 所示的硬件连接示意图(图中每两个相同的序号分别表示同一根数据线的两端),用 HDMI 线①为树莓派开发板连接显示屏,用 DC 线②为显示屏供电,用电源线③连接开发板和电源。

OpenHarmony

图 6:连接示意图

 

开发板通电和显示屏点亮:在正确完成上述所有硬件连接后,需要先给开发板通电,再开启显示屏:打开上述电源线③已连接的电源开关,给开发板通电,若硬件连接正常,即可启动树莓派开发板,效果如图 7 所示。

OpenHarmony图 7:开发板通电示意图

 

长按显示器侧面的按键“Power”约 3~5 秒,若硬件连接正常,屏幕就会点亮,注意此时显示器暂不支持触屏功能。

OpenHarmony

图 8:点亮显示屏示意图

 

设置显示器触屏:先使用一根数据线(图 9 中灰色数据线),在图 9 所示位置处,将显示器侧面标有“TOUCH”标志的端口和开发板的 USB 口相连。

OpenHarmony

图 9:设置触摸屏的硬件连接示意图

 

再在串口工具(串口工具下载使用方法见 2.1)中使用 reboot 命令,重启设备即可设置显示器实现可触屏的效果,若命令未生效,可多次重启后再进行尝试。    

开发板的通信和文件传输

   

 

OpenHarmony 3.0 在烧录到树莓派 3B 后,可以实现基本的显示、触屏等功能,接下来尝试与树莓派 3B 开发板实现通信,目前尝试的通信方式包括:串口通讯、SSH 通讯、文件可视化传输三种通讯方式。  

①与树莓派开发板实现串口通讯

 连接好串口线硬件设备,并且能成功识别串口的基础上,借助 XCOM 工具或者 XSHELL 工具可实现串口通信。

 

连接串口线:将电脑和树莓派开发板使用串口线相互连接,其中 USB 端②与电脑连接,串口线①按照红线、黑线、白线、绿线的顺序依次与开发板连接,效果如图 10 所示。

检查 USB 端口是否显示:在电脑中,打开设备管理界面,来查看 USB 端口是否可以显示。若能够正常显示,则效果如图 11。

OpenHarmony

图 11:端口正常显示的界面

 

若端口名上出现了黄色叹号,则说明无法正常显示端口,此时需要右键端口名,查看其属性中的详细信息,检查是否是由于缺少驱动造成的。

 

若确实是此原因造成,则需要在相应下载地址(http://www.wch.cn/downloads/CH341SER_EXE.html)中下载驱动,并重启电脑;在重启后重新打开设备管理界面即可看到已显示的 USB 端口。

 

使用 XCOM 工具实现串口通讯:在连接好串口线且 USB 端口能在电脑上正常显示后,就可以测试通讯功能是否正常了。

 

此处需要使用 XCOM 工具,此工具能够准确地自动识别串口,还能够查看接收到的历史数据,可以单条发送也可以多条发送。

 

在完成下载安装之后(下载地址为http://www.downcc.com/soft/317457.html,仅供参考)。

 

XCOM 工具的正常运行界面如图 12 所示:

OpenHarmony

图 12:XCOM 工具运行界面

 

在右上角的红框区域可以设置端口和波特率,注意此处端口应选择上一步中能正常显示的 USB 端口;在界面中左下角的红框区域可输入 cat 命令用于测试串口是否正常。

 

使用 XSHELL 工具实现串口通讯:使用 XSHELL 工具也可以实现串口通讯功能(下载地址为 xshellcn.com/xiazai.html),在完成下载安装之后,正常运行界面如图 12 所示。

正常运行后,在 XSHELL 下新建一个会话,完成相关参数的设置。设置连接属性可参考图 13 上图,选择协议为红框中的 SERIAL 协议。

OpenHarmony

OpenHarmony

图 13:XSHELL 工具运行界面(上:设置连接,下:设置串口)

 

设置串口参数可参考图 13 下图,其中端口号可以在上述步骤中提到的设备管理器中查找,其余参数保持默认设置即可。

 

在完成上述所有设置之后,就可以通过 XSHELL 实现串口连接了,若出现“Connected”则说明成功连接,效果如图 14 所示。

OpenHarmony

图 14:成功实现串口连接效果图  

②与树莓派的板子实现 SSH 通讯

 实现 SSH 通讯的前提是需要先获取树莓派的 IP 地址并与 MAC 地址绑定,在成功绑定后,使用上一节中设置好的串口打开树莓派的 SSH 服务,然后就可以建立 SSH 通讯了。  

获取树莓派的 IP 地址并绑定:由于需要借助路由器来获取树莓派的 IP 地址,因此需要使树莓派开发板和电脑主机处于同一局域网下。

 

流程如下:

  • 将网线一端连接至树莓派开发板的网口,另一端连接至路由器网口,实现树莓派开发板联网。

  • 给电脑主机连接此路由器的 WiFi。

  • 在浏览器中输入路由器的后台管理 IP 进入后台管理界面,输入密码进行登录,如图 15 中红框所示。

OpenHarmony

图 15:登录路由器后台管理

 

成功登录后,按照图 16 中标记的序号顺序,依次点击设置红框部分:高级设置—IP----添加—弹出“绑定设备”提示框----记录树莓派的 IP 地址并更改设备名称(图中鼠标所致处)-----一键绑定。

OpenHarmony

图 16:获取并绑定树莓派 IP 流程  

通过串口打开树莓派的 SSH 服务:如图 17,在前面介绍的串口工具 XCOM/XSHELL 中,选择之前已检测正常的串口并保持其他属性选项为默认;在左下角控制台单条发送 ifconfig 命令,用来打开树莓派的 SSH 服务。

OpenHarmony

图 17:XCOM 打开树莓派的 SSH 服务  

建立与树莓派板子的 SSH 连接:正常运行后,同样使用 XSHELL 新建一个如图 18 的会话,用于设置树莓派的属性即名称和主机 IP,名称可自定义,主机 IP 是之前已从路由器获取的树莓派 IP 地址。

点击“确定”后,在弹出来的提示框中选择接受并保存主机秘钥,输入登录的用户名和密码,点击“确定”即可出现建立远程 SSH 服务,效果如图 19 所示。

OpenHarmony图 19:成功实现 SSH 通讯效果图

 

③与树莓派开发板实现文件可视化传输

 

为实现电脑与树莓派开发板进行文件可视化传输,需要使用工具 WinSCP。此工具是支持 SSH 的 SCP 文件传输工具,将其与相应的服务器连接并设置相关参数后,即可在电脑和开发板之间相互下载或传输文件。  

工具下载:下载 WinScp 工具,下载完成后根据提示进行安装。下载地址可参考:

https://www.onlinedown.net/soft/20088.htm
 

参数设置:启动电脑的 ssh 服务,在 ssh 服务已开启且成功建立连接的情况下,启动 WinScp 工具,在 WinScp 中新建站点,参数设置可参考图 20 红框中的内容。

OpenHarmony

图 20:新建站点  

文件传输:设置完参数后点击登录按钮,在出现的各种提示项中选择默认选项,之后便可以进入如图 20 所示界面。

 

界面左侧表示主机文件系统,右侧表示 openharmony 3.0(即树莓派开发板)的文件系统,用户可以采用拖动的方式,实现在两台设备间相互文件传输的效果。

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

全部0条评论

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

×
20
完善资料,
赚取积分