OpenHarmony在Amlogic A311D芯片平台的快速开发上手指南 原创 精华

发布于 2022-4-9 23:54
浏览
1收藏


目前最新发布的版本为OpenHarmony-3.1-Release版本,该版本发布于今年3月30日,带来很多新功能,及原有功能的增强。发布伊始,就已经开始基于该版本,在Amlogic A311D芯片平台进行了适配。

一、开发环境准备

  1. Ubuntu 20.04(或18.04)服务器或虚拟机  – (用于源码编译)
    同时也可以采用作者提供的Docker镜像,OpenHarmony的Ubuntu 20.04自制镜像链接如下:
    链接: https://pan.baidu.com/s/1eIIL_2Y3G-Os5_HptpX2JQ?pwd=a2im
    提取码: a2im
  2. Windows电脑 – (用于镜像的烧录)
  3. A311D主控的开发板及MIPI屏(没有MIPI屏,可以用HDMI显示)
       Amlogic A311D采用四核ARM Cortex-A73和双核ARM Cortex-A53 CPU,ARM G52 MP4(6EE) GPU,NPU for AI 支持 5.0 TOPS算力,支持摄像头和MIPI-CSI接口,HDMI输出,2个全千兆接口。
       开发板针对芯片硬件资源,进行了定制,外观如下:
    OpenHarmony在Amlogic A311D芯片平台的快速开发上手指南-开源基础软件社区

主要接口简介:
*1  Micro USB 数据线,PC 端需要安装 CH340G 驱动才能正常使用串口功能。
*2 多功能扩展接口为 40PIN,接口兼容树莓派40PIN引脚;
*3 I2S 接口为 16PIN 双列插针接口;
*4 位姿传感器采用板载应美盛公司的高灵敏度 9 轴传感器芯片 ICM-20948;
*5 4G 通 讯 模 组 可 采 用 本 公 司 的 4G 模 组 , 或 者 相 应 接 口 序 列 的 模 组 ;
*6 MIPI CSI 接口 接口序列兼容树莓派;
*7 MIPI DSI 接口 接口序列兼容树莓派;
*8 PWM 接口 接口序列为: 3V3/PWM_1/PWM_2/GND;
*9 TTL 接口 接入时需注意信号接电平为: 1.8V 接口序列为: 3V3/TX/RX/GND;
*10 ADC 接口接入时需注意信号接电平为: 1.8V 接口序列为: 3V3/ADC_1/ADC_2/GND;
*11 485 接口 接口序列为: GND/485_B/485_A /5V;
*12 CAN bus 接口 接口序列为: 5V/CAN_L/CAN_H/GND;
*13 喇叭接口 接口序列为: SPKR-/ SPKR +/ SPKL -/ SPKL+;

二、源码下载与编译

源码下载地址:gitee,目前暂未合入到Openharmony主仓库(目前在进行中),请先按照以下参考步骤进行下载,或参考gitee介绍进行下载。

1、源码下载

mkdir openharmony
cd openharmony
repo init -u https://gitee.com/algoideas/unionpi -b OpenHarmony-3.1-Release -m devboard_unionpi.xml --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
./build/prebuilts_download.sh --skip-ssl

# 打入unionpi相关补丁到openharmony中(注意:请在代码下载完成后执行)
./device/unionpi/build/patch-unionpi.sh

注:源码下载过程需要10几分钟不等,请耐心等待,如果上次未下载完成,可以继续下载。

2、编译方法

./build.sh --product-name a311d --ccache

编译完成后,效果如下图所示:

OpenHarmony在Amlogic A311D芯片平台的快速开发上手指南-开源基础软件社区

第一次编译可能需要20几分钟,第二次编译时间比较短

三、固件打包与下载

 编译完成后需要,进行对镜像进行打包,然后进行烧写。

1、固件打包
执行以下命令

./device/unionpi/build/packer-unionpi.sh

固件打包完成,生成路径为编译根目录下的out/a311d/packages/phone/images/OpenHarmony.img
其中部分打包日志如下:

[Msg]Pack Item[USB         ,              DDR] from (/home/AlgoIdeas/openharmony/OpenHarmony-3.1-Release/device/unionpi/prebuilts/images/u-boot.bin),sz[0x189770]B,fileType[normal]
[Msg]Pack Item[USB         ,            UBOOT] from (/home/AlgoIdeas/openharmony/OpenHarmony-3.1-Release/device/unionpi/prebuilts/images/u-boot.bin),Duplicated for DDR.USB
... ...
[Msg]Pack Item[PARTITION   ,           system] from (/home/AlgoIdeas/openharmony/OpenHarmony-3.1-Release/device/unionpi/prebuilts/images/system.img),sz[0x25800000]B,fileType[normal]
[Msg]Pack Item[VERIFY      ,           system] from (/home/AlgoIdeas/openharmony/OpenHarmony-3.1-Release/device/unionpi/prebuilts/images/system.img),vry[sha1sum af04555d04c096cb3b968dbba00895e856c980ec]
[Msg]Pack Item[PARTITION   ,           vendor] from (/home/AlgoIdeas/openharmony/OpenHarmony-3.1-Release/device/unionpi/prebuilts/images/vendor.img),sz[0xffff000]B,fileType[normal]
[Msg]Pack Item[VERIFY      ,           vendor] from (/home/AlgoIdeas/openharmony/OpenHarmony-3.1-Release/device/unionpi/prebuilts/images/vendor.img),vry[sha1sum 80ca8bdaeb68f24e69649381c9e0125ac87b0951]
[Msg]version:0x2 crc:0x69625cf8 size:1469162720 bytes[1401MB]
Pack image[/home/AlgoIdeas/openharmony/OpenHarmony-3.1-Release/out/a311d/packages/phone/images/OpenHarmony.img] OK

2、固件烧录
   固件支持USB烧写,也支持TFTP及U盘烧写,以下主要介绍USB烧写,烧写前需要安装好Amlogic USB烧写工具,工具下载地址在devic/unionpi/a311d/tools/windows目录下。

烧录步骤:
   1)、开发板上电,并同时按住升级键(中间位置),等待Windows电脑识别到开发板;
2)、打开烧录软件,此时会在烧录软件界面,显示识别到的设备:
OpenHarmony在Amlogic A311D芯片平台的快速开发上手指南-开源基础软件社区
       
接下来在工具栏,文件-> 选择烧录的OpenHarmony.img固件,并可选择不进行校验,然后点击 <开始> 进行烧录即可,如下图所示:
OpenHarmony在Amlogic A311D芯片平台的快速开发上手指南-开源基础软件社区
烧录过程状态如下:        
OpenHarmony在Amlogic A311D芯片平台的快速开发上手指南-开源基础软件社区
等待烧录完成后,设备自动重启即可。

四、结语

在Amlogic A311D 芯片上OpenHarmony的适配基本过程,和目前开源的代码,同样可以适配到其他A311D芯片平台的开发板或机顶盒等,甚至Amlogic或其他芯片平台都有借鉴意义。
至此,A311D的快速开发上手完毕。

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
USB_Burning_Tool_v2.2.0.zip 8.18M 59次下载
CH340G.zip 179.54K 4次下载
已于2022-4-9 23:54:15修改
5
收藏 1
回复
举报
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
    相关推荐