stshihia · 2022年03月19日

【XR806】开发板体验-环境搭建和调试

  1. 前言
    有幸获得一块XR806开发板,能够参加到这次的试用活动中来。第一次接触全志产品以及harmonyos。感觉很多都不熟悉,不过好在社区的资料比较齐全,参考也很多。在搭建环境和编译的过程中也遇见问题, 解决问题过程本来就是一个很有趣的过程。板子本身提供USB转串口。和公司开发板,通过引出的三根线的不同。可以直接用手机的type-C usb线来调试,这种方式蛮好的。
  2. 虚拟机搭建
    最基本的是在VMware安装Uubuntu20.04,在此就不赘述。
    我习惯在putty中使用命令行来操作虚拟机,所以需要安装ssh server.

    sudo apt update  
    sudo apt install openssh-server
    

    把ssh server启动起来,便可以在putty中进行操作了

  3. 编译环境搭建
    安装repo

    git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo
    

    安装git

    sudo apt install git
    

    安装python3,并将python指向python3

    sudo apt -y install curl git python3 python3-pip
    ln -s /usr/bin/python3 /usr/bin/python
    

注册gitee并配置自己的公钥
 title=

拉取代码

mkdir xr806
cd xr806
repo init -u ssh://git@gitee.com/openharmony-sig/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify -m devboard_xr806.xml
repo sync -c -j8
repo forall -c 'git lfs pull'
  1. 进行编译
    编译环境的准备

    wget https://repo.huaweicloud.com/harmonyos/compiler/gn/1717/linux/gn-linux-x86-1717.tar.gz
    wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar
    wget https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-36191/linux/llvm-linux-9.0.0-36191.tar
    wget https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
    

    下载下来解压, 放到~/tools/里面,解压,

    tar -xf gn-linux-x86-1717.tar.gz
    tar -xf ninja.1.9.0.tar
    tar -xf llvm-linux-9.0.0-36191.tar
    tar -xf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
    

    然后加到bashrc里面

    echo 'export PATH=$PATH:~/tools:~/tools/ninja' | tee -a ~/.bashrc
    echo 'export PATH=$PATH:~/tools/llvm/bin' | tee -a ~/.bashrc
    echo 'export PATH=$PATH:~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin' | tee -a ~/.bashrc
    source ~/.bashrc
    

    开始配置编译

    cd device/xradio/xr806/xr_skylark/
    cp project/demo/audio_demo/gcc/defconfig .config
    make menuconfig
    make build_clean
    make lib -j
    

    make meuconfig时报错

    libncurses.so.5: cannot open shared object file: No such file or directory
    

    安装对应的依赖

    sudo apt install libncurses*
    

在这里还出现了虚拟机崩掉的现象,查看log是因为OOM了。
我就给它从1G加到了2G的内存。哈哈,节约点。
 title=
重新编译,就没有问题了。

安装hb,hb是OpenHarmony的编译工具

cd build/lite
pip install prompt_toolkit==1.0.14
python setup.py install --user
echo 'export PATH=$PATH:~/.local/bin' | tee -a ~/.bashrc 
source ~/.bashrc

选择编译的产品wifi\_skylark

hb set
hb build -f

img文件在device\xradio\xr806\xr\_skylark\out下面

  1. 结果测试
    参考官方文档使用烧录工具进行烧录。
    https://xr806.docs.aw-ol.com/study/soft\_flash/
    接入串口的时候需要安装一下对应的串口驱动。
     title=
    就能看见对应的串口
     title=
    配置好后便可以看见串口输出
     title=

板子得以成功点亮。

  1. 总结和进一步计划
    XR806这块小板子的开发还是蛮有意思。后面应该花更多的时间进一步玩一下它的wifi相关应用。毕竟之前一直在linux上做系统开发,学习我们的harmonyos如何驱动这样小巧的设备十分有必要。 :)
推荐阅读
关注数
0
文章数
1
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息