diff --git a/zh-cn/device-dev/Readme-CN.md b/zh-cn/device-dev/Readme-CN.md index 5d292301578abdb62b5a3f809fa918507523b23e..eab525eca520337d2a0ee458a9fb919ecb54b5dd 100644 --- a/zh-cn/device-dev/Readme-CN.md +++ b/zh-cn/device-dev/Readme-CN.md @@ -6,8 +6,7 @@ - [术语](../glossary.md) - [版本说明](../release-notes/Readme.md) - 快速开始 - - [轻量和小型系统快速入门](quick-start/quickstart-ide-lite-overview.md) - - [标准系统快速入门](quick-start/quickstart-ide-standard-overview.md) + - [快速入门](quick-start/Readme-CN.md) - 兼容性与安全 - [隐私与安全规范](security/Readme-CN.md) - 移植 diff --git a/zh-cn/device-dev/device-dev-guide.md b/zh-cn/device-dev/device-dev-guide.md index 76d8e9a25a17aa33ff238e74066bc99abf67c889..8bcd5350656f5567c701c910c08dd4baa70cc783 100644 --- a/zh-cn/device-dev/device-dev-guide.md +++ b/zh-cn/device-dev/device-dev-guide.md @@ -36,9 +36,9 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按 | --------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | | 了解OpenHarmony | 整体认知OpenHarmony | - [OpenHarmony概述](https://gitee.com/openharmony)
- [术语](../glossary.md) | | 获取开发资源 | 准备开发前相关资源 | - [获取源码](get-code/sourcecode-acquire.md)
- [获取工具](get-code/gettools-acquire.md) | -| 快速入门 | 快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行 | - [轻量和小型系统快速入门](quick-start/quickstart-ide-lite-overview.md) | +| 快速入门 | 快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行 | - [快速入门](quick-start/Readme-CN.md) | | 基础能力使用 | 使用OpenHarmony提供的基础能力 | - [轻量系统内核开发指南](kernel/kernel-mini-overview.md)
- [小型系统内核开发指南](kernel/kernel-small-overview.md)
- [驱动开发指南](driver/driver-hdf-overview.md)
- [子系统开发指南](subsystems/subsys-build-all.md)
- [安全指南](security/security-guidelines-overall.md)
- [隐私保护](security/security-privacy-protection.md) | -| 进阶开发 | 结合系统能力开发智能设备 | - [WLAN连接类产品](guide/device-wlan-led-control.md)
- [无屏摄像头类产品](guide/device-iotcamera-control-overview.md)
- [带屏摄像头类产品](guide/device-camera-control-overview.md) | +| 进阶开发 | 结合系统能力开发智能设备 | - [WLAN连接类产品](guide/device-wlan-led-control.md)
- [带屏摄像头类产品](guide/device-camera-control-overview.md) | | 移植适配 | - 针对特定芯片做移植适配
- 对三方库进行移植适配
- 三方厂商移植案例
| - [轻量系统芯片移植指导](porting/porting-minichip-overview.md)
- [小型系统芯片移植指导](porting/porting-smallchip-prepare-needs.md)
- [轻量和小型系统三方库移植指导](porting/porting-thirdparty-overview.md)
- [带屏解决方案之恒玄芯片移植案例](porting/porting-bes2600w-on-minisystem-display-demo.md)
- [Combo解决方案之ASR芯片移植案例](porting/porting-asr582x-combo-demo.md)
- [物联网解决方案之芯海cst85芯片移植案例](porting/porting-cst85f01-combo-demo.md)
- [轻量系统STM32F407芯片移植案例](porting/porting-stm32f407-on-minisystem-eth.md)
- [Combo解决方案之W800芯片移植案例](porting/porting-w800-combo-demo.md)
- [小型设备STM32MP1芯片移植案例](porting/porting-stm32mp15xx-on-smallsystem.md) | | 贡献组件 | 为OpenHarmony贡献功能组件 | - [HPM Part 介绍](hpm-part/hpm-part-about.md)
- [HPM Part 开发指导](hpm-part/hpm-part-development.md)
- [HPM Part 参考](hpm-part/hpm-part-reference.md) | | 参考 | 为开发者提供常见的问题解答和HDI接口参考 | - [常见问题](faqs/faqs-overview.md)
- [HDI接口参考](reference/hdi-apis/Readme-CN.md) | @@ -48,7 +48,7 @@ OpenHarmony也提供了一系列可选的系统组件,方便设备开发者按 | -------- | -------- | -------- | | 了解OpenHarmony | 整体认知OpenHarmony | - [OpenHarmony概述](https://gitee.com/openharmony)
- [术语](../glossary.md) | | 获取开发资源 | 准备开发前相关资源 | - [获取源码](get-code/sourcecode-acquire.md)
- [获取工具](get-code/gettools-acquire.md) | -| 快速入门 | 快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行 | - [标准系统快速入门](quick-start/quickstart-ide-standard-overview.md) | +| 快速入门 | 快速熟悉OpenHarmony环境搭建、编译、烧录、调测、运行 | - [快速入门](quick-start/Readme-CN.md)| | 基础能力使用 | 使用OpenHarmony提供的基础能力 | - [内核开发指南](kernel/kernel-standard-overview.md)
- [驱动开发指南](driver/driver-hdf-overview.md)
- [子系统开发指南](subsystems/subsys-build-all.md)
- [安全指南](security/security-guidelines-overall.md)
- [隐私保护](security/security-privacy-protection.md) | | 进阶开发 | 结合系统能力开发智能设备 | - [时钟应用开发指导](guide/device-clock-guide.md)
- [平台驱动开发示例](guide/device-driver-demo.md)
- [外设驱动开发示例](guide/device-outerdriver-demo.md) | | 移植适配 | - 针对特定芯片做移植适配
- 快速移植OpenHarmony Linux内核的方法| - [标准系统芯片移植指导](porting/standard-system-porting-guide.md)
- [一种快速移植OpenHarmony Linux内核的方法](porting/porting-linux-kernel.md)
- [标准系统方案之瑞芯微RK3568移植案例](porting/porting-dayu200-on_standard-demo.md)| diff --git a/zh-cn/device-dev/faqs/faqs-burning.md b/zh-cn/device-dev/faqs/faqs-burning.md index 28fffd486a78cc5477823858b285208085d3512d..1e1d16aed57749fbee981943b49586d6492c7935 100644 --- a/zh-cn/device-dev/faqs/faqs-burning.md +++ b/zh-cn/device-dev/faqs/faqs-burning.md @@ -26,7 +26,7 @@ ![zh-cn_image_0000001243481989](figures/zh-cn_image_0000001243481989.png) 2. 点击标号中的垃圾桶图标,关闭串口。 - + **图3** 关闭串口终端 ![zh-cn_image_0000001243082093](figures/zh-cn_image_0000001243082093.png) @@ -88,7 +88,7 @@ > Hi3518EV300:device\hisilicon\hispark_aries\sdk_liteos\uboot\out\boot\u-boot-hi3518ev300.bin 2. 根据USB烧写步骤烧写U-boot文件。 - 按照[Hi3516系列USB烧写步骤](../quick-start/quickstart-ide-lite-steps-hi3516-burn.md)中描述的烧写方法,选择对应单板的U-boot文件进行烧写。 + 按照[Hi3516系列USB烧写步骤](../quick-start/quickstart-ide-3516-burn.md)中描述的烧写方法,选择对应单板的U-boot文件进行烧写。 3. 烧写完成后,登录串口如下图所示。 @@ -104,7 +104,7 @@ 点击烧写并选择串口后,无法获取文件。 **图6** 网络不通,单板无法获取文件图 - + ![zh-cn_image_0000001198322428](figures/zh-cn_image_0000001198322428.png) - **可能原因** @@ -124,19 +124,19 @@ ![zh-cn_image_0000001198162584](figures/zh-cn_image_0000001198162584.png) 3. 点击“允许应用通过防火墙”。 - + **图8** 防火墙和网络保护界面图 ![zh-cn_image_0000001198323146](figures/zh-cn_image_0000001198323146.png) 4. 查找Visual Studio Code应用。 - + **图9** 查找Visual Studio Code应用图 ![zh-cn_image_0000001198003232](figures/zh-cn_image_0000001198003232.png) 5. 勾选Visual Studio Code的专用和公用网络的访问权限。 - + **图10** 允许Visual Studio Code应用访问网络 - + ![zh-cn_image_0000001243084579](figures/zh-cn_image_0000001243084579.png) diff --git a/zh-cn/device-dev/guide/Readme-CN.md b/zh-cn/device-dev/guide/Readme-CN.md index f3d4ce4dda929fefc50ed0c16f5c57d6b696ec8a..6ccfe900d89d600cd818d10e122f1ec80d2bdec4 100755 --- a/zh-cn/device-dev/guide/Readme-CN.md +++ b/zh-cn/device-dev/guide/Readme-CN.md @@ -4,13 +4,6 @@ - WLAN连接类产品 - [LED外设控制](device-wlan-led-control.md) - [集成三方SDK](device-wlan-sdk.md) - - 无屏摄像头类产品 - - 摄像头控制 - - [概述](device-iotcamera-control-overview.md) - - 示例开发 - - [拍照开发指导](device-iotcamera-control-demo-photodevguide.md) - - [录像开发指导](device-iotcamera-control-demo-videodevguide.md) - - [应用实例](device-iotcamera-control-example.md) - 带屏摄像头类产品 - 屏幕和摄像头控制 - [概述](device-camera-control-overview.md) diff --git a/zh-cn/device-dev/guide/device-camera-control-example.md b/zh-cn/device-dev/guide/device-camera-control-example.md index 0ddac333669841dfa42ae4b95859fad94287e926..bca04953d80f8c642b5d2ed062075a15fe61282e 100644 --- a/zh-cn/device-dev/guide/device-camera-control-example.md +++ b/zh-cn/device-dev/guide/device-camera-control-example.md @@ -3,7 +3,7 @@ 本示例将运行源码中的camera示例代码,通过本示例可以实现使用开发板进行拍照、录像及预览等功能。 - 本示例源码路径为“applications/sample/camera/media/camera\_sample.cpp”。 -- 在运行本示例前需先完成编译烧录、运行镜像等步骤,相关操作请参考[Hi3516快速入门](../quick-start/quickstart-lite-overview.md)。 +- 在运行本示例前需先完成编译烧录、运行镜像等步骤,相关操作请参考[小型系统快速入门](../quick-start/Readme-CN.md)。 >![](../public_sys-resources/icon-note.gif) **说明:** >开发板启动后默认会加载launcher应用,应用的图形界面默认显示在媒体图层上方,会影响camera\_sample的演示结果,因此需要在编译或是打包时去掉launcher应用。 diff --git a/zh-cn/device-dev/guide/device-camera-visual-run.md b/zh-cn/device-dev/guide/device-camera-visual-run.md index 798c16bb43fec9d2f03c6a68577d193ea79591dd..7eb2de2d3794931d7cf31c037f8f4b4c3ed47ecc 100644 --- a/zh-cn/device-dev/guide/device-camera-visual-run.md +++ b/zh-cn/device-dev/guide/device-camera-visual-run.md @@ -1,6 +1,6 @@ # 真机运行 -应用编译打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),然后将OpenHarmony烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[Hi3516快速入门](../quick-start/quickstart-lite-overview.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载三方应用。 +应用编译打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),然后将OpenHarmony烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[小型系统快速入门](../quick-start/Readme-CN.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载三方应用。 1. 将IDE编译的未签名应用安装包和安装工具(镜像文件生成目录中的dev\_tools)放在sdcard中,将sdcard插入开发板卡槽。 2. 应用安装默认要校验签名,需要执行以下命令,关闭签名校验。 diff --git a/zh-cn/device-dev/guide/device-clock-guide.md b/zh-cn/device-dev/guide/device-clock-guide.md index aafad2d960b5e804d57054c0124082445e72a5da..15baa4e9c933fc9cea0d9bc9a3adba333708a37d 100644 --- a/zh-cn/device-dev/guide/device-clock-guide.md +++ b/zh-cn/device-dev/guide/device-clock-guide.md @@ -1,14 +1,5 @@ # 时钟应用开发指导 -- [概述](#section11522349121115) -- [开发准备](#section6592121861218) -- [开发步骤](#section19901741111312) -- [签名打包](#section10601181101516) -- [真机运行](#section092721731511) -- [常见问题](#section1122413460153) - - [hdc\_std连接不到设备](#section1922725151614) - - [hdc\_std运行不了](#section15657547131615) - ## 概述 @@ -259,7 +250,7 @@ ## 真机运行 -应用签名打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),然后将OpenHarmony系统烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[标准系统Hi3516快速入门](../quick-start/quickstart-standard-overview.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载应用。 +应用签名打包后即可安装到开发板。安装应用前需要先完成[DevEco Device Tool的安装配置](https://device.harmonyos.com/cn/docs/ide/user-guides/service_introduction-0000001050166905),然后将OpenHarmony系统烧录到开发板并运行。编译烧录、运行镜像的基本操作请参考快速入门手册:[标准系统Hi3516快速入门](../quick-start/quickstart-appendix-hi3516-ide.md)。完成镜像运行,系统正常启动后,执行如下步骤安装或卸载应用。 1. 从开发者工具代码仓路径中获取hdc客户端。 diff --git a/zh-cn/device-dev/guide/device-driver-demo.md b/zh-cn/device-dev/guide/device-driver-demo.md index 69bc256f70eb551ba14d9943943818c0f38b2995..9276b5f934e691b423fd2193455795e15b0dbd12 100644 --- a/zh-cn/device-dev/guide/device-driver-demo.md +++ b/zh-cn/device-dev/guide/device-driver-demo.md @@ -1,15 +1,5 @@ # 平台驱动开发示例 -- [概述](#section194201316174215) -- [环境准备](#section6926133918422) -- [开发](#section65801539470) - - [文件说明](#section0708184454414) - - [实例化驱动入口](#section85325864412) - - [设置相关参数](#section8155172019453) - - [添加控制器](#section1335374114452) - -- [编译及烧录](#section164824754712) - ## 概述 本文档将以I2C驱动为例,介绍如何基于HDF驱动框架完成平台驱动开发。 @@ -26,7 +16,7 @@ HDF驱动框架为常用外围设备提供了标准的驱动框架,驱动开 ## 环境准备 -环境准备具体操作请参考[标准系统基础环境搭建](../quick-start/quickstart-standard-overview.md)。 +环境准备具体操作请参考[Hi3516标准系统入门](../quick-start/quickstart-appendix-hi3516-ide.md)完成环境搭建。 >![](../public_sys-resources/icon-notice.gif) **须知:** >本示例针对OpenHarmony轻量系统、小型系统、标准系统都适用,本文以标准系统为例。其他系统的开发者可参考对应系统的指导文档进行环境搭建。 @@ -440,8 +430,8 @@ HDF_INIT(g_sampleI2cDriverEntry); 2. 编译及烧录。 - - 安装包方式具体操作请参考标准系统快速入门[编译](../quick-start/quickstart-ide-standard-running-hi3516-build.md)和[烧录](../quick-start/quickstart-ide-standard-running-hi3516-burning.md)。 + - 安装包方式具体操作请参考标准系统快速入门[编译](../quick-start/quickstart-appendix-hi3516-pkg.md#编译)和[烧录](../quick-start/quickstart-appendix-hi3516-pkg.md#烧录)。 - - IDE方式具体操作请参考标准系统快速入门[编译](../quick-start/quickstart-standard-running-hi3516-build.md)和[烧录](../quick-start/quickstart-standard-running-hi3516-burning.md)。 + - IDE方式具体操作请参考标准系统快速入门[编译](../quick-start/quickstart-appendix-hi3516-ide.md#编译)和[烧录](../quick-start/quickstart-appendix-hi3516-ide.md#烧录)。 diff --git a/zh-cn/device-dev/guide/device-iotcamera-control-demo-photodevguide.md b/zh-cn/device-dev/guide/device-iotcamera-control-demo-photodevguide.md deleted file mode 100644 index f317784dbd25862f4752c69d6526335f03069fc9..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/guide/device-iotcamera-control-demo-photodevguide.md +++ /dev/null @@ -1,396 +0,0 @@ -# 拍照开发指导 - -- [使用场景](#zh-cn_topic_0000001052170554_section1963312376119) -- [接口说明](#zh-cn_topic_0000001052170554_section56549532016) -- [约束与限制](#zh-cn_topic_0000001052170554_section1165911177314) -- [开发步骤](#zh-cn_topic_0000001052170554_section138543918214) - -## 使用场景 - -使用Camera产生图片帧(拍照)。 - -## 接口说明 - -**表 1** API列表 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

类名

-

接口名

-

描述

-

CameraKit

-

int32_t GetCameraIds(std::list<string> cameraList)

-

获取cameraId列表

-

CameraKit

-

CameraAbility& GetCameraAbility(string cameraId)

-

获取指定camera的能力

-

CameraKit

-

void RegisterCameraDeviceCallback(CameraDeviceCallback* callback, EventHandler* handler)

-

注册camera设备状态回调

-

CameraKit

-

void UnregisterCameraDeviceCallback(CameraDeviceCallback* callback)

-

去注册camera设备状态回调

-

CameraKit

-

void CreateCamera(string cameraId, CameraStateCallback* callback, EventHandler* handler)

-

创建camera实例

-

Camera

-

string GetCameraId()

-

获取cameraID

-

Camera

-

CameraConfig& GetCameraConfig()

-

获取camera配置信息

-

Camera

-

FrameConfig& GetFrameConfig(int32_t type)

-

获取捕获帧类型

-

Camera

-

void Configure(CameraConfig& config)

-

配置camera

-

Camera

-

void Release()

-

释放camera

-

Camera

-

int TriggerLoopingCapture(FrameConfig& frameConfig)

-

开始循环帧捕获

-

Camera

-

void StopLoopingCapture()

-

停止循环帧捕获

-

Camera

-

int32_t TriggerSingleCapture(FrameConfig& frameConfig)

-

抓图

-

CameraConfig

-

void SetFrameStateCallback(FrameStateCallback* callback, EventHandler* handler);

-

设置帧状态回调

-

CameraConfig

-

static CameraConfig* CreateCameraConfig()

-

创建camera配置信息实例

-

CameraAbility

-

std::list<Size> GetSupportedSizes(int format)

-

根据类型获取支持输出图像尺寸大小

-

CameraAbility

-

std::list<T> GetParameterRange(uint32_t key)

-

获取支持的参数范围

-

CameraDevice

-

CameraDeviceCallback()

-

camera设备回调类构造函数

-

CameraDevice

-

void OnCameraStatus​(std::string cameraId, int32_t status)

-

camera设备状态变化时的回调

-

CameraStateCallback

-

CameraStateCallback​()

-

camera状态回调类构造函数

-

CameraStateCallback

-

void OnConfigured​(Camera& camera)

-

camera配置成功回调

-

CameraStateCallback

-

void OnConfigureFailed​(Camera& camera,int32_t errorCode)

-

camera配置失败回调

-

CameraStateCallback

-

void OnCreated​(Camera& camera)

-

camera创建成功回调

-

CameraStateCallback

-

void OnCreateFailed​(std::string cameraId,int32_t errorCode)

-

camera创建失败回调

-

CameraStateCallback

-

void OnReleased​(Camera& camera)

-

camera释放回调

-

FrameStateCallback

-

FrameStateCallback​()

-

帧状态回调类构造函数

-

FrameStateCallback

-

void OnFrameFinished(Camera& camera, FrameConfig& frameConfig, FrameResult& frameResult)

-

拍照帧完成回调

-

FrameStateCallback

-

void OnFrameError​(Camera& camera, FrameConfig& frameConfig, int32_t errorCode, FrameResult& frameResult)

-

拍照帧异常回调

-

FrameConfig

-

int32_t GetFrameConfigType()

-

获取帧配置类型

-

FrameConfig

-

std::list<OHOS::Surface> GetSurfaces()

-

获取帧配置的surface

-

FrameConfig

-

void AddSurface(OHOS::AGP::UISurface& surface);

-

添加surface

-

FrameConfig

-

void RemoveSurface(OHOS::AGP::UISurface& surface);

-

删除surface

-
- -## 约束与限制 - -无。 - -## 开发步骤 - -1. 实现设备状态回调的派生类,用户在设备状态发生变更(如新插入相机设备/相机掉线)时,自定义操作。 - - ``` - class SampleCameraDeviceCallback : public CameraDeviceCallback { - void OnCameraStatus(std::string cameraId, int32_t status) override - { - //do something when camera is available/unavailable - } - }; - ``` - -2. 实现帧事件回调的派生类,这里在拿到帧数据以后将其转存为文件。 - - ``` - static void SampleSaveCapture(const char *p, uint32_t size) - { - cout << "Start saving picture" << endl; - struct timeval tv; - gettimeofday(&tv, NULL); - struct tm *ltm = localtime(&tv.tv_sec); - if (ltm != nullptr) { - ostringstream ss("Capture_"); - ss << "Capture" << ltm->tm_hour << "-" << ltm->tm_min << "-" << ltm->tm_sec << ".jpg"; - - ofstream pic("/sdcard/" + ss.str(), ofstream::out | ofstream::trunc); - cout << "write " << size << " bytes" << endl; - pic.write(p, size); - cout << "Saving picture end" << endl; - } - } - - class TestFrameStateCallback : public FrameStateCallback { - void OnFrameFinished(Camera &camera, FrameConfig &fc, FrameResult &result) override - { - cout << "Receive frame complete inform." << endl; - if (fc.GetFrameConfigType() == FRAME_CONFIG_CAPTURE) { - cout << "Capture frame received." << endl; - list surfaceList = fc.GetSurfaces(); - for (Surface *surface : surfaceList) { - SurfaceBuffer *buffer = surface->AcquireBuffer(); - if (buffer != nullptr) { - char *virtAddr = static_cast(buffer->GetVirAddr()); - if (virtAddr != nullptr) { - SampleSaveCapture(virtAddr, buffer->GetSize()); - } - surface->ReleaseBuffer(buffer); - } - delete surface; - } - delete &fc; - } - } - }; - ``` - -3. 实现相机状态回调的派生类,自定义相机状态发生变化(配置成功/失败,创建成功/失败\)时的操作。 - - ``` - class SampleCameraStateMng : public CameraStateCallback { - public: - SampleCameraStateMng() = delete; - SampleCameraStateMng(EventHandler &eventHdlr) : eventHdlr_(eventHdlr) {} - ~SampleCameraStateMng() - { - if (recordFd_ != -1) { - close(recordFd_); - } - } - void OnCreated(Camera &c) override - { - cout << "Sample recv OnCreate camera." << endl; - auto config = CameraConfig::CreateCameraConfig(); - config->SetFrameStateCallback(&fsCb_, &eventHdlr_); - c.Configure(*config); - cam_ = &c; - } - void OnCreateFailed(const std::string cameraId, int32_t errorCode) override {} - void OnReleased(Camera &c) override {} - }; - ``` - -4. 创建CameraKit,用于创建和获取camera信息。 - - ``` - CameraKit *camKit = CameraKit::GetInstance(); - list camList = camKit->GetCameraIds(); - string camId; - for (auto &cam : camList) { - cout << "camera name:" << cam << endl; - const CameraAbility *ability = camKit->GetCameraAbility(cam); - /* find camera which fits user's ability */ - list sizeList = ability->GetSupportedSizes(0); - if (find(sizeList.begin(), sizeList.end(), CAM_PIC_1080P) != sizeList.end()) { - camId = cam; - break; - } - } - ``` - -5. 创建Camera实例。 - - ``` - EventHandler eventHdlr; // Create a thread to handle callback events - SampleCameraStateMng CamStateMng(eventHdlr); - - camKit->CreateCamera(camId, CamStateMng, eventHdlr); - ``` - -6. 根据[步骤1](#zh-cn_topic_0000001052170554_li378084192111)、[步骤2](#zh-cn_topic_0000001052170554_li8716104682913)、[步骤3](#zh-cn_topic_0000001052170554_li6671035102514)中的回调设计,同步等待 OnCreated 回调拿到 cam\_ 之后,进行相关操作。 - - ``` - void OnCreated(Camera &c) override - { - cout << "Sample recv OnCreate camera." << endl; - auto config = CameraConfig::CreateCameraConfig(); - config->SetFrameStateCallback(&fsCb_, &eventHdlr_); - c.Configure(*config); - cam_ = &c; - } - - void Capture() - { - if (cam_ == nullptr) { - cout << "Camera is not ready." << endl; - return; - } - FrameConfig *fc = new FrameConfig(FRAME_CONFIG_CAPTURE); - Surface *surface = Surface::CreateSurface(); - if (surface == nullptr) { - delete fc; - return; - } - surface->SetWidthAndHeight(1920, 1080); /* 1920:width,1080:height */ - fc->AddSurface(*surface); - cam_->TriggerSingleCapture(*fc); - } - ``` - - diff --git a/zh-cn/device-dev/guide/device-iotcamera-control-demo-videodevguide.md b/zh-cn/device-dev/guide/device-iotcamera-control-demo-videodevguide.md deleted file mode 100755 index c949175ec624ee835cb506636bb6f0598b2b3a6f..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/guide/device-iotcamera-control-demo-videodevguide.md +++ /dev/null @@ -1,43 +0,0 @@ -# 录像开发指导 - -- [使用场景](#zh-cn_topic_0000001051451869_section186634310418) -- [接口说明](#zh-cn_topic_0000001051451869_section125479541744) -- [约束与限制](#zh-cn_topic_0000001051451869_section1165911177314) -- [开发步骤](#zh-cn_topic_0000001051451869_section1196016315516) - -## 使用场景 - -使用camera采集视频码流。 - -## 接口说明 - -参考“拍照开发指导”的“接口说明”。 - -## 约束与限制 - -无。 - -## 开发步骤 - -1. 参考“拍照开发指导”中步骤1、步骤2、步骤3、步骤4。 -2. 获取录像FrameConfig。 - - ``` - /* 从recorder获取surface */ - Surface *surface = recorder_->GetSurface(0); - surface->SetWidthAndHeight(1920, 1080); - surface->SetQueueSize(3); - surface->SetSize(1024 * 1024); - /* 将surface配置到帧配置中 */ - FrameConfig *fc = new FrameConfig(FRAME_CONFIG_RECORD); - fc->AddSurface(*surface); - ``` - -3. 开启和停止录像。 - - ``` - stateCallback->camera_->TriggerLoopingCapture(*fc); // 开始录像 - stateCallback->camera_->StopLoopingCapture(); // 结束录像 - ``` - - diff --git a/zh-cn/device-dev/guide/device-iotcamera-control-example.md b/zh-cn/device-dev/guide/device-iotcamera-control-example.md deleted file mode 100644 index 2a8f94bc82951c7d998d2d9519e9aba6f4f05818..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/guide/device-iotcamera-control-example.md +++ /dev/null @@ -1,45 +0,0 @@ -# 应用实例 - -- 开发板介绍、编译烧录、运行镜像等操作请参考[Hi3518快速入门](../quick-start/quickstart-lite-overview.md),编译结果包含示例,结果文件为out/ipcamera\_hi3518ev300/dev\_tools/bin/camera\_sample,可将文件通过读卡器复制至TF卡中,或者修改camera\_sample的编译脚本将结果文件复制至rootfs.img中。 - - 修改applications/sample/camera/media/BUILD.gn中的output\_dir。 - - - 修改前:output\_dir = "$root\_out\_dir/dev\_tools" - - 修改后:output\_dir = "$root\_out\_dir/" - - 重新执行源码仓编译并烧写入单板后,可在单板bin目录下找到camera\_sample文件。 - -- 相机示例代码为applications/sample/camera/media/camera\_sample.cpp。 - - >![](../public_sys-resources/icon-notice.gif) **须知:** - >实例运行拍照和录像功能需要插入TF卡\(最大容量支持128GB\),系统启动后时自动将TF卡挂载至/sdcard目录,如果在启动后插入则需要手动挂载。查看拍照和录像内容可将TF卡中内容复制到电脑中进行查看,预览功能无需TF卡。 - - -1. 通过cd命令进入可执行程序的末端路径,启动camera\_sample,执行命令如下图。 - - **图 1** 启动示例 - ![](figures/启动示例.png "启动示例") - - 运行后的控制命令如串口打印所示,按s键停止当前操作(包括录像和预览),按q键退出示例程序。 - -2. 按1进行拍照,拍照的文件格式为jpg,存储在/sdcard,文件名Capture\* - - **图 2** 输入拍照指令后串口打印日志 - ![](figures/输入拍照指令后串口打印日志.png "输入拍照指令后串口打印日志") - - 若想查看保存文件,可在退出程序后进入文件系统查看,退出后重新进入请回到步骤1。 - - **图 3** 查看文件图 - ![](figures/查看文件图.png "查看文件图") - -3. 按2进行录像,录像的文件格式为mp4,存储在/sdcard,文件名Record\*,按s键停止 - - **图 4** 输入录像指令后串口打印日志 - ![](figures/输入录像指令后串口打印日志.png "输入录像指令后串口打印日志") - -4. 按q键退出 - - **图 5** 输出退出指令后串口打印日志 - ![](figures/输出退出指令后串口打印日志.png "输出退出指令后串口打印日志") - - diff --git a/zh-cn/device-dev/guide/device-iotcamera-control-overview.md b/zh-cn/device-dev/guide/device-iotcamera-control-overview.md deleted file mode 100644 index 03fef3f55e4efd17bb96166a158e592c0f1316f5..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/guide/device-iotcamera-control-overview.md +++ /dev/null @@ -1,10 +0,0 @@ -# 概述 - -本文档将介绍如何基于IoT Camera开发板,利用开发套件中自带的摄像头,完成拍照、录像功能。 - -开发者可通过执行示例应用,对开发板的外设控制有了更深入了解后,可使用开发板完成摄像头等设备。 - -若开发者想先查看示例效果,请进入[应用实例](device-iotcamera-control-example.md)。如需自定义应用行为,可参考下节“示例开发”对示例代码进行修改。 - -相机开发基本概念可参考:[相机开发概述](../subsystems/subsys-multimedia-camera-overview.md)。 - diff --git a/zh-cn/device-dev/guide/device-outerdriver-demo.md b/zh-cn/device-dev/guide/device-outerdriver-demo.md index 29798f2ecd1c9d4bab66c032615d91a153aae8a0..38fe3a47a2a23eb8380f711e7ef4d9324060916a 100644 --- a/zh-cn/device-dev/guide/device-outerdriver-demo.md +++ b/zh-cn/device-dev/guide/device-outerdriver-demo.md @@ -25,7 +25,7 @@ Input驱动模型核心部分由设备管理层、公共驱动层、器件驱动 ## 环境搭建 -环境准备具体操作请参考[标准系统基础环境搭建](../quick-start/quickstart-standard-overview.md)。 +环境准备具体操作请参考[快速入门环境搭建章节](../quick-start/Readme-CN.md)。 >![](../public_sys-resources/icon-notice.gif) **须知:** >本示例针对OpenHarmony轻量系统、小型系统、标准系统都适用,本文以标准系统为例。其他系统的开发者可参考对应系统的指导文档进行环境搭建。 @@ -316,7 +316,7 @@ Input模型由三层驱动组成,开发者适配一款全新触摸屏驱动只 其中touch\_gt911.o为本示例中追加的内容。 -2. 具体编译及烧录操作请参考[标准系统快速入门编译及烧录章节](../quick-start/quickstart-standard-overview.md)。 +2. 具体编译及烧录操作请参考[标准系统快速入门的编译及烧录章节](../quick-start/Readme-CN.md)。 ## 调试验证 diff --git a/zh-cn/device-dev/guide/device-wlan-led-control.md b/zh-cn/device-dev/guide/device-wlan-led-control.md index 834a4332098799654d76f8ae76071c5a00edbf99..f5c5aa15d37ca16a1c2a3c9ea959cbd0fa15e83f 100644 --- a/zh-cn/device-dev/guide/device-wlan-led-control.md +++ b/zh-cn/device-dev/guide/device-wlan-led-control.md @@ -10,7 +10,7 @@ OpenHarmony WLAN模组基于Hi3861平台提供了丰富的外设操作能力, ## 开发 -1. 请先完成[《Hi3861快速入门》](../quick-start/quickstart-lite-overview.md)。 +1. 请先完成[轻量系统快速入门](../quick-start/Readme-CN.md)。 LED控制参考示例存放于applications/sample/wifi-iot/app/iothardware/led\_example.c文件中。 @@ -100,7 +100,7 @@ OpenHarmony WLAN模组基于Hi3861平台提供了丰富的外设操作能力, ## 验证 -编译过程请参考《[Hi3861快速入门-源码编译](../quick-start/quickstart-lite-steps-hi3861-building.md)》,烧录过程请参考《[Hi3861快速入门-镜像烧录](../quick-start/quickstart-lite-steps-hi3861-burn.md)》。 +编译过程请参考[轻量系统快速入门的编译章节](../quick-start/quickstart-ide-3861-build.md),烧录过程请参考[轻量系统快速入门的烧录章节](../quick-start/quickstart-ide-3861-burn.md)。 完成以上两步后,按下RST键复位模组,可发现LED在周期性闪烁,与预期相符,验证完毕。 diff --git a/zh-cn/device-dev/kernel/kernel-mini-overview.md b/zh-cn/device-dev/kernel/kernel-mini-overview.md index dd3ac86578e263c3e311cf25c34eeb9d97aa545f..4f8c132c2dcd4b8c99f7a7355208f5345b3bdf9b 100644 --- a/zh-cn/device-dev/kernel/kernel-mini-overview.md +++ b/zh-cn/device-dev/kernel/kernel-mini-overview.md @@ -98,7 +98,7 @@ LiteOS-M内核的编译构建系统是一个基于gn和ninja的组件化构建 ### 搭建系统基础环境 -在搭建各个开发板环境前,需要完成OpenHarmony系统基础环境搭建。系统基础环境主要是指OpenHarmony的编译环境和开发环境,详细介绍请参考官方站点[开发环境准备](../quick-start/quickstart-lite-env-setup.md)。开发者需要根据环境搭建文档完成环境搭建。 +在搭建各个开发板环境前,需要完成OpenHarmony系统基础环境搭建。系统基础环境主要是指OpenHarmony的编译环境和开发环境,详细介绍请参考官方站点[快速入门环境搭建部分](../quick-start/Readme-CN.md)。开发者需要根据环境搭建文档完成环境搭建。 ### 获取OpenHarmony源码 diff --git a/zh-cn/device-dev/porting/porting-smallchip-kernel-linux.md b/zh-cn/device-dev/porting/porting-smallchip-kernel-linux.md index 3e0a2da086cf2159e079694de88099de185c73d3..2b19663ca9314d684662e40ed273229aa72da186 100644 --- a/zh-cn/device-dev/porting/porting-smallchip-kernel-linux.md +++ b/zh-cn/device-dev/porting/porting-smallchip-kernel-linux.md @@ -45,7 +45,7 @@ Linux内核移植主要涉及基于linux内核基线合入三方芯片补丁后 4. 烧录启动。 由于不同芯片的开发板的烧录方式不一样,此处不表述具体的烧录方式。需要注意烧录的各镜像的大小及启动参数的配置,参考hi3516dv300采用uboot启动参数: - + ``` setenv bootargs 'mem=128M console=ttyAMA0,115200 root=/dev/mmcblk0p3 ro rootfstype=ext4 rootwait blkdevparts=mmcblk0:1M(boot),9M(kernel),50M(rootfs),50M(userfs)' ``` @@ -53,7 +53,7 @@ Linux内核移植主要涉及基于linux内核基线合入三方芯片补丁后 ## 验证 -调试init进程、启动shell和运行简单的用户态程序,验证内核移植是否成功。OpenHarmony[小型系统](../quick-start/quickstart-lite-overview.md)的OS镜像结构以及linux用户态的启动流程如下图1所示: +调试init进程、启动shell和运行简单的用户态程序,验证内核移植是否成功。OpenHarmony小型系统的OS镜像结构以及linux用户态的启动流程如下图1所示: **图1** 基于linux内核的OS镜像结构和用户态程序启动流程 ![zh-cn_image_0000001154372318](figures/zh-cn_image_0000001154372318.png) diff --git a/zh-cn/device-dev/porting/porting-smallchip-prepare-building.md b/zh-cn/device-dev/porting/porting-smallchip-prepare-building.md index 9a1463516ad1720c7e7d53a2e755ea40a6d8058a..5806ea15a5a72d3b363573fdebcbe0a57388b65b 100644 --- a/zh-cn/device-dev/porting/porting-smallchip-prepare-building.md +++ b/zh-cn/device-dev/porting/porting-smallchip-prepare-building.md @@ -2,7 +2,7 @@ ## 编译环境搭建 -首先请搭建OpenHarmony基础环境,步骤请参考轻量和小型系统入门[安装Hi3861开发板环境](../quick-start/quickstart-lite-steps-hi3861-setting.md)。用户态和LiteOS-A的内核态编译均使用llvm编译器编译,安装方法在搭建基础环境中已提供。若选择移植linux内核,请执行如下命令安装gcc-arm-linux-gnueabi交叉编译工具链,用于编译linux内核态镜像: +首先请搭建OpenHarmony基础环境,相关操作请参考[快速入门环境搭建章节](../quick-start/Readme-CN.md)。用户态和LiteOS-A的内核态编译均使用llvm编译器编译,安装方法在搭建基础环境中已提供。若选择移植linux内核,请执行如下命令安装gcc-arm-linux-gnueabi交叉编译工具链,用于编译linux内核态镜像: ``` diff --git a/zh-cn/device-dev/porting/porting-smallchip-prepare-needs.md b/zh-cn/device-dev/porting/porting-smallchip-prepare-needs.md index b8bcb956d8ccc29e138fde8784604b89caa9159b..e18f2c2236395eca02de67659a501f4cfce5305e 100644 --- a/zh-cn/device-dev/porting/porting-smallchip-prepare-needs.md +++ b/zh-cn/device-dev/porting/porting-smallchip-prepare-needs.md @@ -1,15 +1,15 @@ # 移植须知 -本文详细介绍如何将OpenHarmony[小型系统](../quick-start/quickstart-lite-overview.md)的linux和LiteOS-A内核移植到新的开发板上,要求读者具有一定的嵌入式系统开发经验。建议先查看[入门指导](../../OpenHarmony-Overview_zh.md),以了解OpenHarmony软件架构、目录结构、内核子系统和驱动子系统相关知识。当前小型系统已适配的开发板如下表所示: +本文详细介绍如何将OpenHarmony小型系统的linux和LiteOS-A内核移植到新的开发板上,要求读者具有一定的嵌入式系统开发经验。建议先查看[入门指导](../../OpenHarmony-Overview_zh.md),以了解OpenHarmony软件架构、目录结构、内核子系统和驱动子系统相关知识。当前小型系统已适配的开发板如下表所示: **表1** OpenHarmony小型系统已适配的开发板 -| 开发板 | 内核 | arch | ROM | RAM | 文件系统 | Flash 类型 | +| 开发板 | 内核 | arch | ROM | RAM | 文件系统 | Flash 类型 | | -------- | -------- | -------- | -------- | -------- | -------- | -------- | -| hispark_taurus | LiteOS-A和linux-4.19 | ARM cortex-a7 | 8G | 1GB | VFAT、EXT4 | eMMC4.5 | -| hispark_aries | LiteOS-A | ARM cortex-a7 | 16M | 512M | JFFS2 | SPI NOR | +| hispark_taurus | LiteOS-A和linux-4.19 | ARM cortex-a7 | 8G | 1GB | VFAT、EXT4 | eMMC4.5 | +| hispark_aries | LiteOS-A | ARM cortex-a7 | 16M | 512M | JFFS2 | SPI NOR | 表1中的开发板可作为待移植开发板的参考,当前LiteOS-A和linux-4.19支持的arch、ROM占用、支持的文件系统和支持的Flash类型如下表所示: @@ -17,7 +17,7 @@ **表2** OpenHarmony小型系统内核移植信息表 -| 内核 | 支持的arch | ROM | 文件系统 | Flash类型 | +| 内核 | 支持的arch | ROM | 文件系统 | Flash类型 | | -------- | -------- | -------- | -------- | -------- | -| LiteOS-A | ARMv7 | > 2M | VFAT、JFFS2、YAFFS2 | SPI NOR、NAND、EMMC | -| linux-4.19 | ARM, ARM64、 MIPS、 X86等 | > 5M | VFAT、JFFS2、YAFFS、EXT/2/3/4、NFS等等 | NOR、NAND、EMMC等 | +| LiteOS-A | ARMv7 | > 2M | VFAT、JFFS2、YAFFS2 | SPI NOR、NAND、EMMC | +| linux-4.19 | ARM, ARM64、 MIPS、 X86等 | > 5M | VFAT、JFFS2、YAFFS、EXT/2/3/4、NFS等等 | NOR、NAND、EMMC等 | diff --git a/zh-cn/device-dev/porting/porting-thirdparty-cmake.md b/zh-cn/device-dev/porting/porting-thirdparty-cmake.md index 94b137955ecd3608b9d1e3ab31ee257d2a0d4d64..72b327ff5ed244779d6fea182041418c01ec2a84 100644 --- a/zh-cn/device-dev/porting/porting-thirdparty-cmake.md +++ b/zh-cn/device-dev/porting/porting-thirdparty-cmake.md @@ -10,23 +10,23 @@ **表1** 源码目录结构 -| 名称 | 描述 | +| 名称 | 描述 | | -------- | -------- | -| double-conversion/cmake/ | CMake组织编译使用到的模板 | -| double-conversion/double-conversion/ | 源文件目录 | -| double-conversion/msvc/ | - | -| double-conversion/test/ | 测试用例源文件 | -| double-conversion/.gitignore | - | -| double-conversion/AUTHORS | - | -| double-conversion/BUILD | - | -| double-conversion/CMakeLists.txt | CMake方式顶层编译组织文件 | -| double-conversion/COPYING | - | -| double-conversion/Changelog | - | -| double-conversion/LICENSE | - | -| double-conversion/Makefile | - | -| double-conversion/README.md | - | -| double-conversion/SConstruct | - | -| double-conversion/WORKSPACE | - | +| double-conversion/cmake/ | CMake组织编译使用到的模板 | +| double-conversion/double-conversion/ | 源文件目录 | +| double-conversion/msvc/ | - | +| double-conversion/test/ | 测试用例源文件 | +| double-conversion/.gitignore | - | +| double-conversion/AUTHORS | - | +| double-conversion/BUILD | - | +| double-conversion/CMakeLists.txt | CMake方式顶层编译组织文件 | +| double-conversion/COPYING | - | +| double-conversion/Changelog | - | +| double-conversion/LICENSE | - | +| double-conversion/Makefile | - | +| double-conversion/README.md | - | +| double-conversion/SConstruct | - | +| double-conversion/WORKSPACE | - | ## 移植思路 @@ -76,7 +76,7 @@ CMake方式可通过指定工具链进行交叉编译,修改并编译该库, 2. 执行编译 linux命令行中进入double-conversion的源文件目录(即标1所示目录),执行下列命令: - + ``` mkdir build && cd build cmake .. -DBUILD_TESTING=ON -DOHOS_SYSROOT_PATH="..." @@ -90,24 +90,24 @@ CMake方式可通过指定工具链进行交叉编译,修改并编译该库, **表2** 编译生成文件目录结构 - | 名称 | 描述 | + | 名称 | 描述 | | -------- | -------- | - | double-conversion/build/libdouble-conversion.a | 生成的静态库文件 | - | double-conversion/build/test/ | 目录下存放生成的测试用例和相关CMake缓存文件 | - | double-conversion/build/CMakeCache.txt | CMake构建过程中的缓存文件 | - | double-conversion/build/CMakeFiles/ | - | - | double-conversion/build/cmake_install.cmake | - | - | double-conversion/build/CTestTestfile.cmake | - | - | double-conversion/build/DartConfiguration.tcl | - | - | double-conversion/build/generated/ | - | - | double-conversion/build/Makefile | - | - | double-conversion/build/Testing/ | - | + | double-conversion/build/libdouble-conversion.a | 生成的静态库文件 | + | double-conversion/build/test/ | 目录下存放生成的测试用例和相关CMake缓存文件 | + | double-conversion/build/CMakeCache.txt | CMake构建过程中的缓存文件 | + | double-conversion/build/CMakeFiles/ | - | + | double-conversion/build/cmake_install.cmake | - | + | double-conversion/build/CTestTestfile.cmake | - | + | double-conversion/build/DartConfiguration.tcl | - | + | double-conversion/build/generated/ | - | + | double-conversion/build/Makefile | - | + | double-conversion/build/Testing/ | - | ## 测试 1. 搭建OpenHarmony环境 - 以Hi3516DV300为例,编译出OpenHarmony镜像,烧写到开发板,参考[开发Hi3516第一个示例程序](../quick-start/quickstart-lite-steps-hi3516-running.md)。 + 以Hi3516DV300为例,编译出OpenHarmony镜像,烧写到开发板,相关操作可参考[快速入门小型系统部分](../quick-start/Readme-CN.md)。 进入系统如下所示: @@ -129,7 +129,7 @@ CMake方式可通过指定工具链进行交叉编译,修改并编译该库, ``` 上述命令执行结果部分展示: - + ``` test-bignum/Assign< @@ -178,12 +178,12 @@ CMake方式可通过指定工具链进行交叉编译,修改并编译该库, **表3** 添加到工程后的目录结构 - | 名称 | 描述 | + | 名称 | 描述 | | -------- | -------- | - | OpenHarmony/third_party/double-conversion/BUILD.gn | 将三方库加入工程的gn适配文件 | - | OpenHarmony/third_party/double-conversion/build_thirdparty.py | GN调用shell命令脚本文件,由上面GN文件将相关命令传入,实现GN转CMake | - | OpenHarmony/third_party/double-conversion/config.gni | 三方库编译配置文件,可修改该文件来配置用例是否参与构建等 | - | OpenHarmony/third_party/double-conversion/double-conversion/ | 要移植的三方库目录 | + | OpenHarmony/third_party/double-conversion/BUILD.gn | 将三方库加入工程的gn适配文件 | + | OpenHarmony/third_party/double-conversion/build_thirdparty.py | GN调用shell命令脚本文件,由上面GN文件将相关命令传入,实现GN转CMake | + | OpenHarmony/third_party/double-conversion/config.gni | 三方库编译配置文件,可修改该文件来配置用例是否参与构建等 | + | OpenHarmony/third_party/double-conversion/double-conversion/ | 要移植的三方库目录 | 2. 添加gn到CMake适配文件 - **新增的BUILD.gn文件实现如下,其他采用CMake方式可独立编译的三方库移植到OpenHarmony平台时只需修改路径即可**。 @@ -289,7 +289,7 @@ CMake方式可通过指定工具链进行交叉编译,修改并编译该库, 执行下列命令 - + ``` hb build -T //third_party/double-conversion:double-conversion ``` diff --git a/zh-cn/device-dev/quick-start/Readme-CN.md b/zh-cn/device-dev/quick-start/Readme-CN.md index bdb003fcbd532f07ec1fc149ffc7314e7232af65..bb9ddaaf38bf9545eb0d2ea904bc148118c41d78 100644 --- a/zh-cn/device-dev/quick-start/Readme-CN.md +++ b/zh-cn/device-dev/quick-start/Readme-CN.md @@ -1,99 +1,59 @@ # 快速入门 -- 轻量和小型系统快速入门(IDE方式,推荐) - - [轻量与小型系统入门概述](quickstart-ide-lite-overview.md) - - 准备轻量与小型系统环境 - - [搭建Windows+Ubuntu混合开发环境](quickstart-ide-lite-env-setup-win-ubuntu.md) - - [获取源码](quickstart-ide-lite-sourcecode-acquire.md) - - [导入源码工程](quickstart-ide-lite-create-project.md) - - 运行“Hello World” - - Hi3861开发板 - - [编写“Hello World”程序](quickstart-ide-lite-steps-hi3861-helloworld.md) - - [编译](quickstart-ide-lite-steps-hi3861-building.md) - - [烧录](quickstart-ide-lite-steps-hi3861-burn.md) - - [联网](quickstart-ide-lite-steps-hi3861-netconfig.md) - - [调试验证](quickstart-ide-lite-steps-hi3861-debug.md) - - [运行](quickstart-ide-lite-steps-hi3861-running.md) - - Hi3516开发板 - - [编写“Hello World”程序](quickstart-ide-lite-steps-hi3516-helloworld.md) - - [编译](quickstart-ide-lite-steps-hi3516-building.md) - - [烧录](quickstart-ide-lite-steps-hi3516-burn.md) - - [运行](quickstart-ide-lite-steps-hi3516-running.md) - - 附录 - - [Hi3861开发板介绍](quickstart-ide-lite-introduction-hi3861.md) - - [Hi3516开发板介绍](quickstart-ide-lite-introduction-hi3516.md) - - [编译形态整体说明](quickstart-build.md) -- 轻量和小型系统快速入门(安装包方式) - - [轻量与小型系统入门概述](quickstart-lite-overview.md) - - [搭建轻量与小型系统环境](quickstart-lite-env-setup.md) - - 运行“Hello World” - - Hi3861开发板 - - [安装Hi3861开发板环境](quickstart-lite-steps-hi3861-setting.md) - - [编写“Hello World”程序](quickstart-lite-steps-hi3861-helloworld.md) - - [编译](quickstart-lite-steps-hi3861-building.md) - - [烧录](quickstart-lite-steps-hi3861-burn.md) - - [联网](quickstart-lite-steps-hi3861-netconfig.md) - - [调试验证](quickstart-lite-steps-hi3861-debug.md) - - [运行](quickstart-lite-steps-hi3861-running.md) - - Hi3516开发板 - - [安装Hi3516开发板环境](quickstart-lite-steps-hi3516-setting.md) - - [编写“Hello World”程序](quickstart-lite-steps-hi3516-helloworld.md) - - [编译](quickstart-lite-steps-hi3516-building.md) - - [烧录](quickstart-lite-steps-hi3516-burn.md) - - [运行](quickstart-lite-steps-hi3516-running.md) - - 常见问题 - - [hb安装异常](quickstart-lite-faq-hb.md) - - [编译异常](quickstart-lite-faq-compose.md) - - [烧录异常](quickstart-lite-faq-burning.md) - - 附录 - - 开发板介绍 - - [Hi3861开发板介绍](quickstart-lite-introduction-hi3861.md) - - [Hi3516开发板介绍](quickstart-lite-introduction-hi3516.md) - - [参考信息](quickstart-lite-reference.md) - - [使用HiTool烧录代码](quickstart-lite-hitool.md) - - [编译形态整体说明](quickstart-build.md) -- 标准系统快速入门(IDE方式,推荐) - - [标准系统入门概述](quickstart-ide-standard-overview.md) - - 准备标准系统环境 - - [搭建Windows+Ubuntu混合开发环境](quickstart-ide-standard-env-setup-win-ubuntu.md) - - [获取源码](quickstart-ide-standard-sourcecode-acquire.md) - - [导入源码工程](quickstart-ide-standard-create-project.md) - - 运行“Hello World” - - Hi3516开发板 - - [编写“Hello World”程序](quickstart-ide-standard-running-hi3516-create.md) - - [编译](quickstart-ide-standard-running-hi3516-build.md) - - [烧录](quickstart-ide-standard-running-hi3516-burning.md) - - [运行](quickstart-ide-standard-running-hi3516-running.md) - - RK3568开发板 - - [编写“Hello World”程序](quickstart-ide-standard-running-rk3568-create.md) - - [编译](quickstart-ide-standard-running-rk3568-build.md) - - [烧录](quickstart-ide-standard-running-rk3568-burning.md) - - [运行](quickstart-ide-standard-running-rk3568-running.md) - - 附录 - - [Hi3516开发板介绍](quickstart-ide-standard-board-introduction-hi3516.md) - - [RK3568开发板介绍](quickstart-ide-standard-board-introduction-rk3568.md) - - [编译形态整体说明](quickstart-build.md) -- 标准系统快速入门(安装包方式) - - [标准系统入门概述](quickstart-standard-overview.md) - - [搭建标准系统环境](quickstart-standard-env-setup.md) - - 运行“Hello World” - - Hi3516开发板 - - [编写“Hello World”程序](quickstart-std-3516-create.md) - - [编译](quickstart-standard-running-hi3516-build.md) - - [烧录](quickstart-standard-running-hi3516-burning.md) - - [运行](quickstart-standard-running-hi3516-running.md) - - RK3568开发板 - - [编写“Hello World”程序](quickstart-standard-running-rk3568-create.md) - - [编译](quickstart-standard-running-rk3568-build.md) - - [烧录](quickstart-standard-running-rk3568-burning.md) - - [运行](quickstart-standard-running-rk3568-running.md) - - 常见问题 - - [hb安装异常](quickstart-standard-faq-hb.md) - - [编译异常](quickstart-standard-faq-compose.md) - - [烧录异常](quickstart-standard-faq-burning.md) - - 附录 - - 开发板介绍 - - [Hi3516开发板介绍](quickstart-standard-board-introduction-hi3516.md) - - [RK3568开发板介绍](quickstart-standard-board-introduction-rk3568.md) - - [参考信息](quickstart-standard-reference.md) - - [使用HiTool烧录代码](quickstart-standard-hitool.md) - - [编译形态整体说明](quickstart-build.md) \ No newline at end of file + +- [快速入门概述](quickstart-overview.md) +- 基于IDE入门 + - 搭建开发环境 + - [搭建Windows环境](quickstart-ide-env--win.md) + - [搭建Ubuntu环境](quickstart-ide-env-ubuntu.md) + - [配置远程访问环境](quickstart-ide-env-remote.md) + - [创建工程并获取源码](quickstart-ide-import-project.md) + - 轻量系统(基于Hi3861开发板) + - [编写“Hello World”程序](quickstart-ide-3861-helloworld.md) + - [编译](quickstart-ide-3861-build.md) + - [烧录](quickstart-ide-3861-burn.md) + - [运行](quickstart-ide-3861-running.md) + - 小型系统(基于Hi3516开发板) + - [编写“Hello World”程序](quickstart-ide-3516-helloworld.md) + - [编译](quickstart-ide-3516-build.md) + - [烧录](quickstart-ide-3516-burn.md) + - [运行](quickstart-ide-3516-running.md) + - 标准系统(基于RK3568开发板) + - [编写“Hello World”程序](quickstart-ide-3568-helloworld.md) + - [编译](quickstart-ide-3568-build.md) + - [烧录](quickstart-ide-3568-burn.md) + - [运行](quickstart-ide-3568-running.md) +- 基于命令行入门 + - 搭建开发环境 + - [准备开发环境](quickstart-pkg-prepare.md) + - [安装库和工具集](quickstart-pkg-install_package.md) + - [获取源码](quickstart-pkg-sourcecode.md) + - [安装编译工具](quickstart-pkg-install_tool.md) + - 轻量系统(基于Hi3861开发板) + - [安装Hi3861开发板特有环境](quickstart-pkg-3861-tool.md) + - [编写“Hello World”程序](quickstart-pkg-3861-helloworld.md) + - [编译](quickstart-pkg-3861-build.md) + - [烧录](quickstart-pkg-3861-burn.md) + - [运行](quickstart-pkg-3861-running.md) + - 小型系统(基于Hi3516开发板) + - [编写“Hello World”程序](quickstart-pkg-3516-helloworld.md) + - [编译](quickstart-pkg-3516-build.md) + - [烧录](quickstart-pkg-3516-burn.md) + - [运行](quickstart-pkg-3516-running.md) + - 标准系统(基于RK3568开发板) + - [编写“Hello World”程序](quickstart-pkg-3568-helloworld.md) + - [编译](quickstart-pkg-3568-build.md) + - [烧录](quickstart-pkg-3568-burn.md) + - [运行](quickstart-pkg-3568-running.md) + - 常用信息 + - [配置代理](quickstart-pkg-common-proxy.md) + - [使用build.sh脚本编译源码](quickstart-pkg-common-build.md) + - [hb安装异常处理](quickstart-pkg-common-hberr.md) + - [编译异常处理](quickstart-pkg-common-builderr.md) + - [烧录异常处理](quickstart-pkg-common-burnerr.md) +- 附录 + - [Hi3516开发板介绍](quickstart-appendix-hi3516.md) + - [Hi3861开发板介绍](quickstart-appendix-hi3861.md) + - [RK3568开发板介绍](quickstart-appendix-rk3568.md) + - [编译形态整体说明](quickstart-appendix-compiledform.md) + - [Hi3516标准系统入门(IDE方式)](quickstart-appendix-hi3516-ide.md) + - [Hi3516标准系统入门(命令行方式)](quickstart-appendix-hi3516-pkg.md) diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001312778829.png b/zh-cn/device-dev/quick-start/figures/3516-small-partitions.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001312778829.png rename to zh-cn/device-dev/quick-start/figures/3516-small-partitions.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001223190441.png b/zh-cn/device-dev/quick-start/figures/3516-small-usb.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001223190441.png rename to zh-cn/device-dev/quick-start/figures/3516-small-usb.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001239661509.png b/zh-cn/device-dev/quick-start/figures/3865-uploader.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001239661509.png rename to zh-cn/device-dev/quick-start/figures/3865-uploader.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198566365.png b/zh-cn/device-dev/quick-start/figures/Phoenix-upload.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198566365.png rename to zh-cn/device-dev/quick-start/figures/Phoenix-upload.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001209906547.png b/zh-cn/device-dev/quick-start/figures/bootloader.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001209906547.png rename to zh-cn/device-dev/quick-start/figures/bootloader.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594753.png b/zh-cn/device-dev/quick-start/figures/faq-download-ecdsa.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594753.png rename to zh-cn/device-dev/quick-start/figures/faq-download-ecdsa.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794696.png b/zh-cn/device-dev/quick-start/figures/faq-download-pycrypto.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794696.png rename to zh-cn/device-dev/quick-start/figures/faq-download-pycrypto.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474573.png b/zh-cn/device-dev/quick-start/figures/faq-download-six.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474573.png rename to zh-cn/device-dev/quick-start/figures/faq-download-six.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114636.png b/zh-cn/device-dev/quick-start/figures/faq-python-add-soft-link.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114636.png rename to zh-cn/device-dev/quick-start/figures/faq-python-add-soft-link.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922322.png b/zh-cn/device-dev/quick-start/figures/faq-python-error.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922322.png rename to zh-cn/device-dev/quick-start/figures/faq-python-error.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602414.png b/zh-cn/device-dev/quick-start/figures/faq-python3-not-found.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602414.png rename to zh-cn/device-dev/quick-start/figures/faq-python3-not-found.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602398.png b/zh-cn/device-dev/quick-start/figures/helloworld.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602398.png rename to zh-cn/device-dev/quick-start/figures/helloworld.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234753.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-burn-uboot-success.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234753.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-burn-uboot-success.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234765.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-find-vscode.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234765.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-find-vscode.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202457.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-setting-allow.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202457.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-setting-allow.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634732.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-setting.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634732.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-setting.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442273.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-vscode-allow-network.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442273.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-firewall-vscode-allow-network.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922306.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-network-fail.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922306.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-network-fail.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634728.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-access-denied.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634728.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-access-denied.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226954644.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-check.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226954644.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-check.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202469.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-close-terminal.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202469.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-close-terminal.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562449.png b/zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-reburn.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562449.png rename to zh-cn/device-dev/quick-start/figures/hi3516-faq-serial-reburn.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634692.png b/zh-cn/device-dev/quick-start/figures/hi3861-front.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634692.png rename to zh-cn/device-dev/quick-start/figures/hi3861-front.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794688.png b/zh-cn/device-dev/quick-start/figures/hi3861-function.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794688.png rename to zh-cn/device-dev/quick-start/figures/hi3861-function.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794660.png b/zh-cn/device-dev/quick-start/figures/hi3861-rear.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794660.png rename to zh-cn/device-dev/quick-start/figures/hi3861-rear.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234749.png b/zh-cn/device-dev/quick-start/figures/hi3861-scons-install-success.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234749.png rename to zh-cn/device-dev/quick-start/figures/hi3861-scons-install-success.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634668.png b/zh-cn/device-dev/quick-start/figures/hi3861-test.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634668.png rename to zh-cn/device-dev/quick-start/figures/hi3861-test.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198466090.png b/zh-cn/device-dev/quick-start/figures/hi3861-upload-restart.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198466090.png rename to zh-cn/device-dev/quick-start/figures/hi3861-upload-restart.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001164506870.png b/zh-cn/device-dev/quick-start/figures/monitor.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001164506870.png rename to zh-cn/device-dev/quick-start/figures/monitor.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202289.gif b/zh-cn/device-dev/quick-start/figures/press-any-key-to-enter-the-system.gif similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202289.gif rename to zh-cn/device-dev/quick-start/figures/press-any-key-to-enter-the-system.gif diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001268278138.png b/zh-cn/device-dev/quick-start/figures/quick-start-hi3516-standard-build.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001268278138.png rename to zh-cn/device-dev/quick-start/figures/quick-start-hi3516-standard-build.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762210.png b/zh-cn/device-dev/quick-start/figures/quickstart-appendix-hi3516-ide-run-set.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762210.png rename to zh-cn/device-dev/quick-start/figures/quickstart-appendix-hi3516-ide-run-set.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602238.png b/zh-cn/device-dev/quick-start/figures/quickstart-appendix-hi3516-ide-run-start.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602238.png rename to zh-cn/device-dev/quick-start/figures/quickstart-appendix-hi3516-ide-run-start.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762374.png b/zh-cn/device-dev/quick-start/figures/quickstart-appendix-hi3516-ide-run.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762374.png rename to zh-cn/device-dev/quick-start/figures/quickstart-appendix-hi3516-ide-run.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001249937194.png b/zh-cn/device-dev/quick-start/figures/quickstart-hi3516-standard-hitool-select.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001249937194.png rename to zh-cn/device-dev/quick-start/figures/quickstart-hi3516-standard-hitool-select.png diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-mirror.png b/zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-mirror.png new file mode 100644 index 0000000000000000000000000000000000000000..56ec34df8900dbe9f62a7fb5fb0825f9535f91a0 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-mirror.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-restart.png b/zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-restart.png new file mode 100644 index 0000000000000000000000000000000000000000..97275b916212138aa8d4a40e3b5b879671d8347c Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-restart.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226954648.png b/zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-success.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226954648.png rename to zh-cn/device-dev/quick-start/figures/quickstart-ide-3861-running-success.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001317198053.png b/zh-cn/device-dev/quick-start/figures/quickstart-lite-3516-build.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001317198053.png rename to zh-cn/device-dev/quick-start/figures/quickstart-lite-3516-build.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001317078157.png b/zh-cn/device-dev/quick-start/figures/quickstart-lite-3861-build.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001317078157.png rename to zh-cn/device-dev/quick-start/figures/quickstart-lite-3861-build.png diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-overview-process.png b/zh-cn/device-dev/quick-start/figures/quickstart-overview-process.png new file mode 100644 index 0000000000000000000000000000000000000000..457cd2745ff907d960a06d2eee6ab9c8cdf1a3d3 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-overview-process.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234769.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3516-running.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234769.png rename to zh-cn/device-dev/quick-start/figures/quickstart-pkg-3516-running.png diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3568-running-restart.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3568-running-restart.png new file mode 100644 index 0000000000000000000000000000000000000000..fb835e7325ec19cc9b9f99feca68a43fe6b9896f Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3568-running-restart.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-burning.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-burning.png new file mode 100644 index 0000000000000000000000000000000000000000..d6156b480558ca02e0d1c60037f53671bda53bd1 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-burning.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-connect.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-connect.png new file mode 100644 index 0000000000000000000000000000000000000000..1ceffb203eb4d8fa629b26c937744333f97a9eb7 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-connect.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-end.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-end.png new file mode 100644 index 0000000000000000000000000000000000000000..cf6c9da952d239c7cd81cc48266d7503f02eaab2 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-end.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-hiburn.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-hiburn.png new file mode 100644 index 0000000000000000000000000000000000000000..85156f56ba63d3ecdc645e251a37a4f3903d23dc Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-hiburn.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-selectfile.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-selectfile.png new file mode 100644 index 0000000000000000000000000000000000000000..67ff2fb770e914ed26c4eece7f830759918dd423 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-burn-selectfile.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-running-restart.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-running-restart.png new file mode 100644 index 0000000000000000000000000000000000000000..4bc097c5256c1c6068739524f05294954865f6b9 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-running-restart.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-running-success.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-running-success.png new file mode 100644 index 0000000000000000000000000000000000000000..eb82a1333c47122b8ee4a194f2e93984222df37f Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-3861-running-success.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-prepare-networkdriver.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-prepare-networkdriver.png new file mode 100644 index 0000000000000000000000000000000000000000..c2569d536003ab7abbf9289183bfcc71d87b8ee4 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-prepare-networkdriver.png differ diff --git a/zh-cn/device-dev/quick-start/figures/quickstart-pkg-prepare-setsamba.png b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-prepare-setsamba.png new file mode 100644 index 0000000000000000000000000000000000000000..a1c3a49091f525d23e4233f3f087f23e002cb4f2 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/quickstart-pkg-prepare-setsamba.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001268598074.png b/zh-cn/device-dev/quick-start/figures/quickstart-standard-rk3568-build.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001268598074.png rename to zh-cn/device-dev/quick-start/figures/quickstart-standard-rk3568-build.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198626874.png b/zh-cn/device-dev/quick-start/figures/reboot-success.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198626874.png rename to zh-cn/device-dev/quick-start/figures/reboot-success.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001210385161.png b/zh-cn/device-dev/quick-start/figures/reset_success.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001210385161.png rename to zh-cn/device-dev/quick-start/figures/reset_success.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442129.png b/zh-cn/device-dev/quick-start/figures/rk3568-front.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442129.png rename to zh-cn/device-dev/quick-start/figures/rk3568-front.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602394.png b/zh-cn/device-dev/quick-start/figures/rk3568-rear.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602394.png rename to zh-cn/device-dev/quick-start/figures/rk3568-rear.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602250.png b/zh-cn/device-dev/quick-start/figures/rk3568-run-configuration.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602250.png rename to zh-cn/device-dev/quick-start/figures/rk3568-run-configuration.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322437.png b/zh-cn/device-dev/quick-start/figures/setenv-bootargs.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322437.png rename to zh-cn/device-dev/quick-start/figures/setenv-bootargs.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001243641075.png b/zh-cn/device-dev/quick-start/figures/ubuntu-dash-to-bash.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001243641075.png rename to zh-cn/device-dev/quick-start/figures/ubuntu-dash-to-bash.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001193920448.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001193920448.png deleted file mode 100644 index 378084aa4b6a467f549a6c97bde39c7720d6b427..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001193920448.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001193983334.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001193983334.png deleted file mode 100644 index 216476f79ed241c3b77d7d2d688cb6fcdc1d8423..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001193983334.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198943768.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198943768.png deleted file mode 100644 index 5702f209752edc74d687e5e8ce7e210428f4551e..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198943768.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852753.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852753.png deleted file mode 100644 index 58d4e1027aefb6650920d9d31fbb622bebc4f726..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852753.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852754.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852754.png deleted file mode 100644 index a316d0a2c4117a16143c79426523dbc75c8dd1a8..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852754.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221012766.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221012766.png deleted file mode 100644 index 8d6c2de3aeeda000f6b0258f53de71e147ce5b27..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221012766.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602406.jpg b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602406.jpg deleted file mode 100644 index 31c5a26705cd1da6cf9cb6f3bb356994e4ecc22e..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226602406.jpg and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634676.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634676.png deleted file mode 100644 index 5e307225f0246c7d1afe8b949a8135b5a0e94a51..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634676.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634700.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634700.png deleted file mode 100644 index 8c6ec0adb87f693519f0e3b00b3aa7053f3e23ae..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226634700.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762222.jpg b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762222.jpg deleted file mode 100644 index 31c5a26705cd1da6cf9cb6f3bb356994e4ecc22e..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762222.jpg and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762378.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762378.png deleted file mode 100644 index 5006140f00ec1195d04297cdeb26ad935fb9f0e5..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226762378.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794644.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794644.png deleted file mode 100644 index e674bafb0adaa4c0ff8efaf297ee52bab3165212..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794644.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794704.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794704.png deleted file mode 100644 index 9d3bdbfe1eac9dc532496a7785e8caf99c41780b..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226794704.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922154.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922154.png deleted file mode 100644 index f1aa2e319290cf3700a49391c3f078092a80821e..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922154.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922310.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922310.png deleted file mode 100644 index 504da23ba456a9c377525e22c4630361286b5dd7..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922310.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226954632.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226954632.png deleted file mode 100644 index 4829c4ecd911b02b1066790a85360aabb5492ec3..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226954632.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082162.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082162.png deleted file mode 100644 index 6d350e5d4db03fecc5c1b8055b01cdf73667ed36..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082162.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082182.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082182.png deleted file mode 100644 index e53a724993830b5d0e6e1e9871d99dfc99c55f11..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082182.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082314.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082314.png deleted file mode 100644 index a56a33574b9766509dc8add6ba3a1ecc578fe92c..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082314.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082322.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082322.png deleted file mode 100644 index 88cba0537b5431aa266364abbe19162130f4e3ca..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082322.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082334.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082334.png deleted file mode 100644 index 527fe8b9836daf35c8300e0e84bdb2ca390f85a5..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227082334.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114584.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114584.png deleted file mode 100644 index 67e50038e79cf0f7c2a6bd79b48c63b7557179a4..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114584.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114612.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114612.png deleted file mode 100644 index ebf4f8eba03720edddfb9ef8eb38bd5f71126f2a..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114612.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114628.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114628.png deleted file mode 100644 index a56a33574b9766509dc8add6ba3a1ecc578fe92c..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114628.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114640.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114640.png deleted file mode 100644 index ff9105c313d5755f140920bbfc2399e3ccb5e2f5..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114640.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114644.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114644.png deleted file mode 100644 index 8c6ec0adb87f693519f0e3b00b3aa7053f3e23ae..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227114644.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001237801283.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001237801283.png deleted file mode 100644 index e9127be45474fa5d254a8444bc96d34ec8798108..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001237801283.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001239275843.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001239275843.png deleted file mode 100644 index b9b0c15345138b5d784e027330b650e16b97ee4e..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001239275843.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001259180828.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001259180828.png deleted file mode 100644 index e6bc8d9c83c45f71ad7ea181903503a9c8d4eb3b..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001259180828.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001261395999.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001261395999.png deleted file mode 100644 index 349188d5e1a6e11772c88615dc00deffc8dd39b7..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001261395999.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265652869.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265652869.png deleted file mode 100644 index fb6232380ebbc988a3b23dfec149daedd3f0c971..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265652869.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265772913.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265772913.png deleted file mode 100644 index e5596ca2eac9b5d2cd1c96ffa50b1e390c68c904..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265772913.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202461.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202461.png deleted file mode 100644 index 0eee1bbff2e54816d6be05f7f3972a83f615884d..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202461.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202465.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202465.png deleted file mode 100644 index f1aa2e319290cf3700a49391c3f078092a80821e..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202465.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202473.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202473.png deleted file mode 100644 index cfa0ceb21f5a11d459b93721f512309c9d6da2ac..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271202473.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234705.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234705.png deleted file mode 100644 index bc935a8970e39629d2c93f6b92f96c5fa7d1a49b..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234705.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234717.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234717.png deleted file mode 100644 index e53a724993830b5d0e6e1e9871d99dfc99c55f11..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234717.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234729.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234729.png deleted file mode 100644 index 7de3c25e7ef2abc8d85d8bc945249f571f6bf0c3..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234729.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234757.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234757.png deleted file mode 100644 index 548e03da4b76123cb67d41cbd1de4a0f33f5ef4b..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234757.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234761.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234761.png deleted file mode 100644 index 0c1f60638087d0fe56127f2f842244355afad85f..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234761.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234773.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234773.png deleted file mode 100644 index e53a724993830b5d0e6e1e9871d99dfc99c55f11..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271234773.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271237242.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271237242.png deleted file mode 100644 index 9a300afbcd842f7c61877123236675efc422f039..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271237242.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322277.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322277.png deleted file mode 100644 index f1aa2e319290cf3700a49391c3f078092a80821e..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322277.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322293.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322293.png deleted file mode 100644 index 8baa9c7c75625c18979d30ab52b2a0f64e0e8349..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271322293.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354733.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354733.png deleted file mode 100644 index a8037d1ebc95a3c9383d87678981b3ae5ccc8144..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354733.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354745.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354745.png deleted file mode 100644 index b6bc36af5339ea5a4f67640e69836965b3776e17..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354745.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354749.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354749.png deleted file mode 100644 index 775ce6fe99d4894b39f2bdd613097dcaf11a37b2..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354749.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442261.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442261.png deleted file mode 100644 index c728580c57510fa2fe67a7e337492adae328d7ea..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442261.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442265.gif b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442265.gif deleted file mode 100644 index 52b3511bd7ec50a86e9b348aecfb1704dae36188..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271442265.gif and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271448821.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271448821.png deleted file mode 100644 index 0a150015345ea48708c486f21b76796f6e3ee36d..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271448821.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474569.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474569.png deleted file mode 100644 index 5086d2b4518cfea4040f3cc243abb2e6087af350..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474569.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474585.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474585.png deleted file mode 100644 index afc9028fbb61db82e6f1384032bb32f56ed2ec35..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271474585.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271477045.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271477045.png deleted file mode 100644 index 8581b9663ab1f1597166d9e5b668c4d70c273e01..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271477045.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562257.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562257.png deleted file mode 100644 index 5e307225f0246c7d1afe8b949a8135b5a0e94a51..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562257.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562269.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562269.png deleted file mode 100644 index 802cce4e760102043f177cb2fa71e8bd16539ba1..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562269.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562437.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562437.png deleted file mode 100644 index 47231369bbeb827e70a8720b7a3d03ac58fad0c3..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562437.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562445.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562445.png deleted file mode 100644 index c735ae362e184083329cdf710289a169ad5625d4..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562445.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562453.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562453.png deleted file mode 100644 index 9284df45bb1415d84f0325df85b4eb5c223281e8..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271562453.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594709.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594709.png deleted file mode 100644 index 7a063003ded7d94e8b2a030a3df855f6915c933c..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594709.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594733.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594733.png deleted file mode 100644 index 9d3bdbfe1eac9dc532496a7785e8caf99c41780b..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594733.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594765.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594765.png deleted file mode 100644 index 208a4fbace342514f59f0000c4d50f5dc9321f0f..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271594765.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001278358765.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001272258726.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001278358765.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001272258726.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198566364.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001274745038.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198566364.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001274745038.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852755.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001274748606.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001220852755.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001274748606.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001239650137.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275267040.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001239650137.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275267040.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001261515989.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275432904.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001261515989.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275432904.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265492885.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275483042.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265492885.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275483042.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307019009.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275586896.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307019009.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275586896.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265785209.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275752808.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265785209.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275752808.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649344.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275802150.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649344.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275802150.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001114129426.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275835836.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001114129426.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001275835836.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001276122010.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001276122010.png new file mode 100644 index 0000000000000000000000000000000000000000..e31eef74e95c2ecbb8e62d4ad897a2188e66d186 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001276122010.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001267532292.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001276281922.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001267532292.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001276281922.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649343.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001276317464.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001160649343.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001276317464.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279425450.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279425450.png deleted file mode 100644 index fa3d1c40e18002a60a3c179b5e4e1396056a5b41..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279425450.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279426717.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279426717.png deleted file mode 100644 index 0a150015345ea48708c486f21b76796f6e3ee36d..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279426717.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279586409.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279586409.png deleted file mode 100644 index e1cfe8323c13c750a03c4d5c86f2c383e554485d..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279586409.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279587085.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279587085.png deleted file mode 100644 index 084af8cfb40d4c59aa428890df7a1aee622a79d4..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001279587085.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001194821710.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001280147358.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001194821710.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001280147358.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001216761476.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001281002722.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001216761476.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001281002722.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265505181.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001281221352.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265505181.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001281221352.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221344980.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001281378224.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221344980.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001281378224.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285647778.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285647778.png new file mode 100644 index 0000000000000000000000000000000000000000..8b183c06a0f476e6e58c99af2b4266f78f03db3b Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285647778.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285658392.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285658392.png new file mode 100644 index 0000000000000000000000000000000000000000..1c3fd17aa457fa946feb8896f260e63b1bf7c546 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285658392.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285806330.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285806330.png new file mode 100644 index 0000000000000000000000000000000000000000..5e8e45b85dbbda22db008150b798f0c984394642 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285806330.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285965546.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285965546.png new file mode 100644 index 0000000000000000000000000000000000000000..f07b21dbc89b6722f6374a8bde9bdc893798f120 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285965546.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285965778.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285965778.png new file mode 100644 index 0000000000000000000000000000000000000000..6aa63a6876293a994ffe1cc90f6973a949e9e43a Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001285965778.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221356692.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001292531806.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221356692.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001292531806.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227277128.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001292531862.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227277128.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001292531862.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001292849062.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001292849062.png new file mode 100644 index 0000000000000000000000000000000000000000..d430a7534a65f96de3f90fc37e279ba116fdf43c Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001292849062.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227757036.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001296270098.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001227757036.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001296270098.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922318.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001305463846.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001226922318.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001305463846.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221172711.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307160958.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221172711.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307160958.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001222361042.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307162054.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001222361042.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307162054.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307320918.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307320918.png new file mode 100644 index 0000000000000000000000000000000000000000..a26e00b26ee901ab8d2c592b7b51ca173589427e Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307320918.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307480750.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307480750.png new file mode 100644 index 0000000000000000000000000000000000000000..faa03a87ca4210e264ff09b85ec3dfc626d9d0df Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307480750.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307480754.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307480754.png new file mode 100644 index 0000000000000000000000000000000000000000..6eaa0217fb9bdb2d6dde4e13640a5fc3f3f2924a Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001307480754.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001322167645.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001322167645.png deleted file mode 100644 index b2d394f1debbbcf714a401630370639014d46160..0000000000000000000000000000000000000000 Binary files a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001322167645.png and /dev/null differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001325269477.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001325269477.png new file mode 100644 index 0000000000000000000000000000000000000000..d1992b49a9805cd0823c98c2d6f1500a10c5f249 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001325269477.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001114129427.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326201857.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001114129427.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326201857.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001266887264.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326234609.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001266887264.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326234609.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001270076961.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326386753.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001270076961.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326386753.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001261315939.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326512673.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001261315939.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001326512673.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001194984912.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001327549705.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001194984912.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001327549705.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001327669509.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001327669509.png new file mode 100644 index 0000000000000000000000000000000000000000..1fef79a0d9ab7d7862be1e108ae947cec5eb16d2 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001327669509.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001330777737.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001330777737.png new file mode 100644 index 0000000000000000000000000000000000000000..1fef79a0d9ab7d7862be1e108ae947cec5eb16d2 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001330777737.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221025048.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001333256741.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221025048.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001333256741.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001216440138.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001333322693.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001216440138.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001333322693.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265945173.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001333581089.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265945173.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001333581089.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001225760456.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338012765.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001225760456.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338012765.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338102621.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338102621.png new file mode 100644 index 0000000000000000000000000000000000000000..c7d4b3f3adb48546bba7d2a6886d159368370501 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338102621.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338187673.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338187673.png new file mode 100644 index 0000000000000000000000000000000000000000..ff80afa57efa440724111403e2c941bc1ed1e62a Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338187673.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198722374.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338201457.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001198722374.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338201457.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338536201.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338536201.png new file mode 100644 index 0000000000000000000000000000000000000000..5cdc2d808a177b729e12d76d3ff63b01f892240b Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338536201.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001177478136.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338622229.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001177478136.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338622229.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001194504874.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338663697.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001194504874.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001338663697.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001340557741.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001340557741.png new file mode 100644 index 0000000000000000000000000000000000000000..62a1301f0ec1679b5211cd7582702a1bbde2a105 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001340557741.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001243704061.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001345770181.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001243704061.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001345770181.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265676877.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001349388493.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265676877.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001349388493.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360080305.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360080305.png new file mode 100644 index 0000000000000000000000000000000000000000..c98fb2a07b27a0b36913a3a5c913f96cfc6a39d5 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360080305.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354693.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360320977.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001271354693.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360320977.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360439881.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360439881.png new file mode 100644 index 0000000000000000000000000000000000000000..ab85672164a7efca486295641c5ec15e40eda432 Binary files /dev/null and b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001360439881.png differ diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221012768.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001366345198.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001221012768.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001366345198.png diff --git a/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265665157.png b/zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001405938781.png similarity index 100% rename from zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001265665157.png rename to zh-cn/device-dev/quick-start/figures/zh-cn_image_0000001405938781.png diff --git a/zh-cn/device-dev/quick-start/quickstart-appendix-compiledform.md b/zh-cn/device-dev/quick-start/quickstart-appendix-compiledform.md new file mode 100644 index 0000000000000000000000000000000000000000..6a9d6c7acef2d768dc41c0533f00b3da6b83f4e8 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-appendix-compiledform.md @@ -0,0 +1,45 @@ +# 编译形态整体说明 + + +在编译过程中,需要根据实际需求选择不同的编译形态。单击下表中的链接可获取具体产品配置,从而了解其中差异。 + + + **表1** 编译构建支持的产品列表 + +| **编译形态** | **开发板** | **主芯片** | **内核** | **系统类型** | +| -------- | -------- | -------- | -------- | -------- | +| [neptune100](https://gitee.com/openharmony/vendor_hihope/blob/master/neptune_iotlink_demo/config.json) | neptune100 | winnermicro | liteos_m | mini | +| [rk3568](https://gitee.com/openharmony/vendor_hihope/blob/master/rk3568/config.json) | rk3568 | rockchip | linux | standard | +| [rk3568_mini_system](https://gitee.com/openharmony/vendor_hihope/blob/master/rk3568_mini_system/config.json) | rk3568 | rockchip | linux | standard | +| [bearpi_hm_micro](https://gitee.com/openharmony/vendor_bearpi/blob/master/bearpi_hm_micro/config.json) | bearpi_hm_micro | stm32mp1xx | liteos_a | small | +| [bearpi_hm_nano](https://gitee.com/openharmony/vendor_bearpi/blob/master/bearpi_hm_nano/config.json) | bearpi_hm_nano | hi3861v100 | liteos_m | mini | +| [wifiiot_hispark_pegasus](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_pegasus/config.json) | hispark_pegasus | hi3861v100 | liteos_m | mini | +| [ipcamera_hispark_aries](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_aries/config.json) | hispark_aries | hi3518ev300 | liteos_a | small | +| [ipcamera_hispark_taurus](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus/config.json) | hispark_taurus | hi3516dv300 | liteos_a | small | +| [ipcamera_hispark_taurus_linux](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus_linux/config.json) | hispark_taurus | hi3516dv300 | linux | small | +| [hispark_taurus_standard](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus_standard/config.json) | hispark_taurus | hi3516dv300 | linux | standard | +| [watchos](https://gitee.com/openharmony/vendor_hisilicon/blob/master/watchos/config.json) | hispark_taurus | hi3516dv300 | linux | standard | +| [hispark_phoenix](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_phoenix/config.json) | hispark_phoenix | hi3751v350 | linux | standard | +| [hispark_taurus_mini_system](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus_mini_system/config.json) | hispark_taurus | hi3516dv300 | liteos_a | mini | +| [hispark_pegasus_mini_system](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_pegasus_mini_system/config.json) | hispark_pegasus | hi3861v100 | liteos_m | mini | +| [gr5515_sk_iotlink_demo](https://gitee.com/openharmony/vendor_goodix/blob/master/gr5515_sk_iotlink_demo/config.json) | gr5515_sk | gr551x | liteos_m | mini | +| [gr5515_sk_xts_demo](https://gitee.com/openharmony/vendor_goodix/blob/master/gr5515_sk_xts_demo/config.json) | gr5515_sk | gr551x | liteos_m | mini | +| [wifi_demo](https://gitee.com/openharmony/vendor_asrmicro/blob/master/wifi_demo/config.json) | dev_wifi_a | asr582x | liteos_m | mini | +| [xts_demo](https://gitee.com/openharmony/vendor_asrmicro/blob/master/xts_demo/config.json) | dev_wifi_a | asr582x | liteos_m | mini | +| [display_demo](https://gitee.com/openharmony/vendor_bestechnic/blob/master/display_demo/config.json) | v200zr | bes2600 | liteos_m | mini | +| [xts_demo](https://gitee.com/openharmony/vendor_bestechnic/blob/master/xts_demo/config.json) | v200zr | bes2600 | liteos_m | mini | +| [iotlink_demo](https://gitee.com/openharmony/vendor_bestechnic/blob/master/iotlink_demo/config.json) | v200zr | bes2600 | liteos_m | mini | +| [mini_distributed_music_player](https://gitee.com/openharmony/vendor_bestechnic/blob/master/mini_distributed_music_player/config.json) | v200zr | bes2600 | liteos_m | mini | +| [niobe407](https://gitee.com/openharmony/vendor_talkweb/blob/master/niobe407/config.json) | niobe407 | stm32f4xx | liteos_m | mini | +| [qemu_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_mini_system_demo/config.json) | arm_mps2_an386 | qemu | liteos_m | mini | +| [qemu_csky_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_csky_mini_system_demo/config.json) | SmartL_E802 | qemu | liteos_m | mini | +| [qemu_cm55_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_cm55_mini_system_demo/config.json) | arm_mps3_an547 | qemu | liteos_m | mini | +| [qemu_xtensa_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_xtensa_mini_system_demo/config.json) | esp32 | qemu | liteos_m | mini | +| [qemu_riscv_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_riscv32_mini_system_demo/config.json) | ricsv32_virt | qemu | liteos_m | mini | +| [qemu_ca7_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_ca7_mini_system_demo/config.json) | arm_virt | qemu | liteos_a | small | +| [qemu_small_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_small_system_demo/config.json) | arm_virt | qemu | liteos_a | small | +| [qemu_arm_linux_min](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_arm_linux_min/config.json) | qemu-arm-linux | qemu | linux | standard | +| [qemu_arm_linux_headless](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_arm_linux_headless/config.json) | qemu-arm-linux | qemu | linux | standard | +| [iotlink_demo](https://gitee.com/openharmony/vendor_chipsea/blob/master/iotlink_demo/config.json) | cst85_wblink | chipsea | liteos_m | mini | +| [dsoftbus_demo](https://gitee.com/openharmony/vendor_chipsea/blob/master/dsoftbus_demo/config.json) | cst85_wblink | chipsea | liteos_m | mini | +| [xts_demo](https://gitee.com/openharmony/vendor_chipsea/blob/master/xts_demo/config.json) | cst85_wblink | chipsea | liteos_m | mini | diff --git a/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516-ide.md b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516-ide.md new file mode 100644 index 0000000000000000000000000000000000000000..de97f5472490b9078fc78b4868b679e567d4f9ab --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516-ide.md @@ -0,0 +1,334 @@ +# Hi3516标准系统入门(IDE方式) + + +除小型系统外,Hi3516DV300开发板还支持标准系统。此章节简要介绍如何使用IDE在Hi3516DV300开发板上进行标准系统的开发。 + + +下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。 + + +在进行开发之前,请完成如下准备工作: + + +- [搭建开发环境](quickstart-ide-env--win.md) + +- [创建工程并获取源码](quickstart-ide-import-project.md) + + +## 编写“Hello World”程序 + + +### 示例目录 + + +``` +applications/sample/hello + │── BUILD.gn + │── include + │ └── helloworld.h + │── src + │ └── helloworld.c + ├── bundle.json + build + └── subsystem_config.json + productdefine/common + └── products + └── Hi3516DV300.json +``` + + +### 开发步骤 + +请在源码目录中通过以下步骤创建“Hello World”应用程序: + +1. 创建目录,编写业务代码。 + 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改World为OHOS)。其中helloworld.h包含字符串打印函数HelloPrint的声明。当前应用程序可支持标准C及C++的代码开发。 + + + ``` + #include + #include "helloworld.h" + int main(int argc, char **argv) + { + HelloPrint(); + return 0; + } + void HelloPrint() + { + printf("\n\n"); + printf("\n\t\tHello World!\n"); + printf("\n\n"); + } + ``` + + 再添加头文件applications/sample/hello/include/helloworld.h,代码如下所示。 + + + ``` + #ifndef HELLOWORLD_H + #define HELLOWORLD_H + #ifdef __cplusplus + #if __cplusplus + extern "C" { + #endif + #endif + void HelloPrint(); + #ifdef __cplusplus + #if __cplusplus + } + #endif + #endif + #endif // HELLOWORLD_H + ``` + +2. 新建编译组织文件。 + 1. 新建applications/sample/hello/BUILD.gn文件,内容如下所示: + + ``` + import("//build/ohos.gni") # 导入编译模板 + ohos_executable("helloworld") { # 可执行模块 + sources = [ # 模块源码 + "src/helloworld.c" + ] + include_dirs = [ # 模块依赖头文件目录 + "include" + ] + cflags = [] + cflags_c = [] + cflags_cc = [] + ldflags = [] + configs = [] + deps =[] # 部件内部依赖 + part_name = "hello" # 所属部件名称,必选 + install_enable = true # 是否默认安装(缺省默认不安装),可选 + } + ``` + 2. 新建applications/sample/hello/bundle.json文件,添加sample部件描述,内容如下所示。 + + ``` + { + "name": "@ohos/hello", + "description": "Hello world example.", + "version": "3.1", + "license": "Apache License 2.0", + "publishAs": "code-segment", + "segment": { + "destPath": "applications/sample/hello" + }, + "dirs": {}, + "scripts": {}, + "component": { + "name": "hello", + "subsystem": "sample", + "syscap": [], + "features": [], + "adapted_system_type": [ "mini", "small", "standard" ], + "rom": "10KB", + "ram": "10KB", + "deps": { + "components": [], + "third_party": [] + }, + "build": { + "sub_component": [ + "//applications/sample/hello:helloworld" + ], + "inner_kits": [], + "test": [] + } + } + } + ``` + + bundle.json文件包含两个部分,第一部分描述该部件所属子系统的信息,第二部分component则定义该部件构建相关配置。添加的时候需要指明该部件包含的模块sub_component,假如有提供给其它部件的接口,需要在inner_kits中说明,假如有测试用例,需要在test中说明,inner_kits与test没有也可以不添加。 + +3. 修改子系统配置文件。 + 在build/subsystem_config.json中添加新建的子系统的配置。 + + + ``` + "sample": { + "path": "applications/sample/hello", + "name": "sample" + }, + ``` + +4. 修改产品配置文件。 + 在productdefine/common/products/Hi3516DV300.json中添加对应的hello部件,直接添加到原有部件后即可。 + + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 本章节操作是以OpenHarmony-v3.1-Release版本为例进行操作的,该版本中,Hi3516的配置文件为productdefine/common/products/Hi3516DV300.json;若源码版本大于OpenHarmony-v3.1-Release时,Hi3516的配置文件为vendor/hisilicon/Hi3516DV300/config.json。 + + + ``` + "usb:usb_manager_native":{}, + "applications:prebuilt_hap":{}, + "sample:hello":{}, + "wpa_supplicant-2.9:wpa_supplicant-2.9":{}, + ``` + + +## 编译 + +DevEco Device Tool支持Hi3516DV300开发板的源码一键编译功能,提供编译工具链和编译环境依赖的检测及一键安装,简化复杂编译环境的同时,提升了编译的效率。 + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> Hi3516DV300编译环境为Ubuntu环境。 + +1. 在菜单栏中点击**Project Settings**,进入Hi3516DV300工程配置界面。 + + ![zh-cn_image_0000001274745038](figures/zh-cn_image_0000001274745038.png) + +2. 在**Tool Chain**页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击**Install**,自动安装所需工具链。 + + ![zh-cn_image_0000001292531862](figures/zh-cn_image_0000001292531862.png) + +3. 安装Hi3516DV300相关工具链,部分工具安装需要使用root权限,请在**TERMINAL**窗口输入用户密码进行安装。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 + + ![zh-cn_image_0000001274748606](figures/zh-cn_image_0000001274748606.png) + + 工具链自动安装完成后如下图所示。 + + ![zh-cn_image_0000001296270098](figures/zh-cn_image_0000001296270098.png) + +4. 在**hi3516dv300**配置页签中,设置源码的编译类型**build_type**,默认为“debug”类型,请根据需要进行修改。修改完成后,点击**Save**进行保存。 + + ![zh-cn_image_0000001325269477](figures/zh-cn_image_0000001325269477.png) + +5. 在**PROJECT TASKS**中,点击对应开发板下的**Build**,执行编译。 + + ![zh-cn_image_0000001292849062](figures/zh-cn_image_0000001292849062.png) + +6. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 + + ![zh-cn_image_0000001366345198](figures/zh-cn_image_0000001366345198.png) + + 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的烧录操作。 + + +## 烧录 + +烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 + +Hi3516DV300的镜像烧录通过Windows环境进行烧录,开发者启动烧录操作后,DevEco Device Tool通过Remote远程模式,将Ubuntu环境下编译生成的待烧录程序文件拷贝至Windows目录下,然后通过Windows的烧录工具将程序文件烧录至开发板中。 + +Hi3516DV300开发板标准系统的烧录方式包括USB烧录、网口烧录两种方式,本文采用USB方式进行烧录。 + + +### 前提条件 + +- 请安装Hi3516DV300开发板串口驱动程序,请参考[Hi3516DV300开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/hi3516_hi3518-drivers-0000001050743695)。 + +- 请安装Hi3516DV300开发板USB驱动程序,请参考[Hi3516DV300开发板USB驱动安装](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)。 + + +### 操作步骤 + +1. 请连接好电脑和待烧录开发板,需要连接USB口和串口,具体可参考[Hi3516开发板介绍](quickstart-appendix-hi3516.md)。 + +2. 在DevEco Device Tool中,选择**REMOTE DEVELOPMENT > Local PC**,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001326512673](figures/zh-cn_image_0000001326512673.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001275432904](figures/zh-cn_image_0000001275432904.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 + + ![zh-cn_image_0000001285658392](figures/zh-cn_image_0000001285658392.png) + +3. 在菜单栏中点击**Project Settings**按钮,进入Hi3516DV300工程配置界面。 + + ![zh-cn_image_0000001275752808](figures/zh-cn_image_0000001275752808.png) + +4. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 + + ![Phoenix-upload](figures/Phoenix-upload.png) + +5. 在“hi3516dv300”页签,设置烧录选项,包括upload_partitions_profile、upload_port和upload_protocol。 + - upload_partitions_profile:选择待烧录程序的配置文件(已预置默认的配置文件),该配置文件会指定烧录文件名称、起始烧录地址、地址长度等信息;同时请勾选**Enable to use upload_partitions_profile for upload**选项。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如需修改烧录profile文件,在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 + > + > 首次烧录,请勾选**Enable to use upload_partitions_profile for upload**选项,会自动生成upload_partitions文件。再次烧录时,可根据实际情况选择生成upload_partitions文件进行自定义烧录,也可以再勾选**Enable to use upload_partitions_profile for upload**选项,使用upload_partitions_profile重新生成upload_partitions文件用于烧录。 + - upload_protocol:选择烧录协议,固定选择“hiburn-usb”。 + - upload_port:选择已查询到的串口号。 + + ![zh-cn_image_0000001338622229](figures/zh-cn_image_0000001338622229.png) + +6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 + +7. 点击hi3516dv300下的**Upload**按钮。 + + ![zh-cn_image_0000001276281922](figures/zh-cn_image_0000001276281922.png) + + 此时待烧录文件会从Ubuntu系统传输到Windows下,传输完成后界面显示“Operation paused, Please press Enter key to continue”时,请点击**Enter**键启动烧录。 + + ![zh-cn_image_0000001326201857](figures/zh-cn_image_0000001326201857.png) + +8. 在终端窗口显示如下提示信息时,请在15秒内,按住Update键,插拔USB线,最后松开Update键启动烧录。 + + ![zh-cn_image_0000001276122010](figures/zh-cn_image_0000001276122010.png) + + 启动烧录后,界面提示**SUCCESS**信息时,表示烧录成功。 + + ![zh-cn_image_0000001275802150](figures/zh-cn_image_0000001275802150.png) + +9. 烧录成功后,请根据运行章节进行操作,启动系统。 + + +## 运行 + + +### 启动系统 + +烧录完成后通过以下步骤启动系统: + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> 初次烧写标准系统,需要完成以下配置,后续烧写或者启动,可以跳过以下操作。 + +1. 在DevEco Device Tool中,点击Monitor,打开串口工具。 + + ![quickstart-appendix-hi3516-ide-run](figures/quickstart-appendix-hi3516-ide-run.png) + +2. 重启开发板,在倒计时结束前,按任意键进入系统。 + + ![press-any-key-to-enter-the-system](figures/press-any-key-to-enter-the-system.gif) + +3. 通过以下两条命令设置启动参数。 + + ``` + setenv bootargs 'mem=640M console=ttyAMA0,115200 mmz=anonymous,0,0xA8000000,384M clk_ignore_unused rootdelay=10 hardware=Hi3516DV300 init=/init root=/dev/ram0 rw blkdevparts=mmcblk0:1M(boot),15M(kernel),20M(updater),2M(misc),3307M(system),256M(vendor),-(userdata)'; + ``` + + + ``` + setenv bootcmd 'mmc read 0x0 0x82000000 0x800 0x4800; bootm 0x82000000' + ``` + + ![setenv-bootargs](figures/setenv-bootargs.png) + +4. 保存参数设置。 + + ``` + save + ``` + + ![Save the parameter settings](figures/quickstart-appendix-hi3516-ide-run-set.png) + +5. 重启开发板,完成系统启动。 + + ``` + reset + ``` + + ![start the system](figures/quickstart-appendix-hi3516-ide-run-start.png) + + +### 运行“Hello World” + +设备启动后打开串口工具,在任意目录下输入命令helloworld后回车,界面打印“Hello World!”,程序运行成功。 + +![helloworld](figures/helloworld.png) + + +### 下一步 + +恭喜!您已经完成了标准系统的快速入门,接下来可[开发一个小示例](../guide/device-clock-guide.md),进一步熟悉OpenHarmony的开发。 diff --git a/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516-pkg.md b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516-pkg.md new file mode 100644 index 0000000000000000000000000000000000000000..838d824279bd88f0c3e33a1284dba93a3a18c74e --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516-pkg.md @@ -0,0 +1,310 @@ +# Hi3516标准系统入门(命令行方式) + + +除小型系统外,Hi3516DV300开发板还支持标准系统。此章节简要介绍如何使用命令行在Hi3516DV300开发板上进行标准系统的开发。 + + +下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。 + + +在进行开发之前,请首先完成[搭建开发环境](quickstart-pkg-prepare.md)。 + + +## 编写“Hello World”程序 + + +### 示例目录 + + +``` +applications/sample/hello + │── BUILD.gn + │── include + │ └── helloworld.h + │── src + │ └── helloworld.c + ├── bundle.json + build + └── subsystem_config.json + vendor/hisilicon + └── Hi3516DV300 + └── config.json +``` + + +### 开发步骤 + +请在源码目录中通过以下步骤创建“Hello World”应用程序: + +1. 创建目录,编写业务代码。 + 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改World为OHOS)。其中helloworld.h包含字符串打印函数HelloPrint的声明。当前应用程序可支持标准C及C++的代码开发。 + + + ``` + #include + #include "helloworld.h" + int main(int argc, char **argv) + { + HelloPrint(); + return 0; + } + void HelloPrint() + { + printf("\n\n"); + printf("\n\t\tHello World!\n"); + printf("\n\n"); + } + ``` + + 再添加头文件applications/sample/hello/include/helloworld.h,代码如下所示。 + + + ``` + #ifndef HELLOWORLD_H + #define HELLOWORLD_H + #ifdef __cplusplus + #if __cplusplus + extern "C" { + #endif + #endif + void HelloPrint(); + #ifdef __cplusplus + #if __cplusplus + } + #endif + #endif + #endif // HELLOWORLD_H + ``` + +2. 新建编译组织文件。 + 1. 新建applications/sample/hello/BUILD.gn文件,内容如下所示: + + ``` + import("//build/ohos.gni") # 导入编译模板 + ohos_executable("helloworld") { # 可执行模块 + sources = [ # 模块源码 + "src/helloworld.c" + ] + include_dirs = [ # 模块依赖头文件目录 + "include" + ] + cflags = [] + cflags_c = [] + cflags_cc = [] + ldflags = [] + configs = [] + deps =[] # 部件内部依赖 + part_name = "hello" # 所属部件名称,必选 + install_enable = true # 是否默认安装(缺省默认不安装),可选 + } + ``` + 2. 新建applications/sample/hello/bundle.json文件,添加sample部件描述,内容如下所示。 + + ``` + { + "name": "@ohos/hello", + "description": "Hello world example.", + "version": "3.1", + "license": "Apache License 2.0", + "publishAs": "code-segment", + "segment": { + "destPath": "applications/sample/hello" + }, + "dirs": {}, + "scripts": {}, + "component": { + "name": "hello", + "subsystem": "sample", + "syscap": [], + "features": [], + "adapted_system_type": [ "mini", "small", "standard" ], + "rom": "10KB", + "ram": "10KB", + "deps": { + "components": [], + "third_party": [] + }, + "build": { + "sub_component": [ + "//applications/sample/hello:helloworld" + ], + "inner_kits": [], + "test": [] + } + } + } + ``` + + bundle.json文件包含两个部分,第一部分描述该部件所属子系统的信息,第二部分component则定义该部件构建相关配置。添加的时候需要指明该部件包含的模块sub_component,假如有提供给其它部件的接口,需要在inner_kits中说明,假如有测试用例,需要在test中说明,inner_kits与test没有也可以不添加。 + +3. 修改子系统配置文件。 + 在build/subsystem_config.json中添加新建的子系统的配置。 + + + ``` + "sample": { + "path": "applications/sample/hello", + "name": "sample" + }, + ``` + +4. 修改产品配置文件。 + 在vendor/hisilicon/Hi3516DV300/config.json中添加对应的hello部件,直接添加到原有部件后即可。 + + + ``` + "usb:usb_manager_native":{}, + "applications:prebuilt_hap":{}, + "sample:hello":{}, + "wpa_supplicant-2.9:wpa_supplicant-2.9":{}, + ``` + + +## 编译 + +OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-pkg-common-build.md#使用buildsh脚本编译源码)。 + +想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指南](../subsystems/subsys-build-all.md)。 + + +### 前提条件 + +- 已正确[安装库和工具集](quickstart-pkg-install_package.md)。 + +- 已正确[安装编译工具](quickstart-pkg-install_tool.md)。 + +- “Hello World”程序已编写完成。 + +- 可正常登录Ubuntu环境。 + + +### 操作步骤 + +请进入源码根目录,执行如下命令进行编译: + +1. 设置编译路径。 + + ``` + hb set + ``` + +2. 选择当前路径。 + + ``` + . + ``` + +3. 在hisilicon下选择hispark_taurus_standard并回车。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > + > 同样的开发板在适配不同的场景时,要采用的编译形态不同(即此处要选择的product不同),请参考[编译形态整体说明](quickstart-appendix-compiledform.md)。 + + **图1** Hi3516编译设置图例   + + ![quick-start-hi3516-standard-build](figures/quick-start-hi3516-standard-build.png) + +4. 执行编译。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > - 单独编译一个部件(例如hello),可使用“hb build -T _目标名称_”进行编译。 + > + > - 增量编译整个产品,可使用“hb build”进行编译。 + > + > - 完整编译整个产品,可使用“hb build -f”进行编译。 + > + > 此处以完整编译整个产品为例进行说明。 + + + ``` + hb build -f + ``` + +5. 编译结束后,出现“build success”字样,则证明构建成功。 + > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** + > 编译结果文件及编译日志文件获取路径:out/hi3516dv300。 + + +## 烧录 + +针对Hi3516DV300开发板,除了DevEco Device Tool(操作方法请参考[烧录](quickstart-appendix-hi3516-ide.md#烧录))外,还可以使用HiTool进行烧录。 + + +### 前提条件 + +- 开发板相关源码已编译完成,已形成烧录文件。 + +- 客户端(操作平台,例如Windows系统)已下载并安装[HiTool工具](http://www.hihope.org/download/download.aspx)。 + +- 客户端(操作平台,例如Windows系统)已安装USB驱动,可参考[Hi3516DV300开发板USB驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fusb_driver-0000001058690393)。 + +- 客户端已安装串口终端工具(例如IPOP)。 + +- 使用USB线缆、串口线缆连接客户端与开发板。 + + +### 操作步骤 + +1. 准备烧录相关文件。 + 1. 在客户端新建用于保存烧录文件的文件夹,例如D:\L2。 + 2. 将编译完成的源码包下载至客户端并解压,将烧录相关文件拷贝至步骤1中新建的文件夹。 + + Hi3516DV300开发板烧写所需文件为:boot.img、Hi3516DV300-emmc.xml、system.img、u-boot-hi3516dv300_emmc.bin、uImage、updater.img、userdata.img、vendor.img。 + +2. 使用HiTool烧录。 + 1. 打开HiTool。 + 2. 设置HiTool参数。 + + 传输方式选择USB口,烧写方式选择烧写eMMC(单板的存储介质为eMMC)。 + 3. 单击浏览在步骤1创建的文件夹中选择烧写配置文件(例如Hi3516DV300-emmc.xml)。 + + ![quickstart-hi3516-standard-hitool-select](figures/quickstart-hi3516-standard-hitool-select.png) + 4. 单击烧写后,按住开发板上串口旁的按钮(Update键),并拔插USB线(上下电)。。 + + 烧录开始后,可以在HiTool工具下方的控制台区域观察到烧录过程中的打印信息。 + + 烧录完成后,HiTool弹出提示框显示烧写成功。 + 5. 单击确定。 + +3. 导入启动参数。 + 1. 使用终端工具打开串口。 + 2. 拔插开发板电源使其重启,3s内在串口终端输入回车。 + + 终端界面中出现hisilicon \#表示已连接开发板串口。 + 3. 在串口终端拷贝如下启动参数后,按回车完成配置。 + + ``` + setenv bootargs 'mem=640M console=ttyAMA0,115200 mmz=anonymous,0,0xA8000000,384M clk_ignore_unused androidboot.selinux=permissive rootdelay=10 hardware=Hi3516DV300 init=/init root=/dev/ram0 rw blkdevparts=mmcblk0:1M(boot),15M(kernel),20M(updater),2M(misc),3307M(system),256M(vendor),-(userdata)';setenv bootcmd 'mmc read 0x0 0x82000000 0x800 0x4800; bootm 0x82000000' + + saveenv + + reset + ``` + + > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** + > 输入启动参数时,请勿自行删除其中的空行。 + + +## 运行 + +系统启动成功后,取源码out目录下的helloworld可执行文件放入系统的bin目录,通过以下步骤运行“Hello World”。 + + +### 操作步骤 + +1. 在启动界面进入bin目录。 + + ``` + cd bin + ``` + +2. 进入bin目录后可以看到helloworld文件,通过以下命令运行helloworld程序。 + + ``` + ./helloworld + ``` + + 界面打印“Hello World!”,程序运行成功。 + + +### 下一步学习 + +恭喜!您已经完成了标准系统的快速入门,接下来可[开发一个小示例](../guide/device-clock-guide.md),进一步熟悉OpenHarmony的开发。 diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-introduction-hi3516.md b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516.md similarity index 95% rename from zh-cn/device-dev/quick-start/quickstart-lite-introduction-hi3516.md rename to zh-cn/device-dev/quick-start/quickstart-appendix-hi3516.md index a43dbaf8b6b3035f0195a28b098f4cd9b0d3c63a..1f56afc1af080d41f646129e58634742205266d3 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-introduction-hi3516.md +++ b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3516.md @@ -7,7 +7,7 @@ Hi3516DV300作为新一代行业专用Smart HD IP摄像机SOC,集成新一代I **图1** Hi3516单板正面外观图   -![zh-cn_image_0000001271234773](figures/zh-cn_image_0000001271234773.png) +![zh-cn_image_0000001305463846](figures/zh-cn_image_0000001305463846.png) ## 开发板规格 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-introduction-hi3861.md b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3861.md similarity index 83% rename from zh-cn/device-dev/quick-start/quickstart-ide-lite-introduction-hi3861.md rename to zh-cn/device-dev/quick-start/quickstart-appendix-hi3861.md index ae64948ed8e076d7054cca45b3da1bf3afe5cb93..349fc1f2f967e0920e66c4c66076b177ab510f28 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-introduction-hi3861.md +++ b/zh-cn/device-dev/quick-start/quickstart-appendix-hi3861.md @@ -3,17 +3,17 @@ ## 简介 -Hi3861开发板是一片大约2cm\*5cm大小的开发板,是一款高度集成的2.4GHz WLAN SoC芯片,集成IEEE 802.11b/g/n基带和RF(Radio Frequency)电路。支持OpenHarmony,并配套提供开放、易用的开发和调试运行环境。 +Hi3861开发板是一片大约2cm\*5cm大小的开发板,是一款高度集成的2.4GHz WLAN SoC芯片,集成IEEE 802.11b/g/n基带和RF(Radio Frequency)电路。支持,并配套提供开放、易用的开发和调试运行环境。 **图1** Hi3861开发板外观图   -![zh-cn_image_0000001226634692](figures/zh-cn_image_0000001226634692.png) +![hi3861-front](figures/hi3861-front.png) 另外,Hi3861开发板还可以通过与Hi3861底板连接,扩充自身的外设能力,底板如下图所示。 **图2** Hi3861底板外观图   -![zh-cn_image_0000001226794660](figures/zh-cn_image_0000001226794660.png) +![hi3861-rear](figures/hi3861-rear.png) - RF电路包括功率放大器PA(Power Amplifier)、低噪声放大器LNA(Low Noise Amplifier)、RF Balun、天线开关以及电源管理等模块;支持20MHz标准带宽和5MHz/10MHz窄带宽,提供最大72.2Mbit/s物理层速率。 @@ -25,7 +25,7 @@ Hi3861开发板是一片大约2cm\*5cm大小的开发板,是一款高度集成 **图3** Hi3861功能框图   -![zh-cn_image_0000001271234729](figures/zh-cn_image_0000001271234729.png) +![hi3861-function](figures/hi3861-function.png) ## 资源和约束 @@ -47,22 +47,22 @@ Hi3861开发板资源十分有限,整板共2MB FLASH,352KB RAM。在编写 | 其他信息 | - 封装:QFN-32,5mm×5mm
- 工作温度:-40℃ ~ +85℃ | -## OpenHarmony关键特性 +## 关键特性 -OpenHarmony基于Hi3861平台提供了多种开放能力,提供的关键组件如下表所示。 +基于Hi3861平台提供了多种开放能力,提供的关键组件如下表所示。 - **表2** OpenHarmony关键组件列表 + **表2** 关键组件列表 | 组件名 | 能力介绍 | | -------- | -------- | | WLAN服务 | 提供WLAN服务能力。包括:station和hotspot模式的连接、断开、状态查询等。 | | 模组外设控制 | 提供操作外设的能力。包括:I2C、I2S、ADC、UART、SPI、SDIO、GPIO、PWM、FLASH等。 | -| 分布式软总线 | 在OpenHarmony分布式网络中,提供设备被发现、数据传输的能力。 | +| 分布式软总线 | 在分布式网络中,提供设备被发现、数据传输的能力。 | | 设备安全绑定 | 提供在设备互联场景中,数据在设备之间的安全流转的能力。 | | 基础加解密 | 提供密钥管理、加解密等能力。 | -| 系统服务管理 | 系统服务管理基于面向服务的架构,提供了OpenHarmony统一化的系统服务开发框架。 | -| 启动引导 | 提供系统服务的启动入口标识。在系统服务管理启动时,调用bootstrap标识的入口函数,并启动系统服务。 | +| 系统服务管理 | 系统服务管理基于面向服务的架构,提供了统一化的系统服务开发框架。 | +| 启动引导 | 提供系统服务的启动入口标识。在系统服务管理启动时,调用boostrap标识的入口函数,并启动系统服务。 | | 系统属性 | 提供获取与设置系统属性的能力。 | | 基础库 | 提供公共基础库能力。包括:文件操作、KV存储管理等。 | | DFX | 提供DFX能力。包括:流水日志、时间打点等。 | -| XTS | 提供OpenHarmony生态认证测试套件的集合能力。 | +| XTS | 提供生态认证测试套件的集合能力。 | diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-board-introduction-rk3568.md b/zh-cn/device-dev/quick-start/quickstart-appendix-rk3568.md similarity index 93% rename from zh-cn/device-dev/quick-start/quickstart-ide-standard-board-introduction-rk3568.md rename to zh-cn/device-dev/quick-start/quickstart-appendix-rk3568.md index 05d773ad33b3fd23db4ba33de70f1c8769dceab9..ab9a1d713f248507c48e97763e6ff5a6a5e37b90 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-board-introduction-rk3568.md +++ b/zh-cn/device-dev/quick-start/quickstart-appendix-rk3568.md @@ -7,11 +7,11 @@ RK3568开发板基于Rockchip RK3568芯片,集成双核心架构GPU以及高 **图1** RK3568开发板正面   -![zh-cn_image_0000001271442129](figures/zh-cn_image_0000001271442129.png) +![rk3568-front](figures/rk3568-front.png) **图2** RK3568开发板背面   -![zh-cn_image_0000001271322293](figures/zh-cn_image_0000001271322293.png) +![rk3568-rear](figures/rk3568-rear.png) ## 开发板规格 diff --git a/zh-cn/device-dev/quick-start/quickstart-build.md b/zh-cn/device-dev/quick-start/quickstart-build.md deleted file mode 100644 index 4e2363163cbd3c5577fd3d245e29279dc042564c..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-build.md +++ /dev/null @@ -1,40 +0,0 @@ -# 编译形态整体说明 -**编译构建支持的产品列表** (点击链接可知道具体产品配置及其相关差异) - -| 编译形态 | 开发板 | 主芯片 | 内核 | 系统类型 | -| ----------------------------- | --------------- | ----------- | ----------- | ----------- | -| [neptune100](https://gitee.com/openharmony/vendor_hihope/blob/master/neptune_iotlink_demo/config.json) | neptune100 | winnermicro | liteos_m | mini | -| [rk3568](https://gitee.com/openharmony/vendor_hihope/blob/master/rk3568/config.json) | rk3568 | rockchip | linux | standard | -| [rk3568_mini_system](https://gitee.com/openharmony/vendor_hihope/blob/master/rk3568_mini_system/config.json) | rk3568 | rockchip | linux | standard | -| [bearpi_hm_micro](https://gitee.com/openharmony/vendor_bearpi/blob/master/bearpi_hm_micro/config.json) | bearpi_hm_micro | stm32mp1xx | liteos_a | small | -| [bearpi_hm_nano](https://gitee.com/openharmony/vendor_bearpi/blob/master/bearpi_hm_nano/config.json) | bearpi_hm_nano | hi3861v100 | liteos_m | mini | -| [wifiiot_hispark_pegasus](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_pegasus/config.json) | hispark_pegasus | hi3861v100 | liteos_m | mini | -| [ipcamera_hispark_aries](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_aries/config.json) | hispark_aries | hi3518ev300 | liteos_a | small | -| [ipcamera_hispark_taurus](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus/config.json) | hispark_taurus | hi3516dv300 | liteos_a | small | -| [ipcamera_hispark_taurus_linux](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus_linux/config.json) | hispark_taurus | hi3516dv300 | linux | small | -| [hispark_taurus_standard](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus_standard/config.json) | hispark_taurus | hi3516dv300 | linux | standard | -| [watchos](https://gitee.com/openharmony/vendor_hisilicon/blob/master/watchos/config.json) | hispark_taurus | hi3516dv300 | linux | standard | -| [hispark_phoenix](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_phoenix/config.json) | hispark_phoenix | hi3751v350 | linux | standard | -| [hispark_taurus_mini_system](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_taurus_mini_system/config.json) | hispark_taurus | hi3516dv300 | liteos_a | mini | -| [hispark_pegasus_mini_system](https://gitee.com/openharmony/vendor_hisilicon/blob/master/hispark_pegasus_mini_system/config.json) | hispark_pegasus | hi3861v100 | liteos_m | mini | -| [gr5515_sk_iotlink_demo](https://gitee.com/openharmony/vendor_goodix/blob/master/gr5515_sk_iotlink_demo/config.json) | gr5515_sk | gr551x | liteos_m | mini | -| [gr5515_sk_xts_demo](https://gitee.com/openharmony/vendor_goodix/blob/master/gr5515_sk_xts_demo/config.json) | gr5515_sk | gr551x | liteos_m | mini | -| [wifi_demo](https://gitee.com/openharmony/vendor_asrmicro/blob/master/wifi_demo/config.json) | dev_wifi_a | asr582x | liteos_m | mini | -| [xts_demo](https://gitee.com/openharmony/vendor_asrmicro/blob/master/xts_demo/config.json) | dev_wifi_a | asr582x | liteos_m | mini | -| [display_demo](https://gitee.com/openharmony/vendor_bestechnic/blob/master/display_demo/config.json) | v200zr | bes2600 | liteos_m | mini | -| [xts_demo](https://gitee.com/openharmony/vendor_bestechnic/blob/master/xts_demo/config.json) | v200zr | bes2600 | liteos_m | mini | -| [iotlink_demo](https://gitee.com/openharmony/vendor_bestechnic/blob/master/iotlink_demo/config.json) | v200zr | bes2600 | liteos_m | mini | -| [mini_distributed_music_player](https://gitee.com/openharmony/vendor_bestechnic/blob/master/mini_distributed_music_player/config.json) | v200zr | bes2600 | liteos_m | mini | -| [niobe407](https://gitee.com/openharmony/vendor_talkweb/blob/master/niobe407/config.json) | niobe407 | stm32f4xx | liteos_m | mini | -| [qemu_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_mini_system_demo/config.json) | arm_mps2_an386 | qemu | liteos_m | mini | -| [qemu_cksy_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_csky_mini_system_demo/config.json) | SmartL_E802 | qemu | liteos_m | mini | -| [qemu_cm55_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_cm55_mini_system_demo/config.json) | arm_mps3_an547 | qemu | liteos_m | mini | -| [qemu_xtensa_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_xtensa_mini_system_demo/config.json) | esp32 | qemu | liteos_m | mini | -| [qemu_riscv_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_riscv32_mini_system_demo/config.json) | ricsv32_virt | qemu | liteos_m | mini | -| [qemu_ca7_mini_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_ca7_mini_system_demo/config.json) | arm_virt | qemu | liteos_a | small | -| [qemu_small_system_demo](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_small_system_demo/config.json) | arm_virt | qemu | liteos_a | small | -| [qemu_arm_linux_min](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_arm_linux_min/config.json) | qemu-arm-linux | qemu | linux | standard | -| [qemu_arm_linux_headless](https://gitee.com/openharmony/vendor_ohemu/blob/master/qemu_arm_linux_headless/config.json) | qemu-arm-linux | qemu | linux | standard | -| [iotlink_demo](https://gitee.com/openharmony/vendor_chipsea/blob/master/iotlink_demo/config.json) | cst85_wblink | chipsea | liteos_m | mini | -| [dsoftbus_demo](https://gitee.com/openharmony/vendor_chipsea/blob/master/dsoftbus_demo/config.json) | cst85_wblink | chipsea | liteos_m | mini | -| [xts_demo](https://gitee.com/openharmony/vendor_chipsea/blob/master/xts_demo/config.json) | cst85_wblink | chipsea | liteos_m | mini | diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3516-build.md b/zh-cn/device-dev/quick-start/quickstart-ide-3516-build.md new file mode 100644 index 0000000000000000000000000000000000000000..58f0db0f1884e541ae936562633e125cbf460172 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3516-build.md @@ -0,0 +1,41 @@ +# 编译 + + +DevEco Device Tool支持Hi3516DV300开发板的源码一键编译功能,提供编译工具链和编译环境依赖的检测及一键安装,简化复杂编译环境的同时,提升了编译的效率。 + + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> Hi3516DV300编译环境为Ubuntu环境。 + + +1. 在菜单栏中点击**Project Settings**,进入Hi3516DV300工程配置界面。 + + ![zh-cn_image_0000001274745038](figures/zh-cn_image_0000001274745038.png) + +2. 在“Tool Chain”页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可单击**Install**,自动安装所需工具链。 + + ![zh-cn_image_0000001307480750](figures/zh-cn_image_0000001307480750.png) + +3. 安装Hi3516DV300相关工具链,部分工具安装需要使用root权限,请在“TERMINAL”窗口输入用户密码进行安装。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 + + ![zh-cn_image_0000001360080305](figures/zh-cn_image_0000001360080305.png) + + 工具链自动安装完成后如下图所示。 + + ![zh-cn_image_0000001307320918](figures/zh-cn_image_0000001307320918.png) + +4. 在“hi3516dv300”配置页签中,设置源码的编译类型**build_type**,默认为“debug”类型,请根据需要进行修改。修改完成后,单击**Save**进行保存。 + + ![zh-cn_image_0000001307160958](figures/zh-cn_image_0000001307160958.png) + +5. 在“PROJECT TASKS”中,单击对应开发板下的**Build**,执行编译。 + + ![zh-cn_image_0000001360439881](figures/zh-cn_image_0000001360439881.png) + +6. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 + + ![zh-cn_image_0000001307480754](figures/zh-cn_image_0000001307480754.png) + + 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的[Hi3516DV300开发板烧录](quickstart-ide-3516-burn.md)。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3516-burn.md b/zh-cn/device-dev/quick-start/quickstart-ide-3516-burn.md new file mode 100644 index 0000000000000000000000000000000000000000..75eb1d896ca2158da0a636055841bdd8f7d5dbb4 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3516-burn.md @@ -0,0 +1,70 @@ +# 烧录 + + +烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 + + +Hi3516DV300的镜像烧录通过Windows环境进行烧录,开发者启动烧录操作后,DevEco Device Tool通过Remote远程模式,将Ubuntu环境下编译生成的待烧录程序文件拷贝至Windows目录下,然后通过Windows的烧录工具将程序文件烧录至开发板中。 + + +Hi3516DV300开发板小型系统的烧录方式包括USB烧录、网口烧录两种方式,本文采用USB方式进行烧录。 + + +## 前提条件 + +- 代码已[编译](quickstart-ide-3516-build.md)完成。 + +- 请安装Hi3516DV300开发板串口驱动程序,请参考[Hi3516DV300开发板串口驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/hi3516_hi3518-drivers-0000001050743695)。 + +- 请安装Hi3516DV300开发板USB驱动程序,请参考[Hi3516DV300开发板USB驱动安装](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)。 + + +## 操作步骤 + +1. 请连接好电脑和待烧录开发板,需要连接USB口和串口,具体可参考[Hi3516DV300开发板介绍](quickstart-appendix-hi3516.md)。 + +2. 在DevEco Device Tool中,选择**REMOTE DEVELOPMENT > Local PC**,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001326512673](figures/zh-cn_image_0000001326512673.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001275432904](figures/zh-cn_image_0000001275432904.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 + + ![zh-cn_image_0000001285658392](figures/zh-cn_image_0000001285658392.png) + +3. 在菜单栏中点击**Project Settings**按钮,进入Hi3516DV300工程配置界面。 + + ![zh-cn_image_0000001275752808](figures/zh-cn_image_0000001275752808.png) + +4. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 + + ![Phoenix-upload](figures/Phoenix-upload.png) + +5. 在“hi3516dv300”页签,设置烧录选项,包括upload_partitions、upload_port和upload_protocol。 + - upload_partitions:选择待烧录的文件,默认情况下会同时烧录fastboot、kernel、rootfs和userfs。DevEco Device Tool已预置默认的烧录文件信息,包括起始地址、分区大小、待烧录文件地址等,开发者可根据实际情况进行调整,点击每个待烧录文件后的![zh-cn_image_0000001275592884](figures/zh-cn_image_0000001275592884.png)按钮进行修改。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 + + ![3516-small-partitions](figures/3516-small-partitions.png) + + - upload_protocol:选择烧录协议,固定选择“hiburn-usb”。 + - upload_port:选择已查询到的串口号。 + + ![3516-small-usb](figures/3516-small-usb.png) + +6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 + +7. 点击hi3516dv300下的**Upload**按钮。 + + ![zh-cn_image_0000001326234609](figures/zh-cn_image_0000001326234609.png) + + 此时待烧录文件会从Ubuntu系统传输到Windows下,传输完成后界面显示“Operation paused, Please press Enter key to continue”时,请点击**Enter**键启动烧录。 + + ![zh-cn_image_0000001275835836](figures/zh-cn_image_0000001275835836.png) + +8. 在终端窗口显示如下提示信息时,请在15秒内,按住Update键,插拔USB线,最后松开Update键启动烧录。 + + ![zh-cn_image_0000001326412233](figures/zh-cn_image_0000001326412233.png) + + 启动烧录后,界面提示**SUCCESS**信息时,表示烧录成功。 + + ![zh-cn_image_0000001276317464](figures/zh-cn_image_0000001276317464.png) + +9. 烧录成功后,请根据运行章节进行操作,启动系统。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-helloworld.md b/zh-cn/device-dev/quick-start/quickstart-ide-3516-helloworld.md similarity index 67% rename from zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-helloworld.md rename to zh-cn/device-dev/quick-start/quickstart-ide-3516-helloworld.md index a8273bfc8b33dfdb950434eef48c0f2f3c1121af..7096ec89d43fdb9a655f752812a16fe506215cbb 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-helloworld.md +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3516-helloworld.md @@ -4,12 +4,17 @@ 下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。 +## 前提条件 + +已参考[创建工程并获取源码](quickstart-ide-import-project.md),创建Hi3516开发板的源码工程。 + + ## 示例目录 示例完整目录如下: - + ``` applications/sample/hello │── BUILD.gn @@ -20,13 +25,13 @@ applications/sample/hello ## 开发步骤 -请在源码目录中通过以下步骤创建“Hello World”应用程序: +请在源码目录中通过以下步骤创建“Hello World”应用程序。 1. 新建目录及源码。 + + 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改OHOS为World)。当前应用程序可支持标准C及C++的代码开发。 - 新建**applications/sample/hello/src/helloworld.c**目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改OHOS为World)。当前应用程序可支持标准C及C++的代码开发。 - - + ``` #include @@ -41,10 +46,10 @@ applications/sample/hello ``` 2. 新建编译组织文件。 + + 新建applications/sample/hello/BUILD.gn文件,内容如下所示: - 新建**applications/sample/hello/BUILD.gn**文件,内容如下所示: - - + ``` import("//build/lite/config/component/lite_component.gni") lite_component("hello-OHOS") { @@ -57,10 +62,13 @@ applications/sample/hello ``` 3. 添加新组件。 + + 修改文件build/lite/components/applications.json,添加组件hello_world_app的配置,如下所示为**applications.json**文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**build/lite/components/communication.json**,添加组件hello_world_app的配置,如下所示为communication.json文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 本章节操作是以OpenHarmony-v3.1-Release版本为例进行操作的,该版本中,组件配置文件为build/lite/components/applications.json;若源码版本大于等于OpenHarmony 3.2 Beta2时,组件配置文件为build/lite/components/communication.json。 - + ``` { "components": [ @@ -120,10 +128,10 @@ applications/sample/hello ``` 4. 修改单板配置文件。 + + 修改文件vendor/hisilicon/hispark_taurus/config.json,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**vendor/hisilicon/hispark_taurus/config.json**,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - + ``` { "subsystem": "applications", diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-running.md b/zh-cn/device-dev/quick-start/quickstart-ide-3516-running.md similarity index 55% rename from zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-running.md rename to zh-cn/device-dev/quick-start/quickstart-ide-3516-running.md index f6dab623d690f2f62b8888c36fbe1ff441698024..de3a6b16bbd43a75f31f6688cf742ac5e28f8185 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-running.md +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3516-running.md @@ -5,23 +5,23 @@ 在完成Hi3516DV300的烧录后,还需要设置BootLoader引导程序,才能运行OpenHarmony系统。 -1. 在Hi3516DV300任务中,点击Configure bootloader(Boot OS)进行配置即可。 +1. 在Hi3516DV300任务中,单击Configure bootloader(Boot OS)进行配置即可。 > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** > DevEco Device Tool针对Hi3516DV300开发板的BootLoader设置进行了适配,无需开发者手动修改。 - ![zh-cn_image_0000001226794644](figures/zh-cn_image_0000001226794644.png) + ![bootloader](figures/bootloader.png) 2. 提示如下图中的重启开发板的提示信息时,重启开发板,然后在控制台输出“SUCCESS”表示设置成功。 - ![zh-cn_image_0000001227114584](figures/zh-cn_image_0000001227114584.png) + ![reset_success](figures/reset_success.png) -3. 在任务栏点击**Monitor**按钮,启动串口工具。 +3. 在任务栏单击**Monitor**按钮,启动串口工具。 - ![zh-cn_image_0000001271234705](figures/zh-cn_image_0000001271234705.png) + ![monitor](figures/monitor.png) -4. 当界面打印回显信息,点击Enter按钮,直到界面显示OHOS \#信息,表示系统启动成功。 +4. 当界面打印回显信息,单击Enter按钮,直到界面显示OHOS \#信息,表示系统启动成功。 - ![zh-cn_image_0000001271594709](figures/zh-cn_image_0000001271594709.png) + ![reboot-success](figures/reboot-success.png) ## 运行“Hello World” @@ -29,22 +29,26 @@ 系统启动成功后,通过以下步骤运行“Hello World”。 1. 在启动界面进入bin目录。 - + ``` cd bin ``` 2. 进入bin目录后可以看到helloworld文件,通过以下命令运行helloworld程序。 - + ``` ./helloworld ``` 界面打印“Hello World!”,程序运行成功。 - ![zh-cn_image_0000001271354693](figures/zh-cn_image_0000001271354693.png) + ![zh-cn_image_0000001360320977](figures/zh-cn_image_0000001360320977.png) ## 下一步学习 -恭喜您,已完成Hi3516的快速上手!建议您下一步进入[带屏摄像头类产品开发](../guide/device-camera-control-overview.md)的学习 。 +恭喜您,已完成Hi3516的快速上手!建议您进行下一步学习 。可参考: + +- [屏幕和摄像头控制](../guide/device-camera-control-overview.md) + +- [视觉应用开发](../guide/device-camera-visual-overview.md) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3568-build.md b/zh-cn/device-dev/quick-start/quickstart-ide-3568-build.md new file mode 100644 index 0000000000000000000000000000000000000000..923fe7bbaf0ee4ebcd696de0e14a21cc020fe7d1 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3568-build.md @@ -0,0 +1,41 @@ +# 编译 + + +DevEco Device Tool支持Rockchip RK3568开发板的源码一键编译功能,提供编译工具链和编译环境依赖的检测及一键安装,简化复杂编译环境的同时,提升了编译的效率。 + + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> RK3568编译环境为Ubuntu环境。 + + +1. 在菜单栏中点击**Project Settings**,进入RK3568工程配置界面。 + + ![zh-cn_image_0000001327669509](figures/zh-cn_image_0000001327669509.png) + +2. 在**Tool Chain**页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击**Install**,自动安装所需工具链。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 + + ![zh-cn_image_0000001292531806](figures/zh-cn_image_0000001292531806.png) + + 安装RK3568相关工具链,部分工具的安装需要使用root权限,请在**TERMINAL**窗口输入用户密码进行安装。 + + ![zh-cn_image_0000001327429541](figures/zh-cn_image_0000001327429541.png) + + 工具链自动安装完成后如下图所示。 + + ![zh-cn_image_0000001349388493](figures/zh-cn_image_0000001349388493.png) + +3. 在**hh_scdy200**配置页签中,设置源码的编译类型**build_type**,默认为"debug"类型,请根据需要进行修改。然后点击**Save**进行保存。 + + ![zh-cn_image_0000001276354454](figures/zh-cn_image_0000001276354454.png) + +4. 在DevEco Device Tool界面的**PROJECT TASKS**中,点击对应开发板下的**Build**,执行编译。 + + ![zh-cn_image_0000001265516901](figures/zh-cn_image_0000001265516901.png) + +5. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 + + ![zh-cn_image_0000001307162054](figures/zh-cn_image_0000001307162054.png) + + 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的[RK3568开发板烧录](quickstart-ide-3568-burn.md)。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3568-burn.md b/zh-cn/device-dev/quick-start/quickstart-ide-3568-burn.md new file mode 100644 index 0000000000000000000000000000000000000000..a8a3a5267de371fbe6189fdd0a7f215554edbaaf --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3568-burn.md @@ -0,0 +1,58 @@ +# 烧录 + + +烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 + + +RK3568的镜像烧录通过Windows环境进行烧录,开发者启动烧录操作后,DevEco Device Tool通过Remote远程模式,将Ubuntu环境下编译生成的待烧录程序文件拷贝至Windows目录下,然后通过Windows的烧录工具将程序文件烧录至开发板中。 + + +## 前提条件 + +[下载](https://gitee.com/hihope_iot/docs/blob/master/HiHope_DAYU200/%E7%83%A7%E5%86%99%E5%B7%A5%E5%85%B7%E5%8F%8A%E6%8C%87%E5%8D%97/windows/DriverAssitant_v5.1.1.zip)并安装驱动DriverInstall.exe。 + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> 如果已经安装旧版本的烧写工具,请先点击"驱动卸载"按钮卸载驱动,然后再点击"驱动安装"按钮安装驱动。 + + +## 操作步骤 + +1. 请连接好电脑和待烧录开发板,连接USB接口,具体可参考[RK3568开发板介绍](quickstart-appendix-rk3568.md)。 + +2. 在DevEco Device Tool中,选择**REMOTE DEVELOPMENT > Local PC**,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001326512673](figures/zh-cn_image_0000001326512673.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001275432904](figures/zh-cn_image_0000001275432904.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 + + ![zh-cn_image_0000001285658392](figures/zh-cn_image_0000001285658392.png) + +3. 在菜单栏中点击**Project Settings**按钮,进入RK3568工程配置界面。 + + ![zh-cn_image_0000001330777737](figures/zh-cn_image_0000001330777737.png) + +4. 在**Tool Chain**页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的**Install**按钮在线安装。 + + ![3865-uploader](figures/3865-uploader.png) + +5. 在**hh_scdy200**页签,设置烧录选项,包括upload_partitions和upload_protocol。 + - **upload_partitions_profile**:选择待烧录程序的配置文件,该配置文件会指定烧录文件名称、起始烧录地址、地址长度等信息;同时请勾选**Enable to use upload_partitions_profile for upload**选项。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如需修改烧录profile文件,在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 + > + > 首次烧录,请勾选**Enable to use upload_partitions_profile for upload**选项,会自动生成upload_partitions文件。再次烧录时,可根据实际情况选择生成upload_partitions文件进行自定义烧录,也可以再勾选**Enable to use upload_partitions_profile for upload**选项,使用upload_partitions_profile重新生成upload_partitions文件用于烧录。 + - **upload_protocol**:选择烧录协议,固定选择“upgrade”。 + + ![zh-cn_image_0000001338663697](figures/zh-cn_image_0000001338663697.png) + +6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 + +7. 在**PROJECT TASKS**中,点击hh_scdy200下的**Upload**按钮启动烧录。 + + ![zh-cn_image_0000001280147358](figures/zh-cn_image_0000001280147358.png) + +8. 当屏幕提示“Operation paused,Please press Enter key to continue”,请按**回车键**继续。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果开发板未处于烧录模式,屏幕会提示“The board is not in Loader mode.Please Hold on the VOL+key...”,此时,请长按音量+键,3秒后点击**RESET**键,然后再过3秒放开音量+键,使开发板进入烧录模式。 + + 等待开发板烧录完成,当屏幕提示如下信息时,表示烧录成功。 + + ![zh-cn_image_0000001327549705](figures/zh-cn_image_0000001327549705.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-create.md b/zh-cn/device-dev/quick-start/quickstart-ide-3568-helloworld.md similarity index 85% rename from zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-create.md rename to zh-cn/device-dev/quick-start/quickstart-ide-3568-helloworld.md index 3068b2e0a99a3ed41915ecfe378ff18bd695cd05..cbd93e684bfcff79a1e518114b4d21af9e6cdd18 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-create.md +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3568-helloworld.md @@ -4,11 +4,16 @@ 下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。 +## 前提条件 + +已参考[创建工程并获取源码](quickstart-ide-import-project.md),创建RK3568开发板的源码工程。 + + ## 示例目录 示例完整目录如下。 - + ``` applications/sample/hello │── BUILD.gn @@ -19,22 +24,21 @@ applications/sample/hello ├── bundle.json build └── subsystem_config.json -vendor/hisilicon -└── Hi3516DV300 - └── config.json +productdefine/common +└── products + └── rk3568.json ``` ## 开发步骤 -请在源码目录中通过以下步骤创建“Hello World”应用程序: - +请在源码目录中通过以下步骤创建“Hello World”应用程序。 1. 创建目录,编写业务代码。 - + 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改World为OHOS)。其中helloworld.h包含字符串打印函数HelloPrint的声明。当前应用程序可支持标准C及C++的代码开发。 - + ``` #include #include "helloworld.h" @@ -55,7 +59,7 @@ vendor/hisilicon 再添加头文件applications/sample/hello/include/helloworld.h,代码如下所示。 - + ``` #ifndef HELLOWORLD_H #define HELLOWORLD_H @@ -76,9 +80,8 @@ vendor/hisilicon ``` 2. 新建编译组织文件。 - 1. 新建applications/sample/hello/BUILD.gn文件,内容如下所示: - + ``` import("//build/ohos.gni") # 导入编译模板 ohos_executable("helloworld") { # 可执行模块 @@ -99,7 +102,7 @@ vendor/hisilicon } ``` 2. 新建applications/sample/hello/bundle.json文件,添加sample部件描述,内容如下所示。 - + ``` { "name": "@ohos/hello", @@ -138,9 +141,10 @@ vendor/hisilicon bundle.json文件包含两个部分,第一部分描述该部件所属子系统的信息,第二部分component则定义该部件构建相关配置。添加的时候需要指明该部件包含的模块sub_component,假如有提供给其它部件的接口,需要在inner_kits中说明,假如有测试用例,需要在test中说明,inner_kits与test没有也可以不添加。 3. 修改子系统配置文件。 - + 在build/subsystem_config.json中添加新建的子系统的配置。 - + + ``` "sample": { "path": "applications/sample/hello", @@ -149,9 +153,12 @@ vendor/hisilicon ``` 4. 修改产品配置文件。 - - 在vendor/hisilicon/Hi3516DV300/config.json中添加对应的hello部件,直接添加到原有部件后即可。 - + + 在productdefine/common/products/rk3568.json中添加对应的hello部件,直接添加到原有部件后即可。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 本章节操作是以OpenHarmony-v3.1-Release版本为例进行操作的,该版本中,RK3568的配置文件为productdefine/common/products/rk3568.json;若源码版本大于OpenHarmony-v3.1-Release时,RK3568的配置文件为vendor/hihope/rk3568/config.json。 + + ``` "usb:usb_manager_native":{}, "applications:prebuilt_hap":{}, diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3568-running.md b/zh-cn/device-dev/quick-start/quickstart-ide-3568-running.md new file mode 100644 index 0000000000000000000000000000000000000000..786634e696a78dcb56a0773d9e82a5b09536ba41 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3568-running.md @@ -0,0 +1,21 @@ +# 运行 + + +## 启动系统 + +烧录完成重启开发板后,系统将会自动启动。开发板附带的屏幕呈现以下界面,表明系统已运行成功。 + + **图1** 系统启动效果图   + + ![quickstart-pkg-3568-running-restart](figures/quickstart-pkg-3568-running-restart.png) + + +## 运行“Hello World” + +1. 设备启动后打开串口工具(以putty为例),波特率设置为1500000,连接设备。 + + ![rk3568-run-configuration](figures/rk3568-run-configuration.png) + +2. 打开串口后,在任意目录(以设备根目录为例)下输入命令helloworld后回车,界面打印“Hello World!”,程序运行成功。 + + ![helloworld](figures/helloworld.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3861-build.md b/zh-cn/device-dev/quick-start/quickstart-ide-3861-build.md new file mode 100644 index 0000000000000000000000000000000000000000..fe688893ece0b4c486cb58c4fe08ea9cb5234d89 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3861-build.md @@ -0,0 +1,41 @@ +# 编译 + + +DevEco Device Tool支持Hi3861V100开发板的源码一键编译功能,提供编译工具链和编译环境依赖的检测及一键安装,简化复杂编译环境的同时,提升了编译的效率。 + + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> Hi3861V100编译环境为Ubuntu环境。 + + +1. 在菜单栏中点击**Project Settings**,进入Hi3861工程配置界面。 + + ![zh-cn_image_0000001275483042](figures/zh-cn_image_0000001275483042.png) + +2. 在**Tool Chain**页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击**Install**,自动安装所需工具链。 + + ![zh-cn_image_0000001333256741](figures/zh-cn_image_0000001333256741.png) + +3. 安装Hi3861V100相关工具链,部分工具安装需要使用root权限,请在**TERMINAL**窗口输入用户密码进行安装。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 + + ![zh-cn_image_0000001280938208](figures/zh-cn_image_0000001280938208.png) + + 工具链自动安装完成后如下图所示。 + + ![zh-cn_image_0000001281378224](figures/zh-cn_image_0000001281378224.png) + +4. 在**hi3861**配置页签中,设置源码的编译类型**build_type**,默认为"debug"类型,请根据需要进行修改。然后点击**Save**进行保存。 + + ![zh-cn_image_0000001333581089](figures/zh-cn_image_0000001333581089.png) + +5. 在DevEco Device Tool界面的**PROJECT TASKS**中,点击对应开发板下的**Build**,执行编译。 + + ![zh-cn_image_0000001281221352](figures/zh-cn_image_0000001281221352.png) + +6. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 + + ![zh-cn_image_0000001405938781](figures/zh-cn_image_0000001405938781.png) + + 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的[Hi3861V100开发板烧录](quickstart-ide-3861-burn.md)。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3861-burn.md b/zh-cn/device-dev/quick-start/quickstart-ide-3861-burn.md new file mode 100644 index 0000000000000000000000000000000000000000..607463264e079110e64934138b7a805dabcc5d67 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3861-burn.md @@ -0,0 +1,54 @@ +# 烧录 + + +烧录是指将编译后的程序文件下载到开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 + + +Hi3861V100的镜像烧录通过Windows环境进行烧录,开发者启动烧录操作后,DevEco Device Tool通过Remote远程模式,将Ubuntu环境下编译生成的待烧录程序文件拷贝至Windows目录下,然后通过Windows的烧录工具将程序文件烧录至开发板中。 + + +## 前提条件 + +- 代码已[编译](quickstart-ide-3861-build.md)完成。 + +- 根据[USB转串口驱动安装指南](https://device.harmonyos.com/cn/docs/documentation/guide/hi3861-drivers-0000001058153433)安装USB转串口的驱动程序。 + + +## 操作步骤 + +1. 请连接好电脑和待烧录开发板,需要连接USB口,具体可参考[Hi3861V100开发板介绍](quickstart-appendix-hi3861.md)。 + +2. 在DevEco Device Tool中,选择**REMOTE DEVELOPMENT > Local PC**,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001326512673](figures/zh-cn_image_0000001326512673.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 + - 如果Local PC右边连接按钮为![zh-cn_image_0000001275432904](figures/zh-cn_image_0000001275432904.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 + + ![zh-cn_image_0000001285658392](figures/zh-cn_image_0000001285658392.png) + +3. 在菜单栏中点击**Project Settings**按钮,进入Hi3861V100工程配置界面。 + + ![zh-cn_image_0000001333802045](figures/zh-cn_image_0000001333802045.png) + +4. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 + + ![Phoenix-upload](figures/Phoenix-upload.png) + +5. 在“hi3861”页签,设置烧录选项,包括upload_port、upload_protocol和upload_partitions。 + - upload_port:选择已查询的串口号。 + - upload_protocol:选择烧录协议,选择“hiburn-serial”。 + - upload_partitions:选择待烧录的文件名称。DevEco Device Tool已预置默认的烧录文件信息,如果需要修改待烧录文件地址,可点击每个待烧录文件后的![zh-cn_image_0000001333642545](figures/zh-cn_image_0000001333642545.png)按钮进行修改。 + + ![zh-cn_image_0000001345770181](figures/zh-cn_image_0000001345770181.png) + +6. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 + +7. 在“PROJECT TASKS”中,点击hi3861下的**Upload**按钮,启动烧录。 + + ![zh-cn_image_0000001333322693](figures/zh-cn_image_0000001333322693.png) + +8. 启动烧录后,显示如下提示信息时,请在15秒内,按下开发板上的RST按钮重启开发板。 + + ![hi3861-upload-restart](figures/hi3861-upload-restart.png) + + 重新上电后,界面提示如下信息时,表示烧录成功。 + + ![zh-cn_image_0000001281002722](figures/zh-cn_image_0000001281002722.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-helloworld.md b/zh-cn/device-dev/quick-start/quickstart-ide-3861-helloworld.md similarity index 75% rename from zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-helloworld.md rename to zh-cn/device-dev/quick-start/quickstart-ide-3861-helloworld.md index 9a511787ec586b345bebbd4c6b8f93852e4b5122..4c4794ef02fbf6e9389630753efc6455baac0108 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-helloworld.md +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3861-helloworld.md @@ -4,13 +4,20 @@ 下方将通过修改源码的方式展示如何编写简单程序,输出“Hello world”。请在下载的源码目录中进行下述操作。 +## 前提条件 + +已参考[创建工程并获取源码](quickstart-ide-import-project.md),创建Hi3861开发板的源码工程。 + + +## 操作步骤 + 1. 确定目录结构。 - 开发者编写业务时,务必先在./applications/sample/wifi-iot/app路径下新建一个目录(或一套目录结构),用于存放业务源码文件。 + 开发者编写业务代码时,务必先在./applications/sample/wifi-iot/app路径下新建一个目录(或一套目录结构),用于存放业务源码文件。 例如:在app下新增业务my_first_app,其中hello_world.c为业务代码,BUILD.gn为编译脚本,具体规划目录结构如下: - + ``` . └── applications @@ -39,12 +46,12 @@ ``` 3. 编写用于将业务构建成静态库的BUILD.gn文件。 - + 新建./applications/sample/wifi-iot/app/my_first_app下的BUILD.gn文件,并完成如下配置。 如步骤1所述,BUILD.gn文件由三部分内容(目标、源文件、头文件路径)构成,需由开发者完成填写。 - + ``` static_library("myapp") { sources = [ @@ -61,10 +68,13 @@ - include_dirs中指定source所需要依赖的.h文件路径。 4. 添加新组件。 + + 修改文件build/lite/components/applications.json,添加组件hello_world_app的配置,如下所示为applications.json文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**build/lite/components/communication.json**,添加组件hello_world_app的配置,如下所示为communication.json文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 本章节操作是以OpenHarmony-v3.1-Release版本为例进行操作的,该版本中,组件配置文件为build/lite/components/applications.json;若源码版本大于等于OpenHarmony 3.2 Beta2时,组件配置文件为build/lite/components/communication.json。 - + ``` { "components": [ @@ -124,10 +134,10 @@ ``` 5. 修改单板配置文件。 + + 修改文件vendor/hisilicon/hispark_pegasus/config.json,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**vendor/hisilicon/hispark_pegasus/config.json**,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - + ``` { "subsystem": "applications", diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-3861-running.md b/zh-cn/device-dev/quick-start/quickstart-ide-3861-running.md new file mode 100644 index 0000000000000000000000000000000000000000..fb7f8d06fc4d649663f870e77f6c29e9f1232bec --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-3861-running.md @@ -0,0 +1,126 @@ +# 运行 + + +## 联网配置 + +由于Hi3861为WLAN模组,您可以在版本编译及烧录后,通过如下操作,使开发板实现联网功能。 + +1. 保持Windows工作台和Hi3861 WLAN模组的连接状态,在**PROJECT TASKS**中,单击**Monitor**,打开串口终端。 + + **图1** 打开DevEco串口终端 + + ![zh-cn_image_0000001406299413](figures/quickstart-ide-3861-running-mirror.png) + +2. 复位Hi3861 WLAN模组,终端界面显示“ready to OS start”,则启动成功。 + + **图2** Hi3861 WLAN模组复位成功示意图 + + ![quickstart-ide-3861-running-restart](figures/quickstart-ide-3861-running-restart.png) + +3. 在DevEco的串口终端中,依次执行如下AT命令,启动STA模式,连接指定AP热点,并开启DHCP功能。 + + ``` + AT+STARTSTA # 启动STA模式 + AT+SCAN # 扫描周边AP + AT+SCANRESULT # 显示扫描结果 + AT+CONN="SSID",,2,"PASSWORD" # 连接指定AP,其中SSID/PASSWORD为待连接的热点名称和密码 + AT+STASTAT # 查看连接结果 + AT+DHCP=wlan0,1 # 通过DHCP向AP请求wlan0的IP地址 + ``` + +4. 查看Hi3861 WLAN模组与网关联通是否正常,如下图所示。 + + ``` + AT+IFCFG # 查看模组接口IP + AT+PING=X.X.X.X # 检查模组与网关的联通性,其中X.X.X.X需替换为实际的网关地址 + ``` + + **图3** Hi3861 WLAN模组联网成功示意图 + + ![quickstart-ide-3861-running-success](figures/quickstart-ide-3861-running-success.png) + + +## 调测验证 + +完成烧录及联网之后,用户可根据需要进行调试验证。目前调试验证的方法有以下两种,开发者可以根据具体业务情况选择。 + +1. 通过printf打印日志 + +2. 通过asm文件定位panic问题 + +由于本示例业务简单,采用printf打印日志的调试方式即可。下方将介绍这两种调试手段的使用方法。 + + +### printf打印 + +代码中增加printf维测,信息会直接打印到串口上。开发者可在业务关键路径或业务异常位置增加日志打印,如下所示: + + +``` +void HelloWorld(void) +{ + printf("[DEMO] Hello world.\n"); +} +``` + + +### 根据asm文件进行问题定位 + + 系统异常退出时,会在串口上打印异常退出原因调用栈信息,如下文所示。通过解析异常栈信息可以定位异常位置。 + +``` +=======KERNEL PANIC======= +**Call Stack* +Call Stack 0 -- 4860d8 addr:f784c +Call Stack 1 -- 47b2b2 addr:f788c +Call Stack 2 -- 3e562c addr:f789c +Call Stack 3 -- 4101de addr:f78ac +Call Stack 4 -- 3e5f32 addr:f78cc +Call Stack 5 -- 3f78c0 addr:f78ec +Call Stack 6 -- 3f5e24 addr:f78fc +Call Stack end*** +``` + +为解析上述调用栈信息,需要使用到Hi3861_wifiiot_app.asm文件,该文件记录了代码中函数在Flash上的符号地址以及反汇编信息。asm文件会随版本打包一同构建输出,存放在./out/wifiiot/路径下。 + +1. 将调用栈CallStack信息保存到txt文档中,以便于编辑。(可选) + +2. 打开asm文件,并搜索CallStack中的地址,列出对应的函数名信息。通常只需找出前几个栈信息对应的函数,就可明确异常代码方向。 + + ``` + Call Stack 0 -- 4860d8 addr:f784c -- WadRecvCB + Call Stack 1 -- 47b2b2 addr:f788c -- wal_sdp_process_rx_data + Call Stack 2 -- 3e562c addr:f789c + Call Stack 3 -- 4101de addr:f78ac + Call Stack 4 -- 3e5f32 addr:f78cc + Call Stack 5 -- 3f78c0 addr:f78ec + Call Stack 6 -- 3f5e24 addr:f78fc + ``` + +3. 根据以上调用栈信息,可以定位WadRecvCB函数中出现了异常。 + + ![hi3861-test](figures/hi3861-test.png) + +4. 完成代码排查及修改。 + + +## 运行结果 + +示例代码编译、烧录、运行、调测后,重启开发板后将自动在界面输出如下结果: + + +``` +ready to OS start +FileSystem mount ok. +wifi init success! +[DEMO] Hello world. +``` + + +## 下一步学习 + +恭喜,您已完成Hi3861 WLAN模组快速上手!建议您下一步进入的学习 。可参考: + +- [LED外设控制](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/guide/device-wlan-led-control.md) + +- [集成三方SDK](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/guide/device-wlan-sdk.md) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-env--win.md b/zh-cn/device-dev/quick-start/quickstart-ide-env--win.md new file mode 100644 index 0000000000000000000000000000000000000000..055d303163bd564fdc49e6f66765bda88de1eef8 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-env--win.md @@ -0,0 +1,54 @@ +# 搭建Windows环境 + +在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。 + +在以上的设备开发场景中,可以搭建一套Windows+Ubuntu混合开发的环境,其中使用Windows平台的DevEco Device Tool可视化界面进行相关操作,通过远程连接的方式对接Ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对Ubuntu下的源码进行开发、编译、烧录等操作。 + +本章节介绍开发所需Windows环境的搭建方法。 + +## 系统要求 + +- Windows 10 64位系统。 + +- Windows系统上安装的DevEco Device Tool为3.0 Release版本。 + + +## 操作步骤 + +1. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Windows版。 + +2. 解压DevEco Device Tool压缩包,双击安装包程序,单击**Next**进行安装。 + +3. 设置DevEco Device Tool的安装路径,请注意安装路径不能包含中文字符,**不建议安装到C盘目录**,单击**Next**。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果您已安装DevEco Device Tool 3.0 Beta2及以前的版本,则在安装新版本时,会先卸载旧版本,卸载过程中出现错误提示“Error during uninstallation process: Cannot remove directory...”时,请单击**Ignore**继续安装,该错误不影响新版本的安装。 + + ![zh-cn_image_0000001326386753](figures/zh-cn_image_0000001326386753.png) + +4. 根据安装向导提示,勾选要自动安装的软件。 + 1. 在弹出**VS Code installation confirm**页面,勾选“Install VS Code 1.62.2automatically”,单击**Next**。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果检测到Visual Studio Code已安装,且版本为1.62及以上,则会跳过该步骤。 + + ![zh-cn_image_0000001285965546](figures/zh-cn_image_0000001285965546.png) + 2. 在弹出的**Python select page**选择“Download from Huawei mirror”,单击**Next**。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果系统已安装可兼容的Python版本(Python 3.8~3.9版本),可选择“Use one of compatible on your PC”。 + + ![zh-cn_image_0000001285965778](figures/zh-cn_image_0000001285965778.png) + +5. 在以下界面单击**Next**。 + + ![zh-cn_image_0000001285806330](figures/zh-cn_image_0000001285806330.png) + +6. 请详细阅读以下界面的用户协议和隐私声明,需勾选“I accept the licenses”后,才能继续下一步的安装。 + + ![zh-cn_image_0000001275586896](figures/zh-cn_image_0000001275586896.png) + +7. 继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,单击**Finish**,关闭DevEco Device Tool安装向导。 + + ![zh-cn_image_0000001275267040](figures/zh-cn_image_0000001275267040.png) + +8. 打开Visual Studio Code,进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。 + + ![zh-cn_image_0000001338012765](figures/zh-cn_image_0000001338012765.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-env-remote.md b/zh-cn/device-dev/quick-start/quickstart-ide-env-remote.md new file mode 100644 index 0000000000000000000000000000000000000000..a6c260e917f5b49cb1f04cd4b7f9ae3bd78d9e50 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-env-remote.md @@ -0,0 +1,73 @@ +# 配置远程访问环境 + + +在搭建了Windows和Ubuntu开发环境后,需要通过下述设置,使得Windows可以远程访问Ubuntu,为后续烧录文件的传输做好准备。 + + +## 安装SSH服务并获取远程访问的IP地址 + +1. 在Ubuntu系统中,打开终端工具,执行如下命令安装SSH服务。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果执行该命令失败,提示openssh-server和openssh-client依赖版本不同,请根据CLI界面提示信息,安装openssh-client相应版本后(例如:sudo apt-get install openssh-client=1:8.2p1-4),再重新执行该命令安装openssh-server。 + + + ``` + sudo apt-get install openssh-server + ``` + +2. 执行如下命令,启动SSH服务。 + + ``` + sudo systemctl start ssh + ``` + +3. 执行如下命令,获取当前用户的IP地址,用于Windows系统远程访问Ubuntu环境。 + + ``` + ifconfig + ``` + + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 如果执行ifconfig命令提示“command-not-found”,请执行**sudo apt-get install net-tools**命令安装网络查询工具,然后重新查询IP地址。 + + ![zh-cn_image_0000001215737140](figures/zh-cn_image_0000001215737140.png) + + +## 安装Remote SSH + +1. 打开Windows系统下的Visual Studio Code,点击![zh-cn_image_0000001239080359](figures/zh-cn_image_0000001239080359.png),在插件市场的搜索输入框中输入“remote-ssh”。 + + ![zh-cn_image_0000001285647778](figures/zh-cn_image_0000001285647778.png) + +2. 点击Remote-SSH的**Install**,安装Remote-SSH。安装成功后,在**INSTALLED**下可以看到已安装Remote-SSH。 + + ![zh-cn_image_0000001238880335](figures/zh-cn_image_0000001238880335.png) + + +## 远程连接Ubuntu环境 + +1. 打开Windows系统的Visual Studio Code,点击![zh-cn_image_0000001238760373](figures/zh-cn_image_0000001238760373.png),在**SSH TARGETS**下,单击+。 + + ![zh-cn_image_0000001215878922](figures/zh-cn_image_0000001215878922.png) + +2. 在弹出的SSH连接命令输入框中输入“ssh _username_\@_ip_address_”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号。 + + ![zh-cn_image_0000001215879750](figures/zh-cn_image_0000001215879750.png) + +3. 在弹出的输入框中,选择SSH configuration文件,选择默认的第一选项即可。 + + ![zh-cn_image_0000001260519729](figures/zh-cn_image_0000001260519729.png) + +4. 在SSH TARGETS中,找到远程计算机,点击![zh-cn_image_0000001194080414](figures/zh-cn_image_0000001194080414.png),打开远程计算机。 + + ![zh-cn_image_0000001215720398](figures/zh-cn_image_0000001215720398.png) + +5. 在弹出的输入框中,选择**Linux**,然后在选择**Continue**,然后输入登录远程计算机的密码,连接远程计算机 。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 在Windows系统远程访问Ubuntu过程中,需要频繁的输入密码进行连接,为解决该问题,您可以使用SSH公钥来进行设置,设置方法请参考[注册远程访问Ubuntu环境的公钥](https://device.harmonyos.com/cn/docs/documentation/guide/ide-registering-public-key-0000001247162706)。 + + ![zh-cn_image_0000001215897530](figures/zh-cn_image_0000001215897530.png) + + 连接成功后,等待在远程计算机用户目录下的.vscode-server文件夹下自动安装插件,安装完成后,根据界面提示在Windows系统下重新加载Visual Studio Code,便可以在Windows的DevEco Device Tool界面进行源码开发、编译、烧录等操作。至此,环境搭建完成,如下图所示,左下角显示远程连接计算机的IP地址。 + + ![zh-cn_image_0000001338102621](figures/zh-cn_image_0000001338102621.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-env-ubuntu.md b/zh-cn/device-dev/quick-start/quickstart-ide-env-ubuntu.md new file mode 100644 index 0000000000000000000000000000000000000000..bfda5a1b0d8e37bf4252ba381c4fa3f2943be04e --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-env-ubuntu.md @@ -0,0 +1,64 @@ +# 搭建Ubuntu环境 + +在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。 + +在以上的设备开发场景中,可以搭建一套Windows+Ubuntu混合开发的环境,其中使用Windows平台的DevEco Device Tool可视化界面进行相关操作,通过远程连接的方式对接Ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对Ubuntu下的源码进行开发、编译、烧录等操作。 + +本章节介绍开发所需Ubuntu环境的搭建方法。 + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> 如果没有Ubuntu系统,可在Windows系统中通过虚拟机方式搭建Ubuntu系统,具体请参考[Ubuntu系统安装指导](https://developer.huawei.com/consumer/cn/training/course/video/C101639987816176315)。Ubuntu系统安装完成后,请根据指导完成[Ubuntu基础环境配置](https://developer.huawei.com/consumer/cn/training/course/video/C101639988048536240),然后再根据本章节进行DevEco Device Tool工具的安装。 + + +## 系统要求 + +- Ubuntu系统要求:Ubuntu18.04~21.10版本,内存推荐16 GB及以上。 + +- Ubuntu系统的用户名不能包含中文字符。 + + +## 操作步骤 + +1. 将Ubuntu Shell环境修改为bash。 + 1. 执行如下命令,确认输出结果为bash。如果输出结果不是bash,请根据子步骤2,将Ubuntu shell修改为bash。 + + ``` + ls -l /bin/sh + ``` + + ![zh-cn_image_0000001226764302](figures/zh-cn_image_0000001226764302.png) + 2. 打开终端工具,执行如下命令,输入密码,然后选择**No**,将Ubuntu shell由dash修改为bash。 + + ``` + sudo dpkg-reconfigure dash + ``` + + ![ubuntu-dash-to-bash](figures/ubuntu-dash-to-bash.png) + +2. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Linux版本。 + +3. 解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。 + 1. 进入DevEco Device Tool软件包目录,执行如下命令解压软件包,其中devicetool-linux-tool-3.1.0.200.zip为软件包名称,请根据实际进行修改。 + + ``` + unzip devicetool-linux-tool-3.1.0.200.zip + ``` + 2. 进入解压后的文件夹,执行如下命令,赋予安装文件可执行权限,其中devicetool-linux-tool-3.1.0.200.sh请根据实际进行修改。 + + ``` + chmod u+x devicetool-linux-tool-3.1.0.200.sh + ``` + +4. 执行如下命令,安装DevEco Device Tool,其中devicetool-linux-tool-3.1.0.200.sh请根据实际进行修改。 + + ``` + sudo ./devicetool-linux-tool-3.1.0.200.sh + ``` + +5. 在用户协议和隐私声明签署界面,请详细阅读用户协议和隐私声明,需签署同意用户协议和隐私声明才能进行下一步的安装,可通过键盘的上下按键进行选择。 + + ![zh-cn_image_0000001340557741](figures/zh-cn_image_0000001340557741.png) + + 安装完成后,当界面输出“DevEco Device Tool successfully installed.”时,表示DevEco Device Tool安装成功。 + + ![zh-cn_image_0000001338201457](figures/zh-cn_image_0000001338201457.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-env.md b/zh-cn/device-dev/quick-start/quickstart-ide-env.md new file mode 100644 index 0000000000000000000000000000000000000000..3cb3ffb46bf738617f74bbc0a651a3d641db4d2a --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-env.md @@ -0,0 +1,7 @@ +# 搭建开发环境 + + +在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。 + + +在以上的设备开发场景中,可以搭建一套Windows+Ubuntu混合开发的环境,其中使用Windows平台的DevEco Device Tool可视化界面进行相关操作,通过远程连接的方式对接Ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对Ubuntu下的源码进行开发、编译、烧录等操作。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-import-project.md b/zh-cn/device-dev/quick-start/quickstart-ide-import-project.md new file mode 100644 index 0000000000000000000000000000000000000000..4692ddf4862e7397586a9abd19f00caed050a1f0 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-import-project.md @@ -0,0 +1,41 @@ +# 创建工程并获取源码 + + +在通过DevEco Device Tool创建OpenHarmony工程时,可自动下载相应版本的OpenHarmony源码,源码类型包括OpenHarmony Stable Version、OpenHarmony Sample和HarmonyOS Connect Solution。 + + +OpenHarmony Stable Version源码为OpenHarmony稳定版本源码,通过镜像站点获取,支持OpenHarmony-v1.1.4-LTS、OpenHarmony-v3.0.3-LTS和OpenHarmony-v3.1-Release版本。 + + +镜像站点的源码,一般取自该稳定版本的发布时间点,因此,通过镜像站点获取的源码可能不是该版本最新源码。如果您需要获取对应版本的最新源码,请参考[从码云仓库获取源码](../get-code/sourcecode-acquire.md),获取源码后,请参考《[HUAWEI DevEco Device Tool 使用指南](https://device.harmonyos.com/cn/docs/documentation/guide/service_introduction-0000001050166905)》的“导入OpenHarmony源码”章节,在DevEco Device Tool中导入源码。 + + +此处以下载OpenHarmony Stable Version源码为例,说明操作过程。关于OpenHarmony Sample和HarmonyOS Connect Solution源码的下载,可参考《[HUAWEI DevEco Device Tool 使用指南](https://device.harmonyos.com/cn/docs/documentation/guide/service_introduction-0000001050166905)》。 + + +## 前提条件 + +只有在Windows环境通过Remote SSH远程连接上Ubuntu环境的情况下,才可以创建OpenHarmony新工程,具体请参考[搭建开发环境](quickstart-ide-env--win.md)。否则,在DevEco Device Tool的Home界面没有“**New Project**”按钮。 + + +## 操作步骤 + +OpenHarmony稳定版本源码,支持OpenHarmony-v1.1.4-LTS、OpenHarmony-v3.0.3-LTS和OpenHarmony-v3.1-Release版本。 + +1. 打开DevEco Device Tool,进入Home页,点击**New Project**创建新工程。 + + ![zh-cn_image_0000001272258726](figures/zh-cn_image_0000001272258726.png) + +2. 在新工程的配置向导页,配置工程相关信息,包括: + - **OpenHarmony Source Code**:选择需要下载的OpenHarmony源码,请选择**OpenHarmony Stable Version**下的源码版本,支持OpenHarmony-v1.1.4-LTS、OpenHarmony-v3.0.3-LTS和OpenHarmony-v3.1-Release版本。 + - **Project Name**:设置工程名称。 + - **Project Path**:选择工程文件存储路径。 + - **SOC**:选择支持的芯片。 + - **Board**:选择支持的开发板。 + - **Product**:选择产品。 + + ![zh-cn_image_0000001338187673](figures/zh-cn_image_0000001338187673.png) + +3. 工程配置完成后,点击**Confirm**,DevEco Device Tool会自动启动OpenHarmony源码的下载。由于OpenHarmony稳定版本源码包体积较大,请耐心等待源码下载完成。 + + ![zh-cn_image_0000001338536201](figures/zh-cn_image_0000001338536201.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-appendix.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-appendix.md new file mode 100644 index 0000000000000000000000000000000000000000..37735011da2235266fe5a6397df0cca595609111 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide-lite-appendix.md @@ -0,0 +1,11 @@ +# 附录 + + + +- **[Hi3516开发板介绍](quickstart-appendix-hi3516.md)** + +- **[Hi3861开发板介绍](quickstart-appendix-hi3861.md)** + +- **[RK3568开发板介绍](quickstart-appendix-rk3568.md)** + +- **[编译形态整体说明](quickstart-appendix-compiledform.md)** \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-create-project.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-create-project.md deleted file mode 100644 index 95011ede77ffcc9c1493fb241c9a8de7044d0724..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-create-project.md +++ /dev/null @@ -1,22 +0,0 @@ -# 导入源码工程 - - -在完成[搭建Windows+Ubuntu混合开发环境](../quick-start/quickstart-ide-lite-env-setup-win-ubuntu.md)和[获取源码](../quick-start/quickstart-ide-lite-sourcecode-acquire.md)后,您需要在Windows环境中按照如下步骤创建源码工程,之后方可在DevEco Device Tool中进行后续的操作。 - - -1. 打开DevEco Device Tool,进入Home页,点击**Import Project**打开工程。 - - ![zh-cn_image_0000001278358765](figures/zh-cn_image_0000001278358765.png) - -2. 选择OpenHarmony源码根目录路径,然后再选择**Import OpenHarmony Source**选项,点击**Import**进行导入。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 工程存储路径不能包含中文字符、空格。如果工程存储路径包含中文字符或空格,可能导致编译失败。 - - ![zh-cn_image_0000001271477045](figures/zh-cn_image_0000001271477045.png) - -3. 在Import Project界面,选择**Product**后,会自动填充对应的SOC、Board、Company和Kernel信息,然后Ohos Ver选择对应的OpenHarmony源码版本。 - - ![zh-cn_image_0000001271237242](figures/zh-cn_image_0000001271237242.png) - -4. 点击**Open**打开工程或源码。 \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-env-setup-win-ubuntu.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-env-setup-win-ubuntu.md deleted file mode 100644 index 59b87777f61132550f187d59ee32b712754ef3f7..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-env-setup-win-ubuntu.md +++ /dev/null @@ -1,178 +0,0 @@ -# 搭建Windows+Ubuntu混合开发环境 - - -通常在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,需要使用Ubuntu的编译环境对源码进行编译。 - - -在以上的设备开发场景中,可以搭建一套Windows+Ubuntu混合开发的环境,其中使用Windows平台的DevEco Device Tool可视化界面进行相关操作,通过远程连接的方式对接Ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对Ubuntu下的源码进行开发、编译、烧录等操作。 - - -## 系统要求 - -- Windows系统要求:Windows10 64位系统。 - -- Ubuntu系统要求:Ubuntu18.04~21.10版本,内存推荐16 GB及以上。 - -- Ubuntu系统的用户名不能包含中文字符。 - -- Windows和Ubuntu系统上安装的DevEco Device Tool为3.0 Release版本。 - - -## 搭建Ubuntu环境 - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 如果没有Ubuntu系统,可在Windows系统中通过虚拟机方式搭建Ubuntu系统,具体请参考[Ubuntu系统安装指导](https://developer.huawei.com/consumer/cn/training/course/video/C101639987816176315)。Ubuntu系统安装完成后,请根据指导完成[Ubuntu基础环境配置](https://developer.huawei.com/consumer/cn/training/course/video/C101639988048536240),然后再根据本章节进行DevEco Device Tool工具的安装。 - -1. 将Ubuntu Shell环境修改为bash。 - 1. 执行如下命令,确认输出结果为bash。如果输出结果不是bash,请根据步骤2将Ubuntu shell修改为bash。 - - ``` - ls -l /bin/sh - ``` - - ![zh-cn_image_0000001226764302](figures/zh-cn_image_0000001226764302.png) - 2. 打开终端工具,执行如下命令,输入密码,然后选择**No**,将Ubuntu shell由dash修改为bash。 - - ``` - sudo dpkg-reconfigure dash - ``` - - ![zh-cn_image_0000001243641075](figures/zh-cn_image_0000001243641075.png) - -2. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Linux版本。 - -3. 解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。 - 1. 进入DevEco Device Tool软件包目录,执行如下命令解压软件包,其中devicetool-linux-tool-3.0.0.401.zip为软件包名称,请根据实际进行修改。 - - ``` - unzip devicetool-linux-tool-3.0.0.401.zip - ``` - 2. 进入解压后的文件夹,执行如下命令,赋予安装文件可执行权限,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - chmod u+x devicetool-linux-tool-3.0.0.401.sh - ``` - -4. 执行如下命令,安装DevEco Device Tool,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - sudo ./devicetool-linux-tool-3.0.0.401.sh - ``` - -5. 在用户协议和隐私声明签署界面,请详细阅读用户协议和隐私声明,需签署同意用户协议和隐私声明才能进行下一步的安装。 - - ![zh-cn_image_0000001322167645.png](figures/zh-cn_image_0000001322167645.png) - - 安装完成后,当界面输出“DevEco Device Tool successfully installed.”时,表示DevEco Device Tool安装成功。 - - ![zh-cn_image_0000001198722374](figures/zh-cn_image_0000001198722374.png) - - -## 搭建Windows开发环境 - -1. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download)Windows版。 - -2. 解压DevEco Device Tool压缩包,双击安装包程序,点击Next进行安装。 - -3. 设置DevEco Device Tool的安装路径,请注意安装路径不能包含中文字符,同时建议安装到非系统盘符,点击**Next**。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果您已安装DevEco Device Tool 3.0 Beta2及以前的版本,则在安装新版本时,会先卸载旧版本,卸载过程中出现如下错误提示时,请点击“Ignore”继续安装,该错误不影响新版本的安装。 - > - > ![zh-cn_image_0000001239275843](figures/zh-cn_image_0000001239275843.png) - - ![zh-cn_image_0000001270076961](figures/zh-cn_image_0000001270076961.png) - -4. 根据安装向导提示,勾选要自动安装的软件。 - 1. 在弹出VSCode installation confirm页面,勾选“Install VScode 1.62.2automatically”,点击**Next**。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果检测到Visual Studio Code已安装,且版本为1.62及以上,则会跳过该步骤。 - - ![zh-cn_image_0000001237801283](figures/zh-cn_image_0000001237801283.png) - 2. 在弹出的Python select page选择“Download from Huawei mirror”,点击**Next**。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果系统已安装可兼容的Python版本(Python 3.8~3.9版本),可选择“Use one of compatible on your PC”。 - - ![zh-cn_image_0000001193983334](figures/zh-cn_image_0000001193983334.png) - -5. 在以下界面点击**Next**。 - - ![zh-cn_image_0000001259180828](figures/zh-cn_image_0000001259180828.png) - -6. 请详细阅读以下界面的用户协议和隐私声明,这里须勾选"I accept the licenses",然后点击Next,安装向导才会继续进行软件下载和安装。 - - ![zh-cn_image_0000001307019009](figures/zh-cn_image_0000001307019009.png) - -7. 继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,点击**Finish**,关闭DevEco Device Tool安装向导。 - - ![zh-cn_image_0000001239650137](figures/zh-cn_image_0000001239650137.png) - -8. 打开Visual Studio Code,进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。 - - ![zh-cn_image_0000001225760456](figures/zh-cn_image_0000001225760456.png) - - -## 配置Windows远程访问Ubuntu环境 - - -### 安装SSH服务并获取远程访问的IP地址 - -1. 在Ubuntu系统中,打开终端工具,执行如下命令安装SSH服务。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果执行该命令失败,提示openssh-server和openssh-client依赖版本不同,请根据CLI界面提示信息,安装openssh-client相应版本后(例如:sudo apt-get install openssh-client=1:8.2p1-4),再重新执行该命令安装openssh-server。 - - - ``` - sudo apt-get install openssh-server - ``` - -2. 执行如下命令,启动SSH服务。 - - ``` - sudo systemctl start ssh - ``` - -3. 执行如下命令,获取当前用户的IP地址,用于Windows系统远程访问Ubuntu环境。 - - ``` - ifconfig - ``` - - ![zh-cn_image_0000001215737140](figures/zh-cn_image_0000001215737140.png) - - -### 安装Remote SSH - -1. 打开Windows系统下的Visual Studio Code,点击![zh-cn_image_0000001239080359](figures/zh-cn_image_0000001239080359.png),在插件市场的搜索输入框中输入“remote-ssh”。 - - ![zh-cn_image_0000001193920448](figures/zh-cn_image_0000001193920448.png) - -2. 点击Remote-SSH的**Install**按钮,安装Remote-SSH。安装成功后,在**INSTALLED**下可以看到已安装Remote-SSH。 - - ![zh-cn_image_0000001238880335](figures/zh-cn_image_0000001238880335.png) - - -### 远程连接Ubuntu环境 - -1. 打开Windows系统的Visual Studio Code,点击![zh-cn_image_0000001238760373](figures/zh-cn_image_0000001238760373.png),在REMOTE EXPLORER页面点击+按钮。 - - ![zh-cn_image_0000001215878922](figures/zh-cn_image_0000001215878922.png) - -2. 在弹出的SSH连接命令输入框中输入“ssh _username_\@_ip_address_”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号。 - - ![zh-cn_image_0000001215879750](figures/zh-cn_image_0000001215879750.png) - -3. 在弹出的输入框中,选择SSH configuration文件,选择默认的第一选项即可。 - - ![zh-cn_image_0000001260519729](figures/zh-cn_image_0000001260519729.png) - -4. 在SSH TARGETS中,找到远程计算机,点击![zh-cn_image_0000001194080414](figures/zh-cn_image_0000001194080414.png),打开远程计算机。 - - ![zh-cn_image_0000001215720398](figures/zh-cn_image_0000001215720398.png) - -5. 在弹出的输入框中,选择**Linux**,然后在选择**Continue**,然后输入登录远程计算机的密码,连接远程计算机 。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 在Windows系统远程访问Ubuntu过程中,需要频繁的输入密码进行连接,为解决该问题,您可以使用SSH公钥来进行设置,设置方法请参考[注册远程访问Ubuntu环境的公钥](https://device.harmonyos.com/cn/docs/documentation/guide/ide-registering-public-key-0000001247162706)。 - - ![zh-cn_image_0000001215897530](figures/zh-cn_image_0000001215897530.png) - - 连接成功后,等待在远程计算机.vscode-server文件夹下自动安装插件,安装完成后,根据界面提示在Windows系统下重新加载Visual Studio Code,便可以在Windows的DevEco Device Tool界面进行源码开发、编译、烧录等操作。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-introduction-hi3516.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-introduction-hi3516.md deleted file mode 100644 index c4d4506d4e5db33de6b5dd682f74d5f8fb14f99a..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-introduction-hi3516.md +++ /dev/null @@ -1,20 +0,0 @@ -# Hi3516开发板介绍 - - -## 简介 - -Hi3516DV300作为新一代行业专用Smart HD IP摄像机SOC,集成新一代ISP(Image Signal Processor)、H.265视频压缩编码器以及高性能NNIE引擎,具备低码率、高画质、低功耗等特点,并具备强劲的智能处理和分析能力。 - - **图1** Hi3516单板正面外观图   - -![zh-cn_image_0000001271234717](figures/zh-cn_image_0000001271234717.png) - - -## 开发板规格 - - **表1** Hi3516开发板规格清单 - -| 规格类型 | 规格清单 | -| -------- | -------- | -| **处理器及内部存储** | - Hi3516DV300芯片
- DDR3 1GB
- eMMC4.5,8GB容量 | -| **外部器件** | - 以太网口
- 音频视频
  - 1路语音输入
  - 1路单声道(AC_L)输出,接3W功放(LM4871)
  - MicroHDMI(1路HDMI 1.4)
- 摄像头
  - 传感器IMX335
  - 镜头M12,焦距4mm,光圈1.8
- 显示屏
  - LCD连接器(2.35寸)
  - LCD连接器(5.5寸)
- 外部器件及接口
  - SD卡接口
  - JTAG/I2S接口
  - ADC接口
  - 舵机接口
  - Grove连接器
  - USB2.0(Type C)
  - 功能按键3个,2个用户自定义按键,1个升级按键
  - LED指示灯,绿灯,红灯 | diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-overview.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-overview.md deleted file mode 100644 index 253db99a5d4911f27d38845c50346af85ca022e2..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-overview.md +++ /dev/null @@ -1,42 +0,0 @@ -# 轻量与小型系统入门概述 - - -## 简介 - -OpenHarmony轻量和小型系统适用于内存较小的IOT设备(参考内存≥128KiB)。通过本文,开发者可以快速熟悉OpenHarmony轻量和小型系统的环境搭建、编译、烧录、调测以及运行“Hello World”等。 - -考虑到开发者的开发习惯,OpenHarmony为开发者提供了以下两种入门指导: - -- IDE方式:完全采用IDE(DevEco Device Tool)进行一站式开发,编译依赖工具的安装及编译、烧录、运行都通过IDE进行操作。 - -- 安装包方式:通过命令行进行编译依赖工具的下载安装,编译操作也通过命令实现。烧录、运行等操作使用IDE。 - OpenHarmony还为开发者提供了[Docker环境](../get-code/gettools-acquire.md),在很大程度上简化了编译前的环境配置,习惯使用安装包方式的开发者也可以选择Docker环境进行编译 。 - -本文采用DevEco Device Tool进行一站式开发介绍,习惯使用命令行的开发者可参考[轻量和小型系统快速入门(安装包方式)](../quick-start/quickstart-lite-overview.md)。 - - -## 开发环境 - -推荐开发者采用Windows+Ubuntu环境进行OpenHarmony开发: - -- Windows:用于源码开发、烧录等。 - -- Ubuntu:用于源码编译。 - -本文将介绍如何基于Windows+Ubuntu环境进行OpenHarmony的开发。 - - -## 开发板 - -本文基于以下两款典型开发板进行开发介绍 :Hi3861 WLAN模组、Hi3516DV300。开发板的具体外观和规格可参见[本文附录](../quick-start/quickstart-ide-lite-introduction-hi3861.md),开发者可根据需要自行购买开发板。 - - -## 开发流程 - -轻量和小型系统快速入门流程如下图所示。 - - - **图1** 轻量和小型系统快速入门开发流程  - -  - ![zh-cn_image_0000001226634676](figures/zh-cn_image_0000001226634676.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-building.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-building.md deleted file mode 100644 index 937b4772a83123586812c89ea37246bbb632c00a..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-building.md +++ /dev/null @@ -1,35 +0,0 @@ -# 编译 - - -1. 在菜单栏中点击**Project Settings**按钮,进入Hi3516DV300工程配置界面。 - - ![zh-cn_image_0000001265492885](figures/zh-cn_image_0000001265492885.png) - -2. 在Tool Chain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击**Install**按钮,自动安装所需工具链。 - - ![zh-cn_image_0000001265652869](figures/zh-cn_image_0000001265652869.png) - -3. 安装Hi3516DV300相关工具链,部分工具安装需要使用root权限,请在“TERMINAL”窗口输入用户密码进行安装。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 - - ![zh-cn_image_0000001220852753](figures/zh-cn_image_0000001220852753.png) - - 工具链自动安装完成后如下图所示。 - - ![zh-cn_image_0000001220852754](figures/zh-cn_image_0000001220852754.png) - -4. 在“hi3516dv300”配置页签中,设置源码的编译类型**build_type**,默认为“debug“类型,请根据需要进行修改。然后点击**Save**按钮进行保存。 - - ![zh-cn_image_0000001221172711](figures/zh-cn_image_0000001221172711.png) - -5. 在“PROJECT TASKS”中,点击对应开发板下的**Build**按钮,执行编译。 - - ![zh-cn_image_0000001265772913](figures/zh-cn_image_0000001265772913.png) - -6. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 - - ![zh-cn_image_0000001221012766](figures/zh-cn_image_0000001221012766.png) - - 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的[Hi3516DV300开发板烧录](quickstart-ide-lite-steps-hi3516-burn.md)。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-burn.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-burn.md deleted file mode 100644 index 88e14f957404ba4a2eea28cbf00424f40af8c590..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3516-burn.md +++ /dev/null @@ -1,63 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - -Hi3516DV300的镜像烧录通过Windows环境进行烧录,开发者启动烧录操作后,DevEco Device Tool通过Remote远程模式,将Ubuntu环境下编译生成的待烧录程序文件拷贝至Windows目录下,然后通过Windows的烧录工具将程序文件烧录至开发板中。 - -Hi3516DV300开发板小型系统的烧录方式包括USB烧录、网口烧录两种方式,本文采用USB方式进行烧录。 - - -1. 请连接好电脑和待烧录开发板,需要连接USB口和串口,具体可参考[Hi3516DV300开发板介绍](quickstart-lite-introduction-hi3516.md)。 - -2. 根据[Hi3516DV300开发板串口驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fhi3516_hi3518-drivers-0000001050743695)、[Hi3516DV300开发板USB驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)安装USB驱动及USB转串口的驱动。若您的设备中已安装此驱动,请忽略该步骤。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - - -4. 在菜单栏中点击**Project Settings**按钮,进入Hi3516DV300工程配置界面。 - - ![zh-cn_image_0000001198566364](figures/zh-cn_image_0000001198566364.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001198566365](figures/zh-cn_image_0000001198566365.png) - -6. 在“hi3516dv300”页签,设置烧录选项,包括upload_partitions、upload_port和upload_protocol。 - - - upload_partitions:选择待烧录的文件,默认情况下会同时烧录fastboot、kernel、rootfs和userfs。DevEco Device Tool已预置默认的烧录文件信息,包括起始地址、分区大小、待烧录文件地址等,开发者可根据实际情况进行调整,点击每个待烧录文件后的![zh-cn_image_0000001275592884.png](figures/zh-cn_image_0000001275592884.png)按钮进行修改。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 - - ![zh-cn_image_0000001312778829](figures/zh-cn_image_0000001312778829.png) - - - upload_protocol:选择烧录协议,固定选择“hiburn-usb”。 - - - upload_port:选择已查询到的串口号。 - - ![zh-cn_image_0000001223190441](figures/zh-cn_image_0000001223190441.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 点击hi3516dv300下的**Upload**按钮。 - - ![zh-cn_image_0000001266887264](figures/zh-cn_image_0000001266887264.png) - - 此时待烧录文件会从Ubuntu系统传输到Windows下,传输完成后界面显示“Operation paused, Please press Enter key to continue”时,请点击**Enter**键启动烧录。 - - ![zh-cn_image_0000001114129426](figures/zh-cn_image_0000001114129426.png) - -9. 在终端窗口显示如下提示信息时,请在15秒内,按住Update键,插拔USB线,最后松开Update键启动烧录。 - - ![zh-cn_image_0000001326412233.png](figures/zh-cn_image_0000001326412233.png) - - 启动烧录后,界面提示**SUCCESS**信息时,表示烧录成功。 - - ![zh-cn_image_0000001160649343](figures/zh-cn_image_0000001160649343.png) - -10. 烧录成功后,请根据运行章节进行操作,启动系统。 \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-building.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-building.md deleted file mode 100644 index f7b9d1cf364c7d9ccf62295dc7822d75f002f7cc..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-building.md +++ /dev/null @@ -1,37 +0,0 @@ -# 编译 - - -1. 在菜单栏中点击**Project Settings**按钮,进入Hi3861工程配置界面。 - - ![zh-cn_image_0000001265785209](figures/zh-cn_image_0000001265785209.png) - -2. 在Tool Chain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击**Install**按钮,自动安装所需工具链。 - - ![zh-cn_image_0000001221025048](figures/zh-cn_image_0000001221025048.png) - - - -3. 安装Hi3861V100相关工具链,部分工具安装需要使用root权限,请在“TERMINAL”窗口输入用户密码进行安装。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 - - ![zh-cn_image_0000001280938208.png](figures/zh-cn_image_0000001280938208.png) - - 工具链自动安装完成后如下图所示。 - - ![zh-cn_image_0000001221344980](figures/zh-cn_image_0000001221344980.png) - -4. 在“hi3861”配置页签中,设置源码的编译类型**build_type**,默认为"debug"类型,请根据需要进行修改。然后点击**Save**按钮进行保存。 - - ![zh-cn_image_0000001265945173](figures/zh-cn_image_0000001265945173.png) - -5. 在DevEco Device Tool界面的“PROJECT TASKS”中,点击对应开发板下的**Build**按钮,执行编译。 - - ![zh-cn_image_0000001265505181](figures/zh-cn_image_0000001265505181.png) - -6. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 - - ![zh-cn_image_0000001265665157](figures/zh-cn_image_0000001265665157.png) - - 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的[Hi3861V100开发板烧录](quickstart-ide-lite-steps-hi3861-burn.md)。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-burn.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-burn.md deleted file mode 100644 index 205c3cd0e15b87090af7ee978c7d1d132ae1b3d7..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-burn.md +++ /dev/null @@ -1,48 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - -Hi3861V100的镜像烧录通过Windows环境进行烧录,开发者启动烧录操作后,DevEco Device Tool通过Remote远程模式,将Ubuntu环境下编译生成的带烧录程序文件拷贝至Windows目录下,然后通过Windows的烧录工具将程序文件烧录至开发板中。 - -Hi3861V100开发板支持串口烧录方式,在Windows下通过以下步骤进行烧录: - - -1. 请连接好电脑和待烧录开发板,需要连接USB口,具体可参考[Hi3861V100开发板介绍](quickstart-lite-introduction-hi3861.md)。 - -2. 根据[Hi3861V100开发板串口驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fhi3861-drivers-0000001058153433)安装USB转串口的驱动程序。若您的设备中已安装此驱动,请忽略该步骤。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - -4. 在菜单栏中点击**Project Settings**按钮,进入Hi3861V100工程配置界面。 - - ![zh-cn_image_0000001333802045.png](figures/zh-cn_image_0000001333802045.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001198943768](figures/zh-cn_image_0000001198943768.png) - -6. 在“hi3861”页签,设置烧录选项,包括upload_port、upload_protocol和upload_partitions。 - - upload_port:选择已查询的串口号。 - - upload_protocol:选择烧录协议,选择“hiburn-serial”。 - - upload_partitions:选择待烧录的文件名称。DevEco Device Tool已预置默认的烧录文件信息,如果需要修改待烧录文件地址,可点击每个待烧录文件后的![zh-cn_image_0000001333642545.png](figures/zh-cn_image_0000001333642545.png)按钮进行修改。 - - ![zh-cn_image_0000001243704061](figures/zh-cn_image_0000001243704061.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 点击**Open**打开工程文件,然后在“PROJECT TASKS”中,点击hi3861下的**Upload**按钮,启动烧录。 - - ![zh-cn_image_0000001216440138](figures/zh-cn_image_0000001216440138.png) - -9. 启动烧录后,显示如下提示信息时,请在15秒内,按下开发板上的RST按钮重启开发板。 - - ![zh-cn_image_0000001198466090](figures/zh-cn_image_0000001198466090.png) - - 重新上电后,界面提示如下信息时,表示烧录成功。 - - ![zh-cn_image_0000001216761476](figures/zh-cn_image_0000001216761476.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-debug.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-debug.md deleted file mode 100644 index 8c4ed6fb8cb55c6699a959379921b92cc5e26a35..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-debug.md +++ /dev/null @@ -1,64 +0,0 @@ -# 调试验证 - - -完成烧录及联网之后,用户可根据需要进行调试验证。目前调试验证的方法有以下两种,开发者可以根据具体业务情况选择。 - - -1. 通过printf打印日志 - -2. 通过asm文件定位panic问题 - - -由于本示例业务简单,采用printf打印日志的调试方式即可。下方将介绍这两种调试手段的使用方法。 - - -## printf打印 - -代码中增加printf维测,信息会直接打印到串口上。开发者可在业务关键路径或业务异常位置增加日志打印,如下所示: - - -``` -void HelloWorld(void) -{ - printf("[DEMO] Hello world.\n"); -} -``` - - -## 根据asm文件进行问题定位 - - 系统异常退出时,会在串口上打印异常退出原因调用栈信息,如下文所示。通过解析异常栈信息可以定位异常位置。 - -``` -=======KERNEL PANIC======= -**Call Stack* -Call Stack 0 -- 4860d8 addr:f784c -Call Stack 1 -- 47b2b2 addr:f788c -Call Stack 2 -- 3e562c addr:f789c -Call Stack 3 -- 4101de addr:f78ac -Call Stack 4 -- 3e5f32 addr:f78cc -Call Stack 5 -- 3f78c0 addr:f78ec -Call Stack 6 -- 3f5e24 addr:f78fc -Call Stack end*** -``` - -为解析上述调用栈信息,需要使用到Hi3861_wifiiot_app.asm文件,该文件记录了代码中函数在Flash上的符号地址以及反汇编信息。asm文件会随版本打包一同构建输出,存放在./out/wifiiot/路径下。 - -1. 将调用栈CallStack信息保存到txt文档中,以便于编辑。(可选) - -2. 打开asm文件,并搜索CallStack中的地址,列出对应的函数名信息。通常只需找出前几个栈信息对应的函数,就可明确异常代码方向。 - - ``` - Call Stack 0 -- 4860d8 addr:f784c -- WadRecvCB - Call Stack 1 -- 47b2b2 addr:f788c -- wal_sdp_process_rx_data - Call Stack 2 -- 3e562c addr:f789c - Call Stack 3 -- 4101de addr:f78ac - Call Stack 4 -- 3e5f32 addr:f78cc - Call Stack 5 -- 3f78c0 addr:f78ec - Call Stack 6 -- 3f5e24 addr:f78fc - ``` - -3. 根据以上调用栈信息,可以定位WadRecvCB函数中出现了异常。 - ![zh-cn_image_0000001226634668](figures/zh-cn_image_0000001226634668.png) - -4. 完成代码排查及修改。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-netconfig.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-netconfig.md deleted file mode 100644 index 20517b0667532451695b32f8603f6f5e7c29fe96..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-netconfig.md +++ /dev/null @@ -1,39 +0,0 @@ -# 联网 - - -完成版本编译及烧录后,下面开始介绍如何在串口终端上执行AT命令,使Hi3861 WLAN模组联网。 - - -1. 保持Windows工作台和Hi3861 WLAN模组的连接状态,在DevEco工具最下方,点击“DevEco:Serial Monitor”按钮。 - - **图1** 打开DevEco串口终端示意图   - - ![zh-cn_image_0000001226634700](figures/zh-cn_image_0000001226634700.png) - -2. 复位Hi3861 WLAN模组,终端界面显示“ready to OS start”,则启动成功。 - - **图2** Hi3861 WLAN模组复位成功示意图   - - ![zh-cn_image_0000001271594733](figures/zh-cn_image_0000001271594733.png) - -3. 在DevEco的串口终端中,依次执行如下AT命令,启动STA模式,连接指定AP热点,并开启DHCP功能。 - - ``` - AT+STARTSTA # 启动STA模式 - AT+SCAN # 扫描周边AP - AT+SCANRESULT # 显示扫描结果 - AT+CONN="SSID",,2,"PASSWORD" # 连接指定AP,其中SSID/PASSWORD为待连接的热点名称和密码 - AT+STASTAT # 查看连接结果 - AT+DHCP=wlan0,1 # 通过DHCP向AP请求wlan0的IP地址 - ``` - -4. 查看Hi3861 WLAN模组与网关联通是否正常,如下图所示。 - - ``` - AT+IFCFG # 查看模组接口IP - AT+PING=X.X.X.X # 检查模组与网关的联通性,其中X.X.X.X需替换为实际的网关地址 - ``` - - **图3** Hi3861 WLAN模组联网成功示意图   - - ![zh-cn_image_0000001227114612](figures/zh-cn_image_0000001227114612.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-running.md b/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-running.md deleted file mode 100644 index 0cb0b304b8157fe5a1adf5b37cd423c92ebde916..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-steps-hi3861-running.md +++ /dev/null @@ -1,19 +0,0 @@ -# 运行 - - -## 运行结果 - -示例代码编译、烧录、运行、调测后,重启开发板后将自动在界面输出如下结果: - - -``` -ready to OS start -FileSystem mount ok. -wifi init success! -[DEMO] Hello world. -``` - - -## 下一步学习 - -恭喜,您已完成Hi3861 WLAN模组快速上手!建议您下一步进入[WLAN产品开发](../guide/device-wlan-led-control.md)的学习 。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-board-introduction-hi3516.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-board-introduction-hi3516.md deleted file mode 100644 index ffa925d2b6fc6ab25e1edbc8b618473dc8af5eb8..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-board-introduction-hi3516.md +++ /dev/null @@ -1,20 +0,0 @@ -# Hi3516开发板介绍 - - -## 开发板简介 - -Hi3516DV300作为新一代行业专用Smart HD IP摄像机SOC,集成新一代ISP(Image Signal Processor)、H.265视频压缩编码器以及高性能NNIE引擎,具备低码率、高画质、低功耗等特点,并具备强劲的智能处理和分析能力。 - - **图1** Hi3516单板正面外观图   - -![zh-cn_image_0000001227082182](figures/zh-cn_image_0000001227082182.png) - - -## 开发板规格 - - **表1** Hi3516开发板规格清单 - -| 规格类型 | 规格清单 | -| -------- | -------- | -| **处理器及内部存储** | - Hi3516DV300芯片
- DDR3 1GB
- eMMC4.5,8GB容量 | -| **外部器件** | - 以太网口
- 音频视频
  - 1路语音输入
  - 1路单声道(AC_L)输出,接3W功放(LM4871)
  - MicroHDMI(1路HDMI 1.4)
- 摄像头
  - 传感器IMX335
  - 镜头M12,焦距4mm,光圈1.8
- 显示屏
  - LCD连接器(2.35寸)
  - LCD连接器(5.5寸)
- 外部器件及接口
  - SD卡接口
  - JTAG/I2S接口
  - ADC接口
  - 舵机接口
  - Grove连接器
  - USB2.0(Type C)
  - 功能按键3个,2个用户自定义按键,1个升级按键
  - LED指示灯,绿灯,红灯 | diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-create-project.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-create-project.md deleted file mode 100644 index ec82ec30048681ac246efdc3cbb6f583026abc75..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-create-project.md +++ /dev/null @@ -1,23 +0,0 @@ -# 导入源码工程 - - -在完成[搭建Windows+Ubuntu混合开发环境](../quick-start/quickstart-ide-standard-env-setup-win-ubuntu.md)和[获取源码](../quick-start/quickstart-ide-standard-sourcecode-acquire.md)后,您需要在Windows环境中按照如下步骤导入源码工程,之后方可在DevEco Device Tool中进行后续的操作。 - - -1. 打开DevEco Device Tool,进入Home页,点击**Import Project**打开工程。 - - ![zh-cn_image_0000001278358765](figures/zh-cn_image_0000001278358765.png) - -2. 选择OpenHarmony源码根目录路径,然后再选择**Import OpenHarmony Source**选项,点击**Import**进行导入。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 工程存储路径不能包含中文字符、空格。如果工程存储路径包含中文字符或空格,可能导致编译失败。 - - ![zh-cn_image_0000001271477045](figures/zh-cn_image_0000001271477045.png) - -3. 在Import Project界面,选择**Product**后,会自动填充对应的SOC、Board、Company和Kernel信息,然后Ohos Ver选择对应的OpenHarmony源码版本。 - - ![zh-cn_image_0000001271448821](figures/zh-cn_image_0000001271448821.png) - -4. 点击**Open**打开工程或源码。 - diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-env-setup-win-ubuntu.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-env-setup-win-ubuntu.md deleted file mode 100644 index 2aca8528314802708a912e73b784a351d4a8bbf0..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-env-setup-win-ubuntu.md +++ /dev/null @@ -1,190 +0,0 @@ -# 搭建Windows+Ubuntu混合开发环境 - - -通常在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。 - - -在以上的设备开发场景中,可以搭建一套Windows+Ubuntu混合开发的环境,其中使用Windows平台的DevEco Device Tool可视化界面进行相关操作,通过远程连接的方式对接Ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对Ubuntu下的源码进行开发、编译、烧录等操作。 - - -## 系统要求 - -- Windows系统要求:Windows10 64位系统。 - -- Ubuntu系统要求:Ubuntu18.04~21.10版本,内存推荐16 GB及以上。 - -- Ubuntu系统的用户名不能包含中文字符。 - -- Windows和Ubuntu系统上安装的DevEco Device Tool为3.0 Release版本。 - - -## 搭建Ubuntu环境 - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> -> 如果没有Ubuntu系统,可在Windows系统中通过虚拟机方式搭建Ubuntu系统,具体请参考[Ubuntu系统安装指导](https://developer.huawei.com/consumer/cn/training/course/video/C101639987816176315)。Ubuntu系统安装完成后,请根据指导完成[Ubuntu基础环境配置](https://developer.huawei.com/consumer/cn/training/course/video/C101639988048536240),然后再根据本章节进行DevEco Device Tool工具的安装。 - -1. 将Ubuntu Shell环境修改为bash。 - 1. 执行如下命令,确认输出结果为bash。如果输出结果不是bash,请根据步骤2,将Ubuntu shell修改为bash。 - - ``` - ls -l /bin/sh - ``` - - ![zh-cn_image_0000001226764302](figures/zh-cn_image_0000001226764302.png) - 2. 打开终端工具,执行如下命令,输入密码,然后选择**No**,将Ubuntu shell由dash修改为bash。 - - ``` - sudo dpkg-reconfigure dash - ``` - - ![zh-cn_image_0000001243641075](figures/zh-cn_image_0000001243641075.png) - -2. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Linux版本。 - -3. 解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。 - - 1. 进入DevEco Device Tool软件包目录,执行如下命令解压软件包,其中devicetool-linux-tool-3.0.0.401.zip为软件包名称,请根据实际进行修改。 - - ``` - unzip devicetool-linux-tool-3.0.0.401.zip - ``` - 2. 进入解压后的文件夹,执行如下命令,赋予安装文件可执行权限,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - chmod u+x devicetool-linux-tool-3.0.0.401.sh - ``` - -4. 执行如下命令,安装DevEco Device Tool,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - sudo ./devicetool-linux-tool-3.0.0.401.sh - ``` - -5. 在用户协议和隐私声明签署界面,请详细阅读用户协议和隐私声明,需签署同意用户协议和隐私声明才能进行下一步的安装。 - - ![zh-cn_image_0000001322167645.png](figures/zh-cn_image_0000001322167645.png) - - 安装完成后,当界面输出“DevEco Device Tool successfully installed.”时,表示DevEco Device Tool安装成功。 - - ![zh-cn_image_0000001198722374](figures/zh-cn_image_0000001198722374.png) - - - -## 搭建Windows开发环境 - -1. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Windows版。 - -2. 解压DevEco Device Tool压缩包,双击安装包程序,点击Next进行安装。 - -3. 设置DevEco Device Tool的安装路径,请注意安装路径不能包含中文字符,同时建议安装到非系统盘符,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果您已安装DevEco Device Tool 3.0 Beta2及以前的版本,则在安装新版本时,会先卸载旧版本,卸载过程中出现如下错误提示时,请点击“Ignore”继续安装,该错误不影响新版本的安装。 - > - > ![zh-cn_image_0000001239275843](figures/zh-cn_image_0000001239275843.png) - - ![zh-cn_image_0000001270076961](figures/zh-cn_image_0000001270076961.png) - -4. 根据安装向导提示,勾选要自动安装的软件。 - 1. 在弹出VSCode installation confirm页面,勾选“Install VScode 1.62.2automatically”,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果检测到Visual Studio Code已安装,且版本为1.62及以上,则会跳过该步骤。 - - ![zh-cn_image_0000001237801283](figures/zh-cn_image_0000001237801283.png) - - 2. 在弹出的Python select page选择“Download from Huawei mirror”,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果系统已安装可兼容的Python版本(Python 3.8~3.9版本),可选择“Use one of compatible on your PC”。 - - ![zh-cn_image_0000001193983334](figures/zh-cn_image_0000001193983334.png) - -5. 在以下界面点击**Next**。 - - ![zh-cn_image_0000001259180828](figures/zh-cn_image_0000001259180828.png) - -6. 请详细阅读以下界面的用户协议和隐私声明,这里须勾选"I accept the licenses",然后点击Next,安装向导才会继续进行软件下载和安装。 - - ![zh-cn_image_0000001307019009](figures/zh-cn_image_0000001307019009.png) - -7. 继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,点击**Finish**,关闭DevEco Device Tool安装向导。 - - ![zh-cn_image_0000001239650137](figures/zh-cn_image_0000001239650137.png) - -8. 打开Visual Studio Code,进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。 - - ![zh-cn_image_0000001225760456](figures/zh-cn_image_0000001225760456.png) - - -## 配置Windows远程访问Ubuntu环境 - - -### 安装SSH服务并获取远程访问的IP地址 - -1. 在Ubuntu系统中,打开终端工具,执行如下命令安装SSH服务。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果执行该命令失败,提示openssh-server和openssh-client依赖版本不同,请根据CLI界面提示信息,安装openssh-client相应版本后(例如:sudo apt-get install openssh-client=1:8.2p1-4),再重新执行该命令安装openssh-server。 - - - ``` - sudo apt-get install openssh-server - ``` - -2. 执行如下命令,启动SSH服务。 - - ``` - sudo systemctl start ssh - ``` - -3. 执行如下命令,获取当前用户的IP地址,用于Windows系统远程访问Ubuntu环境。 - - ``` - ifconfig - ``` - - ![zh-cn_image_0000001215737140](figures/zh-cn_image_0000001215737140.png) - - -### 安装Remote SSH - -1. 打开Windows系统下的Visual Studio Code,点击![zh-cn_image_0000001239080359](figures/zh-cn_image_0000001239080359.png),在插件市场的搜索输入框中输入“remote-ssh”。 - - ![zh-cn_image_0000001193920448](figures/zh-cn_image_0000001193920448.png) - -2. 点击Remote-SSH的**Install**按钮,安装Remote-SSH。安装成功后,在**INSTALLED**下可以看到已安装Remote-SSH。 - - ![zh-cn_image_0000001238880335](figures/zh-cn_image_0000001238880335.png) - - -### 远程连接Ubuntu环境 - -1. 打开Windows系统的Visual Studio Code,点击![zh-cn_image_0000001238760373](figures/zh-cn_image_0000001238760373.png),在REMOTE EXPLORER页面点击+按钮。 - - ![zh-cn_image_0000001215878922](figures/zh-cn_image_0000001215878922.png) - -2. 在弹出的SSH连接命令输入框中输入“ssh _username_\@_ip_address_”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号。 - - ![zh-cn_image_0000001215879750](figures/zh-cn_image_0000001215879750.png) - -3. 在弹出的输入框中,选择SSH configuration文件,选择默认的第一选项即可。 - - ![zh-cn_image_0000001260519729](figures/zh-cn_image_0000001260519729.png) - -4. 在SSH TARGETS中,找到远程计算机,点击![zh-cn_image_0000001194080414](figures/zh-cn_image_0000001194080414.png),打开远程计算机。 - - ![zh-cn_image_0000001215720398](figures/zh-cn_image_0000001215720398.png) - -5. 在弹出的输入框中,选择**Linux**,然后在选择**Continue**,然后输入登录远程计算机的密码,连接远程计算机 。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 在Windows系统远程访问Ubuntu过程中,需要频繁的输入密码进行连接,为解决该问题,您可以使用SSH公钥来进行设置,设置方法请参考[注册远程访问Ubuntu环境的公钥](https://device.harmonyos.com/cn/docs/documentation/guide/ide-registering-public-key-0000001247162706)。 - - ![zh-cn_image_0000001215897530](figures/zh-cn_image_0000001215897530.png) - - 连接成功后,等待在远程计算机.vscode-server文件夹下自动安装插件,安装完成后,根据界面提示在Windows系统下重新加载Visual Studio Code,便可以在Windows的DevEco Device Tool界面进行源码开发、编译、烧录等操作。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-overview.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-overview.md deleted file mode 100644 index cffc577473ef8d842cc2c13517a113008295d36a..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-overview.md +++ /dev/null @@ -1,41 +0,0 @@ -# 标准系统入门概述 - - -## 简介 - -OpenHarmony标准系统适用于参考内存≥128MiB的设备。通过本文,开发者可以快速熟悉OpenHarmony标准系统的环境搭建、编译、烧录、调测以及运行“Hello World”等。 - -考虑到开发者的开发习惯,OpenHarmony为开发者提供了以下两种入门指导: - -- IDE方式:完全采用IDE(DevEco Device Tool)进行一站式开发,编译依赖工具的安装及编译、烧录、运行都通过IDE进行操作。 - -- 安装包方式:通过命令行进行编译依赖工具的下载安装,编译操作也通过命令实现。烧录、运行等操作使用IDE。 - OpenHarmony还为开发者提供了[Docker环境](../get-code/gettools-acquire.md),在很大程度上简化了编译前的环境配置,习惯使用安装包方式的开发者也可以选择Docker环境进行编译 。 - -本文采用DevEco Device Tool进行一站式开发介绍,习惯使用命令行的开发者可参考[标准系统快速入门(安装包方式)](quickstart-standard-overview.md)。 - - -## 开发环境 - -推荐开发者采用Windows+Ubuntu环境进行OpenHarmony开发: - -- Windows:用于源码开发、烧录等。 - -- Ubuntu:用于源码编译。 - -本文将介绍如何基于Windows+Ubuntu环境进行OpenHarmony的开发。 - - -## 开发板 - -本文选取了两款典型开发板:Hi3516DV300、RK3568,并基于上述两款开发板进行开发介绍。开发板的具体外观和规格可参见[本文附录](../quick-start/quickstart-ide-standard-board-introduction-hi3516.md),开发者可根据需要自行购买开发板。 - - -## 开发流程 - -标准系统快速入门流程如下图所示: - - **图1** 标准系统快速入门开发流程 - -  - ![zh-cn_image_0000001271562257](figures/zh-cn_image_0000001271562257.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-build.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-build.md deleted file mode 100644 index 69cd37abf642a33c9710e3adc052e58c31eae7ce..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-build.md +++ /dev/null @@ -1,35 +0,0 @@ -# 编译 - - -1. 在Projects中,点击**Settings**按钮,进入Hi3516DV300配置界面。 - - ![zh-cn_image_0000001265492885](figures/zh-cn_image_0000001265492885.png) - -2. 在Tool Chain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击**Install**按钮,自动安装所需工具链。 - - ![zh-cn_image_0000001227277128](figures/zh-cn_image_0000001227277128.png) - -3. 安装Hi3516DV300相关工具链,部分工具安装需要使用root权限,请在“TERMINAL”窗口输入用户密码进行安装。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 - - ![zh-cn_image_0000001220852755](figures/zh-cn_image_0000001220852755.png) - - 工具链自动安装完成后如下图所示。 - - ![zh-cn_image_0000001227757036](figures/zh-cn_image_0000001227757036.png) - -4. 在“hi3516dv300”配置页签中,设置源码的编译类型**build_type**,默认为“debug“类型,请根据需要进行修改。然后点击**Save**按钮进行保存。 - - ![zh-cn_image_0000001221172711](figures/zh-cn_image_0000001221172711.png) - -5. 在“PROJECT TASKS”中,点击对应开发板下的**Build**按钮,执行编译。 - - ![zh-cn_image_0000001265772913](figures/zh-cn_image_0000001265772913.png) - -6. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 - - ![zh-cn_image_0000001221012768](figures/zh-cn_image_0000001221012768.png) - - 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的[Hi3516DV300开发板烧录](quickstart-ide-standard-running-hi3516-burning.md)。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-burning.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-burning.md deleted file mode 100644 index 31cc342d29853acb97c9d7207df8cf18f733cc30..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-burning.md +++ /dev/null @@ -1,66 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - -Hi3516DV300开发板小型系统的烧录方式包括USB烧录、网口烧录两种方式,本文采用USB方式进行烧录。 - - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 使用USB烧录方式,在DevEco Device Tool 2.2 Beta2及更高版本中支持。 - - -1. 请连接好电脑和待烧录开发板,需要连接USB口和串口,具体可参考[Hi3516DV300开发板介绍](quickstart-lite-introduction-hi3516.md)。 - -2. 根据[Hi3516DV300开发板串口驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fhi3516_hi3518-drivers-0000001050743695)、[Hi3516DV300开发板USB驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)安装USB驱动及USB转串口的驱动。若您的设备中已安装此驱动,请忽略该步骤。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - -4. 在菜单栏中点击**Project Settings**按钮,进入Hi3516DV300工程配置界面。 - - ![zh-cn_image_0000001198566364](figures/zh-cn_image_0000001198566364.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001198566365](figures/zh-cn_image_0000001198566365.png) - -6. 在“hi3516dv300”页签,设置烧录选项,包括upload_partitions、upload_port和upload_protocol。 - - - upload_partitions:选择待烧录程序的配置文件(已预置默认的配置文件),该配置文件会指定烧录文件名称、起始烧录地址、地址长度等信息;同时请勾选**Enable to use upload_partitions_profile for upload**选项。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如需修改烧录profile文件,在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 - > - > 首次烧录,请勾选**Enable to use upload_partitions_profile for upload**选项,会自动生成upload_partitions文件。再次烧录时,可根据实际情况选择生成upload_partitions文件进行自定义烧录,也可以再勾选**Enable to use upload_partitions_profile for upload**选项,使用upload_partitions_profile重新生成upload_partitions文件用于烧录。 - - - upload_protocol:选择烧录协议,固定选择“hiburn-usb”。 - - - upload_port:选择已查询的串口号。 - - ![zh-cn_image_0000001177478136](figures/zh-cn_image_0000001177478136.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 点击hi3516dv300下的**Upload**按钮。 - - ![zh-cn_image_0000001267532292](figures/zh-cn_image_0000001267532292.png) - - 此时待烧录文件会从Ubuntu系统传输到Windows下,传输完成后界面显示“Operation paused, Please press Enter key to continue”时,请点击**Enter**键启动烧录。 - - ![zh-cn_image_0000001114129427](figures/zh-cn_image_0000001114129427.png) - -9. 在终端窗口显示如下提示信息时,请在15秒内,按住Update键,插拔USB线,最后松开Update键启动烧录。 - - ![zh-cn_image_0000001326412233.png](figures/zh-cn_image_0000001326412233.png) - - 启动烧录后,界面提示**SUCCESS**信息时,表示烧录成功。 - - ![zh-cn_image_0000001160649344](figures/zh-cn_image_0000001160649344.png) - -11. 烧录成功后,请根据运行章节进行操作,启动系统。 \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-running.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-running.md deleted file mode 100644 index 862d9d8eeb6b3e574264a79e8aff4e8cb0a66556..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-hi3516-running.md +++ /dev/null @@ -1,57 +0,0 @@ -# 运行 - - -## 启动系统 - -烧录完成后通过以下步骤启动系统: - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 初次烧写标准系统,需要完成以下配置,后续烧写或者启动,可以跳过以下操作。 - -1. 在DevEco Device Tool中,点击Monitor,打开串口工具。 - - ![zh-cn_image_0000001227082162](figures/zh-cn_image_0000001227082162.png) - -2. 重启开发板,在倒计时结束前,按任意键进入系统。 - - ![zh-cn_image_0000001271202289](figures/zh-cn_image_0000001271202289.gif) - -3. 通过以下两条命令设置启动参数。 - - ``` - setenv bootargs 'mem=640M console=ttyAMA0,115200 mmz=anonymous,0,0xA8000000,384M clk_ignore_unused rootdelay=10 hardware=Hi3516DV300 init=/init root=/dev/ram0 rw blkdevparts=mmcblk0:1M(boot),15M(kernel),20M(updater),2M(misc),3307M(system),256M(vendor),-(userdata)'; - ``` - - - ``` - setenv bootcmd 'mmc read 0x0 0x82000000 0x800 0x4800; bootm 0x82000000' - ``` - - ![zh-cn_image_0000001271562269](figures/zh-cn_image_0000001271562269.png) - -4. 保存参数设置。 - - ``` - save - ``` - - ![zh-cn_image_0000001226762210](figures/zh-cn_image_0000001226762210.png) - -5. 重启开发板,完成系统启动。 - - ``` - reset - ``` - - ![zh-cn_image_0000001226602238](figures/zh-cn_image_0000001226602238.png) - - -## 运行“Hello World” - -设备启动后打开串口工具,在任意目录下输入命令helloworld后回车,界面打印“Hello World!”,程序运行成功。 - -![zh-cn_image_0000001271322277](figures/zh-cn_image_0000001271322277.png) - -## 下一步 - -恭喜!您已经完成了OpenHarmony标准系统的快速入门,接下来可[开发一个小示例](../guide/device-clock-guide.md),进一步熟悉OpenHarmony的开发。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-build.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-build.md deleted file mode 100644 index af04bf580d6b453a928e221207f573e2e88dc6aa..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-build.md +++ /dev/null @@ -1,35 +0,0 @@ -# 编译 - - -1. 在菜单栏中点击**Project Settings**按钮,进入RK3568工程配置界面。 - - ![zh-cn_image_0000001265492885](figures/zh-cn_image_0000001265492885.png) - -2. 在Toolchain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击**Install**按钮,自动安装所需工具链。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果出现安装pip组件失败,可参考[修改Python源的方法](https://device.harmonyos.com/cn/docs/documentation/guide/ide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。 - - ![zh-cn_image_0000001221356692](figures/zh-cn_image_0000001221356692.png) - - 安装RK3568相关工具链,部分工具的安装需要使用root权限,请在“TERMINAL”窗口输入用户密码进行安装。 - - ![zh-cn_image_0000001327429541.png](figures/zh-cn_image_0000001327429541.png) - - 工具链自动安装完成后如下图所示。 - - ![zh-cn_image_0000001265676877](figures/zh-cn_image_0000001265676877.png) - -3. 在“hh_scdy200”配置页签中,设置源码的编译类型**build_type**,默认为"debug类型,请根据需要进行修改。然后点击**Save**按钮进行保存。 - - ![zh-cn_image_0000001276354454.png](figures/zh-cn_image_0000001276354454.png) - -4. 在DevEco Device Tool界面的“PROJECT TASKS”中,点击对应开发板下的**Build**按钮,执行编译。 - - ![zh-cn_image_0000001265516901](figures/zh-cn_image_0000001265516901.png) - -5. 等待编译完成,在**TERMINAL**窗口输出“SUCCESS”,编译完成。 - - ![zh-cn_image_0000001222361042](figures/zh-cn_image_0000001222361042.png) - - 编译完成后,可以在工程的**out**目录下,查看编译生成的文件,用于后续的[RK3568开发板烧录](quickstart-standard-running-rk3568-burning.md)。 \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-burning.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-burning.md deleted file mode 100644 index 52365db0887c7792c76fee7de2a14f0da820279a..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-burning.md +++ /dev/null @@ -1,61 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - -RK3568的镜像烧录通过Windows环境进行烧录,开发者启动烧录操作后,DevEco Device Tool通过Remote远程模式,将Ubuntu环境下编译生成的带烧录程序文件拷贝至Windows目录下,然后通过Windows的烧录工具将程序文件烧录至开发板中。 - - -1. [下载](https://gitee.com/hihope_iot/docs/blob/master/HiHope_DAYU200/%E7%83%A7%E5%86%99%E5%B7%A5%E5%85%B7%E5%8F%8A%E6%8C%87%E5%8D%97/windows/DriverAssitant_v5.1.1.zip)并安装驱动DriverInstall.exe。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果已经安装旧版本的烧写工具,请先点击"驱动卸载"按钮卸载驱动,然后再点击"驱动安装"按钮安装驱动。 - -2. 请连接好电脑和待烧录开发板,连接USB接口,具体可参考[RK3568开发板介绍](quickstart-standard-board-introduction-rk3568.md)。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - - -4. 在菜单栏中点击**Project Settings**按钮,进入RK3568工程配置界面。 - - ![zh-cn_image_0000001198566364](figures/zh-cn_image_0000001198566364.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001239661509](figures/zh-cn_image_0000001239661509.png) - - -6. 在“hh_scdy200”页签,设置烧录选项,包括upload_partitions和upload_protocol。 - - - upload_partitions_profile:选择待烧录程序的配置文件,该配置文件会指定烧录文件名称、起始烧录地址、地址长度等信息;同时请勾选**Enable to use upload_partitions_profile for upload**选项。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如需修改烧录profile文件,在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 - > - > 首次烧录,请勾选**Enable to use upload_partitions_profile for upload**选项,会自动生成upload_partitions文件。再次烧录时,可根据实际情况选择生成upload_partitions文件进行自定义烧录,也可以再勾选**Enable to use upload_partitions_profile for upload**选项,使用upload_partitions_profile重新生成upload_partitions文件用于烧录。 - - - upload_protocol:选择烧录协议,固定选择“upgrade”。 - - ![zh-cn_image_0000001194504874](figures/zh-cn_image_0000001194504874.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 在“PROJECT TASKS”中,点击hh_scdy200下的**Upload**按钮启动烧录。 - - ![zh-cn_image_0000001194821710](figures/zh-cn_image_0000001194821710.png) - -9. 当屏幕提示“Operation paused,Please press Enter key to continue”,请按回车键继续。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果开发板未处于烧录模式,屏幕会提示“The board is not in Loader mode.Please Hold on the VOL+key...”,此时,请长按音量+键,3秒后点击RESET键,然后再过3秒放开音量+键,使开发板进入烧录模式。 - - 等待开发板烧录完成,当屏幕提示如下信息时,表示烧录成功。 - - ![zh-cn_image_0000001194984912](figures/zh-cn_image_0000001194984912.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-running.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-running.md deleted file mode 100644 index 649bd3b631ab879c825156347e1440ad405e1055..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-running.md +++ /dev/null @@ -1,21 +0,0 @@ -# 运行 - - -## 启动系统 - -镜像烧录完成重启开发板后,系统将会自动启动。开发板附带的屏幕呈现以下界面,表明系统已运行成功。 - - **图1** 系统启动效果图   - -![zh-cn_image_0000001226762222](figures/zh-cn_image_0000001226762222.jpg) - - -## 运行“Hello World” - -1. 设备启动后打开串口工具(以putty为例),波特率设置为1500000,连接设备。 - - ![zh-cn_image_0000001226602250](figures/zh-cn_image_0000001226602250.png) - -2. 打开串口后,在任意目录(以设备根目录为例)下输入命令helloworld后回车,界面打印“Hello World!”,程序运行成功。 - - ![zh-cn_image_0000001226922154](figures/zh-cn_image_0000001226922154.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-sourcecode-acquire.md b/zh-cn/device-dev/quick-start/quickstart-ide-standard-sourcecode-acquire.md deleted file mode 100644 index 61042cdc21a5b90f62344abe7dfbba0f402ddf28..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-sourcecode-acquire.md +++ /dev/null @@ -1,91 +0,0 @@ -# 获取源码 - - -在Ubuntu环境下通过以下步骤获取OpenHarmony源码。 - - -## 前提条件 - -1. 注册码云gitee帐号。 - -2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)。 - -3. 安装git客户端和git-lfs。(上述工具已在搭建环境章节安装。如已安装,请忽略) - - 更新软件源: - - ``` - sudo apt-get update - ``` - - 通过以下命令安装: - - ``` - sudo apt-get install git git-lfs - ``` - -4. 配置用户信息。 - - ``` - git config --global user.name "yourname" - git config --global user.email "your-email-address" - git config --global credential.helper store - ``` - -5. 执行如下命令安装码云repo工具。 - - 下述命令中的安装路径以"~/bin"为例,请用户自行创建所需目录。 - - ``` - mkdir ~/bin - curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o ~/bin/repo - chmod a+x ~/bin/repo - pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests - ``` - -6. 将repo添加到环境变量。 - - ``` - vim ~/.bashrc # 编辑环境变量 - export PATH=~/bin:$PATH # 在环境变量的最后添加一行repo路径信息 - source ~/.bashrc # 应用环境变量 - ``` - - -## 获取方式 - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> -> Master主干为开发分支,开发者可通过Master主干获取最新特性。发布分支代码相对比较稳定,开发者可基于发布分支代码进行商用功能开发。 - -- **OpenHarmony主干代码获取** - - 方式一(推荐):通过repo + ssh下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 - - ``` - repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - - 方式二:通过repo + https下载。 - - - ``` - repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - -- **OpenHarmony发布分支代码获取** - - OpenHarmony各个版本发布分支的源码获取方式请参考[Release-Notes](../../release-notes/Readme.md)。 - - -### 执行prebuilts - - 在源码根目录下执行prebuilts脚本,安装编译器及二进制工具。 - -``` -bash build/prebuilts_download.sh -``` diff --git a/zh-cn/device-dev/quick-start/quickstart-ide.md b/zh-cn/device-dev/quick-start/quickstart-ide.md new file mode 100644 index 0000000000000000000000000000000000000000..71922baa6fda1c56abffed4f57542990f2ac6701 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-ide.md @@ -0,0 +1,25 @@ +# 使用IDE快速入门 + + +- 基于IDE入门 + - 搭建开发环境 + - [搭建Windows环境](quickstart-ide-env--win.md) + - [搭建Ubuntu环境](quickstart-ide-env-ubuntu.md) + - [配置远程访问环境](quickstart-ide-env-remote.md) + - [创建工程并获取源码](quickstart-ide-import-project.md) + - 轻量系统(基于Hi3861开发板) + - [编写“Hello World”程序](quickstart-ide-3861-helloworld.md) + - [编译](quickstart-ide-3861-build.md) + - [烧录](quickstart-ide-3861-burn.md) + - [运行](quickstart-ide-3861-running.md) + - 小型系统(基于Hi3516开发板) + - [编写“Hello World”程序](quickstart-ide-3516-helloworld.md) + - [编译](quickstart-ide-3516-build.md) + - [烧录](quickstart-ide-3516-burn.md) + - [运行](quickstart-ide-3516-running.md) + - 标准系统(基于RK3568开发板) + - [编写“Hello World”程序](quickstart-ide-3568-helloworld.md) + - [编译](quickstart-ide-3568-build.md) + - [烧录](quickstart-ide-3568-burn.md) + - [运行](quickstart-ide-3568-running.md) + diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-env-setup.md b/zh-cn/device-dev/quick-start/quickstart-lite-env-setup.md deleted file mode 100644 index 4191e188ce30666c067fd2e130d20593c526903a..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-env-setup.md +++ /dev/null @@ -1,422 +0,0 @@ -# 搭建轻量与小型系统环境 - - -## 系统要求 - -- Windows系统要求:Windows10 64位系统。 - -- Ubuntu系统要求:Ubuntu18.04~21.10版本,内存推荐16 GB及以上。 - -- Windows系统和Ubuntu系统的用户名不能包含中文字符。 - -- Windows和Ubuntu上安装的DevEco Device Tool为3.0 Release版本。 - - -## 安装必要的库和工具 - -编译OpenHarmony需要一些库和工具,可以通过以下步骤进行安装。 - -相应操作在Ubuntu环境中进行。 - -1. 使用如下apt-get命令安装后续操作所需的库和工具: - - ``` - sudo apt-get update && sudo apt-get install binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib gcc-arm-linux-gnueabi libc6-dev-i386 libc6-dev-amd64 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip ruby genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons python3.8-distutils tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5-dev libncursesw5 libstdc++6 gcc-arm-none-eabi vim ssh locales libxinerama-dev libxcursor-dev libxrandr-dev libxi-dev - ``` - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。其中: - > - > - Python要求安装Python 3.8及以上版本,此处以Python 3.8为例。 - > - > - Java要求java8及以上版本,此处以java8为例。 - -2. 将python 3.8设置为默认python版本。 - - 查看python 3.8的位置: - - - ``` - which python3.8 - ``` - - 将python和python3切换为python3.8: - - ``` - sudo update-alternatives --install /usr/bin/python python {python3.8 路径} 1 #{python3.8 路径}为上一步查看的python3.8的位置 - sudo update-alternatives --install /usr/bin/python3 python3 {python3.8 路径} 1 #{python3.8 路径}为上一步查看的python3.8的位置 - ``` - - -## 安装DevEco Device Tool - -通过Windows系统远程访问Ubuntu环境进行烧录等操作,需要先在Windows和Ubuntu下分别安装DevEco Device Tool。 - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> DevEco Device Tool是OpenHarmony的一站式开发工具,支持源码开发、编译、烧录,调测等,本文主要用其远端连接Ubuntu环境进行烧录和运行。 - - -### 安装Window版本DevEco Device Tool - -1. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Windows版。 - -2. 解压DevEco Device Tool压缩包,双击安装包程序,点击Next进行安装。 - -3. 设置DevEco Device Tool的安装路径,请注意安装路径不能包含中文字符,同时建议安装到非系统盘符,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果您已安装DevEco Device Tool 3.0 Beta2及以前的版本,则在安装新版本时,会先卸载旧版本,卸载过程中出现如下错误提示时,请点击“Ignore”继续安装,该错误不影响新版本的安装。 - > - > ![zh-cn_image_0000001239275843](figures/zh-cn_image_0000001239275843.png) - - ![zh-cn_image_0000001270076961](figures/zh-cn_image_0000001270076961.png) - -4. 根据安装向导提示,勾选要自动安装的软件。 - - 1. 在弹出VSCode installation confirm页面,勾选“Install VScode 1.62.2automatically”,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果检测到Visual Studio Code已安装,且版本为1.62及以上,则会跳过该步骤。 - - ![zh-cn_image_0000001237801283](figures/zh-cn_image_0000001237801283.png) - - 2. 在弹出的Python select page选择“Download from Huawei mirror”,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果系统已安装可兼容的Python版本(Python 3.8~3.9版本),可选择“Use one of compatible on your PC”。 - - - ![zh-cn_image_0000001193983334](figures/zh-cn_image_0000001193983334.png) - -5. 在以下界面点击**Next**。 - - ![zh-cn_image_0000001259180828](figures/zh-cn_image_0000001259180828.png) - -6. 请详细阅读以下界面的用户协议和隐私声明,这里须勾选"I accept the licenses",然后点击Next,安装向导才会继续进行软件下载和安装。 - - ![zh-cn_image_0000001307019009](figures/zh-cn_image_0000001307019009.png) - -7. 继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,点击**Finish**,关闭DevEco Device Tool安装向导。 - - ![zh-cn_image_0000001239650137](figures/zh-cn_image_0000001239650137.png) - -8. 打开Visual Studio Code,进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。 - - ![zh-cn_image_0000001225760456](figures/zh-cn_image_0000001225760456.png) - - -### 安装Ubuntu版本DevEco Device Tool - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 如果没有Ubuntu系统,可在Windows系统中通过虚拟机方式搭建Ubuntu系统,具体请参考[Ubuntu系统安装指导](https://developer.huawei.com/consumer/cn/training/course/video/C101639987816176315)。Ubuntu系统安装完成后,请根据指导完成[Ubuntu基础环境配置](https://developer.huawei.com/consumer/cn/training/course/video/C101639988048536240),然后再根据本章节进行DevEco Device Tool工具的安装。 - -1. 将Ubuntu Shell环境修改为bash。 - - 1. 执行如下命令,确认输出结果为bash。如果输出结果不是bash,请根据步骤2,将Ubuntu shell修改为bash。 - - ``` - ls -l /bin/sh - ``` - - ![zh-cn_image_0000001226764302](figures/zh-cn_image_0000001226764302.png) - - 2. 打开终端工具,执行如下命令,输入密码,然后选择**No**,将Ubuntu shell由dash修改为bash。 - - ``` - sudo dpkg-reconfigure dash - ``` - - ![zh-cn_image_0000001243641075](figures/zh-cn_image_0000001243641075.png) - -2. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Linux版本。 - -3. 解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。 - - 1. 进入DevEco Device Tool软件包目录,执行如下命令解压软件包,其中devicetool-linux-tool-3.0.0.401.zip为软件包名称,请根据实际进行修改。 - - ``` - unzip devicetool-linux-tool-3.0.0.401.zip - ``` - 2. 进入解压后的文件夹,执行如下命令,赋予安装文件可执行权限,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - chmod u+x devicetool-linux-tool-3.0.0.401.sh - ``` - -4. 执行如下命令,安装DevEco Device Tool,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - sudo ./devicetool-linux-tool-3.0.0.401.sh - ``` - -5. 在用户协议和隐私声明签署界面,请详细阅读用户协议和隐私声明,需签署同意用户协议和隐私声明才能进行下一步的安装。 - - - - ![zh-cn_image_0000001322167645.png](figures/zh-cn_image_0000001322167645.png) - - 安装完成后,当界面输出“DevEco Device Tool successfully installed.”时,表示DevEco Device Tool安装成功。 - - ![zh-cn_image_0000001198722374](figures/zh-cn_image_0000001198722374.png) - - -## 配置Windows远程访问Ubuntu环境 - - -### 安装SSH服务并获取远程访问的IP地址 - -1. 在Ubuntu系统中,打开终端工具,执行如下命令安装SSH服务。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果执行该命令失败,提示openssh-server和openssh-client依赖版本不同,请根据CLI界面提示信息,安装openssh-client相应版本后(例如:sudo apt-get install openssh-client=1:8.2p1-4),再重新执行该命令安装openssh-server。 - - - ``` - sudo apt-get install openssh-server - ``` - -2. 执行如下命令,启动SSH服务。 - - ``` - sudo systemctl start ssh - ``` - -3. 执行如下命令,获取当前用户的IP地址,用于Windows系统远程访问Ubuntu环境。 - - ``` - ifconfig - ``` - - ![zh-cn_image_0000001215737140](figures/zh-cn_image_0000001215737140.png) - - -### 安装Remote SSH - -1. 打开Windows系统下的Visual Studio Code,点击![zh-cn_image_0000001239080359](figures/zh-cn_image_0000001239080359.png),在插件市场的搜索输入框中输入“remote-ssh”。 - - ![zh-cn_image_0000001193920448](figures/zh-cn_image_0000001193920448.png) - -2. 点击Remote-SSH的**Install**按钮,安装Remote-SSH。安装成功后,在**INSTALLED**下可以看到已安装Remote-SSH。 - - ![zh-cn_image_0000001238880335](figures/zh-cn_image_0000001238880335.png) - - -### 远程连接Ubuntu环境 - -1. 打开Windows系统的Visual Studio Code,点击![zh-cn_image_0000001238760373](figures/zh-cn_image_0000001238760373.png),在REMOTE EXPLORER页面点击+按钮。 - - ![zh-cn_image_0000001215878922](figures/zh-cn_image_0000001215878922.png) - -2. 在弹出的SSH连接命令输入框中输入“ssh _username_\@_ip_address_”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号。 - - ![zh-cn_image_0000001215879750](figures/zh-cn_image_0000001215879750.png) - -3. 在弹出的输入框中,选择SSH configuration文件,选择默认的第一选项即可。 - - ![zh-cn_image_0000001260519729](figures/zh-cn_image_0000001260519729.png) - -4. 在SSH TARGETS中,找到远程计算机,点击![zh-cn_image_0000001194080414](figures/zh-cn_image_0000001194080414.png),打开远程计算机。 - - ![zh-cn_image_0000001215720398](figures/zh-cn_image_0000001215720398.png) - -5. 在弹出的输入框中,选择**Linux**,然后在选择**Continue**,然后输入登录远程计算机的密码,连接远程计算机 。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 在Windows系统远程访问Ubuntu过程中,需要频繁的输入密码进行连接,为解决该问题,您可以使用SSH公钥来进行设置,设置方法请参考[注册远程访问Ubuntu环境的公钥](https://device.harmonyos.com/cn/docs/documentation/guide/ide-registering-public-key-0000001247162706)。 - - ![zh-cn_image_0000001215897530](figures/zh-cn_image_0000001215897530.png) - - 连接成功后,等待在远程计算机.vscode-server文件夹下自动安装插件,安装完成后,根据界面提示在Windows系统下重新加载Visual Studio Code,便可以在Windows的DevEco Device Tool界面进行源码开发、编译、烧录等操作。 - - -## 获取源码 - -在Ubuntu环境下通过以下步骤获取OpenHarmony源码。 - - -### 准备工作 - -1. 注册码云gitee帐号。 - -2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)。 - -3. 安装git客户端和git-lfs。(上述工具已在安装必要的库和工具小节安装。如已安装,请忽略) - - 更新软件源: - - ``` - sudo apt-get update - ``` - - 通过以下命令安装: - - ``` - sudo apt-get install git git-lfs - ``` - -4. 配置用户信息。 - - ``` - git config --global user.name "yourname" - git config --global user.email "your-email-address" - git config --global credential.helper store - ``` - -5. 执行如下命令安装码云repo工具。 - - 下述命令中的安装路径以"~/bin"为例,请用户自行创建所需目录。 - - ``` - mkdir ~/bin - curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o ~/bin/repo - chmod a+x ~/bin/repo - pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests - ``` - -6. 将repo添加到环境变量。 - - ``` - vim ~/.bashrc # 编辑环境变量 - export PATH=~/bin:$PATH # 在环境变量的最后添加一行repo路径信息 - source ~/.bashrc # 应用环境变量 - ``` - - -### 获取方式 - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> Master主干为开发分支,开发者可通过Master主干获取最新特性。发布分支代码相对比较稳定,开发者可基于发布分支代码进行商用功能开发。 - -- **OpenHarmony主干代码获取** - - 方式一(推荐):通过repo + ssh下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 - - ``` - repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - - 方式二:通过repo + https下载。 - - - ``` - repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - -- **OpenHarmony发布分支代码获取** - - OpenHarmony各个版本发布分支的源码获取方式请参考[Release-Notes](../../release-notes/Readme.md)。 - - -### 执行prebuilts - - 在源码根目录下执行prebuilts脚本,安装编译器及二进制工具。 - -``` -bash build/prebuilts_download.sh -``` - - -## 安装编译工具 - -想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指导](../subsystems/subsys-build-all.md)。 - -相关操作在Ubuntu环境下进行。 - - -### 安装hb - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 如需安装代理,请参考[配置代理](../quick-start/quickstart-lite-reference.md#配置代理)。 - -1. 运行如下命令安装hb并更新至最新版本 - - ``` - pip3 install --user build/lite - ``` - -2. 设置环境变量 - - ``` - vim ~/.bashrc - ``` - - 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 - - ``` - export PATH=~/.local/bin:$PATH - ``` - - 执行如下命令更新环境变量。 - - ``` - source ~/.bashrc - ``` - -3. 在源码目录执行"hb -h",界面打印以下信息即表示安装成功: - - ``` - usage: hb - - OHOS build system - - positional arguments: - {build,set,env,clean} - build Build source code - set OHOS build settings - env Show OHOS build env - clean Clean output - - optional arguments: - -h, --help show this help message and exit - ``` - -> ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** -> - 可采用以下命令卸载hb: -> -> ``` -> pip3 uninstall ohos-build -> ``` -> -> - 若安装hb的过程中遇到问题,请参见下文[常见问题](../quick-start/quickstart-lite-faq-hb.md)进行解决。 - - -### 安装LLVM(仅OpenHarmony_v1.x分支/标签需要) - -> ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** -> 如果下载的源码为OpenHarmony_v1.x分支/标签,请按下面的步骤安装12.0.1版本的llvm。 -> -> 如果下载的源码为Master及非OpenHarmony_v1.x分支/标签,可直接跳过本小节,hb会自动下载最新的llvm。 - -1. 打开Linux编译服务器终端。 - -2. [下载LLVM工具](https://repo.huaweicloud.com/openharmony/compiler/clang/12.0.1-530132/linux/clang-530132-linux-x86_64.tar.bz2)。 - -3. 解压LLVM安装包至~/llvm路径下。 - - ``` - tar -jxvf clang.tar.bz2 -C ~/ - mv ~/clang-530132/ ~/llvm - ``` - -4. 设置环境变量。 - - ``` - vim ~/.bashrc - ``` - - 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 - - - ``` - export PATH=~/llvm/bin:$PATH - ``` - -5. 生效环境变量。 - - ``` - source ~/.bashrc - ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-faq-burning.md b/zh-cn/device-dev/quick-start/quickstart-lite-faq-burning.md deleted file mode 100644 index 548e6164d6e4825b97621f001209a910a9cf2b68..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-faq-burning.md +++ /dev/null @@ -1,128 +0,0 @@ -# 烧录异常 - - -## 烧写选择串口后提示“Error: Opening COMxx: Access denied” - -- **现象描述** - 点击烧写并选择串口后,出现Error: Opening COMxx: Access denied。 - - **图1** 打开串口失败图  - - ![zh-cn_image_0000001226634728](figures/zh-cn_image_0000001226634728.png) - -- **可能原因** - 串口已经被占用。 - -- **解决办法** - -1. 按图依次选择下拉框,查找带有serial-xx的终端。 - - **图2** 查找是否存在占用串口的终端   - - ![zh-cn_image_0000001226954644](figures/zh-cn_image_0000001226954644.png) - -2. 点击标号中的垃圾桶图标,关闭串口。 - - **图3** 关闭串口终端  - - - ![zh-cn_image_0000001271234761](figures/zh-cn_image_0000001271234761.png) - -3. 重新点击烧写,选择串口并开始烧写程序。 - - **图4** 重新启动烧写任务   - - ![zh-cn_image_0000001271594765](figures/zh-cn_image_0000001271594765.png) - - -## Windows电脑与单板网络连接失败 - -- **现象描述** - 点击烧写并选择串口后,无法获取文件。 - - **图5** 网络不通,单板无法获取文件图   - - ![zh-cn_image_0000001271234757](figures/zh-cn_image_0000001271234757.png) - -- **可能原因** - 单板网络与Windows电脑不联通。 - - Windows电脑防火墙未允许Visual Studio Code联网。 - -- **解决方法** - -1. 检查网线是否连接。 - -2. 点击Windows防火墙。 - - **图6** 网络防火墙设置图   - - ![zh-cn_image_0000001226634732](figures/zh-cn_image_0000001226634732.png) - -3. 点击“允许应用通过防火墙”。 - - **图7** 防火墙和网络保护界面图   - - ![zh-cn_image_0000001271354749](figures/zh-cn_image_0000001271354749.png) - -4. 查找Visual Studio Code应用。 - - **图8** 查找Visual Studio Code应用图   - - ![zh-cn_image_0000001271234765](figures/zh-cn_image_0000001271234765.png) - -5. 勾选Visual Studio Code的专用和公用网络的访问权限。 - - **图9** 允许Visual Studio Code应用访问网络   - - ![zh-cn_image_0000001271474585](figures/zh-cn_image_0000001271474585.png) - - -## 烧写失败 - -- **现象描述** - 点击烧写并选择串口后,出现无法烧写的情况。 - -- **可能原因** - 安装IDE插件DevEco后未重启。 - -- **解决方法** - 重启IDE。 - - -## (Hi3516)串口无回显 - -- **现象描述** - 串口显示已连接,重启单板后,回车无任何回显。 - -- **可能原因1** - 串口连接错误。 - -- **解决办法** - 修改串口号。 - - 请查看设备管理器,确认连接单板的串口与终端中连接串口是否一致,若不一致,请按烧写选择串口后提示error-opening-comxx-access-denied修改串口号。 - -- **可能原因2** - 单板U-boot被损坏。 - -- **解决办法** - 烧写U-boot。 - - 若上述步骤依旧无法连接串口,可能由于单板U-boot损坏,按下述步骤烧写U-boot。 - -1. 获取引导文件U-boot。 - - > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** - > 单板的U-boot文件请在开源包中获取:device\hisilicon\hispark_taurus\sdk_liteos\uboot\out\boot\u-boot-hi3516dv300.bin - -2. 根据USB烧写步骤烧写U-boot文件。 - - 按照[Hi3516系列USB烧写步骤](https://device.harmonyos.com/cn/docs/documentation/guide/ide-hi3516-upload-0000001052148681)中描述的烧写方法,选择对应单板的U-boot文件进行烧写。 - -3. 烧写完成后,登录串口如下图所示。 - - **图10** U-boot烧写完成串口显示图  - - - ![zh-cn_image_0000001271234753](figures/zh-cn_image_0000001271234753.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-faq-hb.md b/zh-cn/device-dev/quick-start/quickstart-lite-faq-hb.md deleted file mode 100644 index 9accfa1781e1ae816c3d304f005e942809ffcf2c..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-faq-hb.md +++ /dev/null @@ -1,71 +0,0 @@ -# hb安装异常 - - -## hb安装过程中出现乱码、段错误 - -- **现象描述** - 执行“python3 -m pip install --user ohos-build”出现乱码、段错误(segmentation fault)。 - -- **可能原因** - pip版本过低。 - -- **解决办法** - 执行如下命令升级pip。 - - - ``` - python3 -m pip install -U pip - ``` - - -## hb安装过程中提示"cannot import 'sysconfig' from 'distutils'" - -- **现象描述** - 执行“python3 -m pip install --user ohos-build”提示"cannot import 'sysconfig' from 'distutils'" - -- **可能原因** - 缺少distutils模块。 - -- **解决办法** - 执行如下命令安装。 - - - ``` - sudo apt-get install python3.8-distutils - ``` - - -## hb安装过程中提示"module 'platform' has no attribute 'linux_distribution'" - -- **现象描述** - 执行“python3 -m pip install --user ohos-build”提示"module 'platform' has no attribute 'linux_distribution'" - -- **可能原因** - python3 pip安装兼容性问题。 - -- **解决办法** - 执行如下命令重新安装pip。 - - - ``` - sudo apt remove python3-pip - curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py - python get-pip.py - ``` - - -## hb安装过程中提示"Could not find a version that satisfies the requirement ohos-build" - -- **现象描述** - 执行“python3 -m pip install --user ohos-build”提示"Could not find a version that satisfies the requirement ohos-build" - -- **可能原因** - 可能是网络环境较差导致的安装失败。 - -- **解决办法** - 1. 请检查网络连接是否正常。如果网络有问题,请修复网络问题后重新安装。 - 2. 若网络正常,请尝试指定临时pypi源的方式安装: - - ``` - python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ohos-build - ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-ide-directory.md b/zh-cn/device-dev/quick-start/quickstart-lite-ide-directory.md deleted file mode 100644 index 283321b0ad7b6f307cd71713c885f9bc1d69d981..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-ide-directory.md +++ /dev/null @@ -1,23 +0,0 @@ -## 轻量和小型系统快速入门(IDE方式) - -- [轻量与小型系统入门概述](quickstart-ide-lite-overview.md) -- 准备轻量与小型系统环境 - - [搭建Windows+Ubuntu混合开发环境](quickstart-ide-lite-env-setup-win-ubuntu.md) - - [获取源码](quickstart-ide-lite-sourcecode-acquire.md) -- [导入源码工程](quickstart-ide-lite-create-project.md) -- 运行“Hello World” - - Hi3861开发板 - - [编写“Hello World”程序](quickstart-ide-lite-steps-hi3861-helloworld.md) - - [编译](quickstart-ide-lite-steps-hi3861-building.md) - - [烧录](quickstart-ide-lite-steps-hi3861-burn.md) - - [联网](quickstart-ide-lite-steps-hi3861-netconfig.md) - - [调试验证](quickstart-ide-lite-steps-hi3861-debug.md) - - [运行](quickstart-ide-lite-steps-hi3861-running.md) - - Hi3516开发板 - - [编写“Hello World”程序](quickstart-ide-lite-steps-hi3516-helloworld.md) - - [编译](quickstart-ide-lite-steps-hi3516-building.md) - - [烧录](quickstart-ide-lite-steps-hi3516-burn.md) - - [运行](quickstart-ide-lite-steps-hi3516-running.md) -- 附录 - - [Hi3861开发板介绍](quickstart-ide-lite-introduction-hi3861.md) - - [Hi3516开发板介绍](quickstart-ide-lite-introduction-hi3516.md) \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-introduction-hi3861.md b/zh-cn/device-dev/quick-start/quickstart-lite-introduction-hi3861.md deleted file mode 100644 index 2dfd5c24e1fc416a7e9c35268616c1b2619b0ac6..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-introduction-hi3861.md +++ /dev/null @@ -1,68 +0,0 @@ -# Hi3861开发板介绍 - - -## 简介 - -Hi3861开发板是一片大约2cm\*5cm大小的开发板,是一款高度集成的2.4GHz WLAN SoC芯片,集成IEEE 802.11b/g/n基带和RF(Radio Frequency)电路。支持OpenHarmony,并配套提供开放、易用的开发和调试运行环境。 - - **图1** Hi3861开发板外观图   - - ![zh-cn_image_0000001271474569](figures/zh-cn_image_0000001271474569.png) - -另外,Hi3861开发板还可以通过与Hi3861底板连接,扩充自身的外设能力,底板如下图所示。 - - **图2** Hi3861底板外观图   - -![zh-cn_image_0000001226954632](figures/zh-cn_image_0000001226954632.png) - -- RF电路包括功率放大器PA(Power Amplifier)、低噪声放大器LNA(Low Noise Amplifier)、RF Balun、天线开关以及电源管理等模块;支持20MHz标准带宽和5MHz/10MHz窄带宽,提供最大72.2Mbit/s物理层速率。 - -- Hi3861 WLAN基带支持正交频分复用(OFDM)技术,并向下兼容直接序列扩频(DSSS)和补码键控(CCK)技术,支持IEEE 802.11 b/g/n协议的各种数据速率。 - -- Hi3861芯片集成高性能32bit微处理器、硬件安全引擎以及丰富的外设接口,外设接口包括SPI(Synchronous Peripheral Interface)、UART(Universal Asynchronous Receiver & Transmitter)、I2C(The Inter Integrated Circuit)、PWM(Pulse Width Modulation)、GPIO(General Purpose Input/Output)和多路ADC(Analog to Digital Converter),同时支持高速SDIO2.0(Secure Digital Input/Output)接口,最高时钟可达50MHz;芯片内置SRAM(Static Random Access Memory)和Flash,可独立运行,并支持在Flash上运行程序。 - -- Hi3861芯片适用于智能家电等物联网智能终端领域。 - - **图3** Hi3861功能框图   - -![zh-cn_image_0000001226794688](figures/zh-cn_image_0000001226794688.png) - - -## 资源和约束 - -Hi3861开发板资源十分有限,整板共2MB FLASH,352KB RAM。在编写业务代码时,需注意资源使用效率。 - - -## 开发板规格 - - **表1** Hi3861开发板规格清单 - -| 规格类型 | 规格清单 | -| -------- | -------- | -| 通用规格 | - 1×1 2.4GHz频段(ch1~ch14)
- PHY支持IEEE 802.11b/g/n
- MAC支持IEEE802.11 d/e/h/i/k/v/w
- 内置PA和LNA,集成TX/RX Switch、Balun等
- 支持STA和AP形态,作为AP时最大支持6 个STA接入
- 支持WFA WPA/WPA2 personal、WPS2.0
- 支持与BT/BLE芯片共存的2/3/4 线PTA方案
- 电源电压输入范围:2.3V~3.6V
- IO电源电压支持1.8V和3.3V
- 支持RF自校准方案
- 低功耗:
  - Ultra Deep Sleep模式:5μA \@3.3V
  - DTIM1:1.5mA \@3.3V
  - DTIM3:0.8mA \@3.3V | -| PHY特性 | - 支持IEEE802.11b/g/n单天线所有的数据速率
- 支持最大速率:72.2Mbps\@HT20 MCS7
- 支持标准20MHz带宽和5M/10M窄带宽
- 支持STBC
- 支持Short-GI | -| MAC特性 | - 支持A-MPDU,A-MSDU
- 支持Blk-ACK
- 支持QoS,满足不同业务服务质量需求 | -| CPU子系统 | - 高性能 32bit微处理器,最大工作频率160MHz
- 内嵌SRAM 352KB、ROM 288KB
- 内嵌 2MB Flash | -| 外围接口 | - 1个SDIO接口、2个SPI接口、2个I2C接口、3个UART接口、15个GPIO接口、7路ADC输入、6路PWM、1个I2S接口(注:上述接口通过复用实现)
- 外部主晶体频率40M或24M | -| 其他信息 | - 封装:QFN-32,5mm×5mm
- 工作温度:-40℃ ~ +85℃ | - - -## OpenHarmony关键特性 - -OpenHarmony基于Hi3861平台提供了多种开放能力,提供的关键组件如下表所示。 - - **表2** OpenHarmony关键组件列表 - -| 组件名 | 能力介绍 | -| -------- | -------- | -| WLAN服务 | 提供WLAN服务能力。包括:station和hotspot模式的连接、断开、状态查询等。 | -| 模组外设控制 | 提供操作外设的能力。包括:I2C、I2S、ADC、UART、SPI、SDIO、GPIO、PWM、FLASH等。 | -| 分布式软总线 | 在OpenHarmony分布式网络中,提供设备被发现、数据传输的能力。 | -| 设备安全绑定 | 提供在设备互联场景中,数据在设备之间的安全流转的能力。 | -| 基础加解密 | 提供密钥管理、加解密等能力。 | -| 系统服务管理 | 系统服务管理基于面向服务的架构,提供了OpenHarmony统一化的系统服务开发框架。 | -| 启动引导 | 提供系统服务的启动入口标识。在系统服务管理启动时,调用bootstrap标识的入口函数,并启动系统服务。 | -| 系统属性 | 提供获取与设置系统属性的能力。 | -| 基础库 | 提供公共基础库能力。包括:文件操作、KV存储管理等。 | -| DFX | 提供DFX能力。包括:流水日志、时间打点等。 | -| XTS | 提供OpenHarmony生态认证测试套件的集合能力。 | diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-overview.md b/zh-cn/device-dev/quick-start/quickstart-lite-overview.md deleted file mode 100644 index f6de41cb0e96858a5fb0e75ab17fdab7bf5e9176..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-overview.md +++ /dev/null @@ -1,40 +0,0 @@ -# 轻量与小型系统入门概述 - - -## 简介 - -OpenHarmony轻量和小型系统适用于内存较小的IOT设备(参考内存≥128KiB)。通过本文,开发者可以快速熟悉OpenHarmony标准系统的环境搭建、编译、烧录、调测以及运行“Hello World”等。 - -考虑到开发者的开发习惯,OpenHarmony为开发者提供了以下两种入门指导: - -- IDE方式:完全采用IDE(DevEco Device Tool)进行一站式开发,编译依赖工具的安装及编译、烧录、运行都通过IDE进行操作。 - -- 安装包方式:通过命令行进行编译依赖工具的下载安装,编译操作也通过命令实现。烧录、运行等操作使用IDE。OpenHarmony还为开发者提供了[Docker环境](../get-code/gettools-acquire.md),在很大程度上简化了编译前的环境配置,习惯使用安装包方式的开发者也可以选择Docker环境进行编译 。 - -本文采用安装包方式进行介绍,习惯使用DevEco Device Tool的开发者可参考[轻量与小型系统快速入门(IDE方式)](../quick-start/quickstart-ide-lite-overview.md)。 - - -## 开发环境 - -推荐开发者采用Windows+Ubuntu环境进行OpenHarmony开发: - -- Windows:用于源码开发、烧录等。 - -- Ubuntu:用于源码编译。 - -本文将介绍如何基于Windows+Ubuntu环境进行OpenHarmony的开发。 - - -## 开发板 - -本文基于以下两款典型开发板进行开发介绍 :Hi3861 WLAN模组、Hi3516DV300。开发板的具体外观和规格可参见[本文附录](../quick-start/quickstart-lite-introduction-hi3861.md),开发者可根据需要自行购买开发板。 - - -## 开发流程 - -轻量和小型系统快速入门流程如下图所示。 - - **图1** 轻量和小型系统快速入门开发流程  - -  -![zh-cn_image_0000001227114628](figures/zh-cn_image_0000001227114628.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-package-directory.md b/zh-cn/device-dev/quick-start/quickstart-lite-package-directory.md deleted file mode 100644 index 487f50ff678af8fe4239158ad10f18e05cc1a1a4..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-package-directory.md +++ /dev/null @@ -1,29 +0,0 @@ -## 轻量和小型系统快速入门(安装包方式) - -- [轻量与小型系统入门概述](quickstart-lite-overview.md) -- [搭建轻量与小型系统环境](quickstart-lite-env-setup.md) -- 运行“Hello World” - - Hi3861开发板 - - [安装Hi3861开发板环境](quickstart-lite-steps-hi3861-setting.md) - - [编写“Hello World”程序](quickstart-lite-steps-hi3861-helloworld.md) - - [编译](quickstart-lite-steps-hi3861-building.md) - - [烧录](quickstart-lite-steps-hi3861-burn.md) - - [联网](quickstart-lite-steps-hi3861-netconfig.md) - - [调试验证](quickstart-lite-steps-hi3861-debug.md) - - [运行](quickstart-lite-steps-hi3861-running.md) - - Hi3516开发板 - - [安装Hi3516开发板环境](quickstart-lite-steps-hi3516-setting.md) - - [编写“Hello World”程序](quickstart-lite-steps-hi3516-helloworld.md) - - [编译](quickstart-lite-steps-hi3516-building.md) - - [烧录](quickstart-lite-steps-hi3516-burn.md) - - [运行](quickstart-lite-steps-hi3516-running.md) -- 常见问题 - - [hb安装异常](quickstart-lite-faq-hb.md) - - [编译异常](quickstart-lite-faq-compose.md) - - [烧录异常](quickstart-lite-faq-burning.md) -- 附录 - - 开发板介绍 - - [Hi3861开发板介绍](quickstart-lite-introduction-hi3861.md) - - [Hi3516开发板介绍](quickstart-lite-introduction-hi3516.md) - - [参考信息](quickstart-lite-reference.md) - - [使用HiTool烧录代码](quickstart-lite-hitool.md) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-reference.md b/zh-cn/device-dev/quick-start/quickstart-lite-reference.md deleted file mode 100644 index 513f7e8667a3133b4cf81d275b5a38749207beea..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-reference.md +++ /dev/null @@ -1,68 +0,0 @@ -# 参考信息 - - -## 使用build.sh脚本编译源码 - -1. 进入源码根目录,执行如下命令进行版本编译。 - - ``` - ./build.sh --product-name name --ccache - ``` - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > _name_为产品名称,例如Hi3516DV300、rk3568等。 - -2. 检查编译结果。编译完成后,log中显示如下: - - ``` - post_process - =====build name successful. - ``` - - 编译所生成的文件都归档在out/{device_name}/目录下,结果镜像输出在out/{device_name}/packages/phone/images/ 目录下。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 其他模块化编译操作,可参见[编译构建指导](../subsystems/subsys-build-all.md)。 - - -## 配置代理 - - -### 配置Python代理 - -1. 新建代理配置文件。 - - ``` - mkdir ~/.pipvim ~/.pip/pip.conf - ``` - -2. 在文件中写入如下代理信息并保存退出。 - - ``` - [global] - index-url = http://代理网址 - trusted-host = 可信任的镜像地址 - timeout = 120 - ``` - - -### 配置NPM代理 - -1. 新建代理配置文件。 - - ``` - vim ~/.npmrc - ``` - -2. 在文件中写入如下代理信息并保存退出。 - - ``` - registry=http://代理网址 - strict-ssl=false - ``` - -3. 将以下内容添加到.bashrc中并保存退出。 - - ``` - export NPM_REGISTRY=http://代理网址 - source .bashrc - ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-burn.md b/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-burn.md deleted file mode 100644 index e5dbb23c0e0a6b73ddcd259482c766c2735a4c2f..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-burn.md +++ /dev/null @@ -1,88 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - - -Hi3516DV300支持USB烧录、网口烧录和串口烧录三种方式,本文采用USB方式进行烧录。相关操作在Windows环境下进行 。 - - -## 导入源码 - -在编译完成后,[保证Windows系统可以远程访问Ubuntu环境](quickstart-lite-env-setup.md)的情况下,您还需要通过以下步骤将编译好的源码导入DevEco Device Tool,方可进行烧录。 - -1. 打开DevEco Device Tool,进入Home页,点击**Import Project**打开工程。 - - ![zh-cn_image_0000001278358765](figures/zh-cn_image_0000001278358765.png) - -2. 选择OpenHarmony源码根目录路径(需要访问Ubuntu下的源码目录),然后再选择**Import OpenHarmony Source**选项,点击**Import**进行导入。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 工程存储路径不能包含中文字符、空格。 - - ![zh-cn_image_0000001271477045](figures/zh-cn_image_0000001271477045.png) - -3. 在Import Project界面,选择**Product**后,会自动填充对应的SOC、Board、Company和Kernel信息,然后**Ohos Ver**选择对应的OpenHarmony源码版本。 - - ![zh-cn_image_0000001279586409](figures/zh-cn_image_0000001279586409.png) - -4. 点击**Open**打开工程或源码。 - -## 烧录 - -完成源码导入后,通过以下步骤进行烧录: - -1. 请连接好电脑和待烧录开发板,需要连接USB口和串口,具体可参考[Hi3516DV300开发板介绍](quickstart-lite-introduction-hi3516.md)。 - -2. 根据[Hi3516DV300开发板串口驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fhi3516_hi3518-drivers-0000001050743695)、[Hi3516DV300开发板USB驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)安装USB驱动及USB转串口的驱动。若您的设备中已安装此驱动,请忽略该步骤。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - -4. 在菜单栏中点击**Project Settings**按钮,进入Hi3516DV300工程配置界面。 - - ![zh-cn_image_0000001198566364](figures/zh-cn_image_0000001198566364.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001198566365](figures/zh-cn_image_0000001198566365.png) - -6. 在“hi3516dv300”页签,设置烧录选项,包括upload_partitions、upload_port和upload_protocol。 - - - upload_partitions:选择待烧录的文件,默认情况下会同时烧录fastboot、kernel、rootfs和userfs。DevEco Device Tool已预置默认的烧录文件信息,包括起始地址、分区大小、待烧录文件地址等,开发者可根据实际情况进行调整,点击每个待烧录文件后的![zh-cn_image_0000001275592884.png](figures/zh-cn_image_0000001275592884.png)按钮进行修改。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 - - ![zh-cn_image_0000001312778829](figures/zh-cn_image_0000001312778829.png) - - - upload_protocol:选择烧录协议,固定选择“hiburn-usb”。 - - - upload_port:选择已查询到的串口号。 - - ![zh-cn_image_0000001223190441](figures/zh-cn_image_0000001223190441.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 点击hi3516dv300下的**Upload**按钮。 - - ![zh-cn_image_0000001266887264](figures/zh-cn_image_0000001266887264.png) - - 此时待烧录文件会从Ubuntu系统传输到Windows下,传输完成后界面显示“Operation paused, Please press Enter key to continue”时,请点击**Enter**键启动烧录。 - - ![zh-cn_image_0000001114129426](figures/zh-cn_image_0000001114129426.png) - -9. 在终端窗口显示如下提示信息时,请在15秒内,按住Update键,插拔USB线,最后松开Update键启动烧录。 - - ![zh-cn_image_0000001326412233.png](figures/zh-cn_image_0000001326412233.png) - - 启动烧录后,界面提示**SUCCESS**信息时,表示烧录成功。 - - ![zh-cn_image_0000001160649343](figures/zh-cn_image_0000001160649343.png) - -10. 烧录成功后,请根据运行章节进行操作,启动系统。 - diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-running.md b/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-running.md deleted file mode 100644 index a8f2cd561872bcef41a49661adedb274b7cd252f..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-running.md +++ /dev/null @@ -1,51 +0,0 @@ -# 运行 - - -## 启动系统 - -在完成Hi3516DV300的烧录后,还需要设置BootLoader引导程序,才能运行OpenHarmony系统。 - -1. 在Hi3516DV300任务中,点击**Configure bootloader(Boot OS)**进行配置即可。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > DevEco Device Tool针对Hi3516DV300开发板的BootLoader设置进行了适配,无需开发者手动修改。 - - ![zh-cn_image_0000001209906547](figures/zh-cn_image_0000001209906547.png) - -2. 提示如下图中的重启开发板的提示信息时,重启开发板,然后在控制台输出“SUCCESS”表示设置成功。 - - ![zh-cn_image_0000001210385161](figures/zh-cn_image_0000001210385161.png) - -3. 在任务栏点击**Monitor**按钮,启动串口工具。 - - ![zh-cn_image_0000001164506870](figures/zh-cn_image_0000001164506870.png) - -4. 当界面打印回显信息,点击Enter按钮,直到界面显示OHOS \#信息,表示系统启动成功。 - - ![zh-cn_image_0000001198626874](figures/zh-cn_image_0000001198626874.png) - - -## 运行“Hello World” - -系统启动成功后,取源码out目录下的helloworld可执行文件放入系统的bin目录,通过以下步骤运行“Hello World”。 - -1. 在启动界面进入bin目录。 - - ``` - cd bin - ``` - -2. 进入bin目录后可以看到helloworld文件,通过以下命令运行helloworld程序。 - - ``` - ./helloworld - ``` - - 界面打印“Hello World!”,程序运行成功。 - - ![zh-cn_image_0000001271234769](figures/zh-cn_image_0000001271234769.png) - - -## 下一步学习 - -恭喜您,已完成Hi3516DV300的快速上手!建议您下一步进入[带屏摄像头产品开发](../guide/device-camera-control-overview.md)的学习 。 diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-setting.md b/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-setting.md deleted file mode 100644 index 1c1342c8b3125cecae0517ef6c8a72e52e3e92b0..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-setting.md +++ /dev/null @@ -1,30 +0,0 @@ -# 安装Hi3516开发板环境 - - -## Hi3516工具要求 - - -### 硬件要求 - -- Hi3516DV300 IoT Camera开发板 - -- USB转串口线、网线(Linux工作台通过USB转串口线、网线与Hi3516DV300 开发板连接) - - -### 软件要求 - -Hi3516DV300开发板对Linux服务器通用环境配置需要的工具及其用途如下表所示。 - - **表1** Linux服务器开发工具及用途 - -| 开发工具 | 用途 | -| -------- | -------- | -| dosfstools、mtools、mtd-utils | 文件打包工具 | -| Java虚拟机环境 | 编译、调试和运行Java程序 | - - -## 安装Linux服务器工具 - -Hi3516DV300依赖以下工具:dosfstools、mtools、mtd-utils、Java运行时环境(JRE)和Java sdk 开发工具包。 - -上述工具已在[安装必要的库和工具](../quick-start/quickstart-lite-env-setup.md)环节完成安装,此处无需再进行安装。 diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-burn.md b/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-burn.md deleted file mode 100644 index c281e7aa447c87e77b8f31bc21b6d1279042eb20..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-burn.md +++ /dev/null @@ -1,76 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - - -Hi3861V100开发板支持串口烧录方式,在Windows下通过以下步骤进行烧录: - - -## 导入源码 - -在编译完成后,[保证Windows系统可以远程访问Ubuntu环境](quickstart-lite-env-setup.md)的情况下,您还需要通过以下步骤将编译好的源码导入DevEco Device Tool,方可进行烧录。 - -1. 打开DevEco Device Tool,进入Home页,点击**Import Project**打开工程。 - - ![zh-cn_image_0000001278358765](figures/zh-cn_image_0000001278358765.png) - -2. 选择OpenHarmony源码根目录路径(需要访问Ubuntu下的源码目录),然后再选择**Import OpenHarmony Source**选项,点击**Import**进行导入。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 工程存储路径不能包含中文字符、空格。 - - ![zh-cn_image_0000001271477045](figures/zh-cn_image_0000001271477045.png) - -3. 在Import Project界面,选择**Product**后,会自动填充对应的SOC、Board、Company和Kernel信息,然后**Ohos Ver**选择对应的OpenHarmony源码版本。 - - ![zh-cn_image_0000001279425450](figures/zh-cn_image_0000001279425450.png) - -4. 点击**Open**打开工程或源码。 - - -## 烧录 - -完成源码导入后,通过以下步骤进行烧录: - -1. 请连接好电脑和待烧录开发板,需要连接USB口,具体可参考[Hi3861V100开发板介绍](quickstart-lite-introduction-hi3861.md)。 - -2. 根据[Hi3861V100开发板串口驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fhi3861-drivers-0000001058153433)安装USB转串口的驱动程序。若您的设备中已安装此驱动,请忽略该步骤。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - - -4. 在菜单栏中点击**Project Settings**按钮,进入Hi3861V100工程配置界面。 - - ![zh-cn_image_0000001333802045.png](figures/zh-cn_image_0000001333802045.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001198943768](figures/zh-cn_image_0000001198943768.png) - -6. 在“hi3861”页签,设置烧录选项,包括upload_port、upload_protocol和upload_partitions。 - - - upload_port:选择已查询的串口号。 - - upload_protocol:选择烧录协议,选择“hiburn-serial”。 - - upload_partitions:选择待烧录的文件名称。DevEco Device Tool已预置默认的烧录文件信息,如果需要修改待烧录文件地址,可点击每个待烧录文件后的![zh-cn_image_0000001333642545.png](figures/zh-cn_image_0000001333642545.png)按钮进行修改。 - - ![zh-cn_image_0000001243704061](figures/zh-cn_image_0000001243704061.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 点击**Open**打开工程文件,然后在“PROJECT TASKS”中,点击hi3861下的**Upload**按钮,启动烧录。 - - ![zh-cn_image_0000001216440138](figures/zh-cn_image_0000001216440138.png) - -9. 启动烧录后,显示如下提示信息时,请在15秒内,按下开发板上的RST按钮重启开发板。 - - ![zh-cn_image_0000001198466090](figures/zh-cn_image_0000001198466090.png) - - 重新上电后,界面提示如下信息时,表示烧录成功。 - - ![zh-cn_image_0000001216761476](figures/zh-cn_image_0000001216761476.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-debug.md b/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-debug.md deleted file mode 100644 index 15b35d82ffd79fd8830ea582e268ddc8272901c9..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-debug.md +++ /dev/null @@ -1,65 +0,0 @@ -# 调试验证 - - -完成烧录及联网之后,用户可根据需要进行调试验证。目前调试验证的方法有以下两种,开发者可以根据具体业务情况选择。 - - -1. 通过printf打印日志 - -2. 通过asm文件定位panic问题 - - -由于本示例业务简单,采用printf打印日志的调试方式即可。下方将介绍这两种调试手段的使用方法。 - - -## printf打印 - -代码中增加printf维测,信息会直接打印到串口上。开发者可在业务关键路径或业务异常位置增加日志打印,如下所示: - - -``` -void HelloWorld(void) -{ - printf("[DEMO] Hello world.\n"); -} -``` - - -## 根据asm文件进行问题定位 - - 系统异常退出时,会在串口上打印异常退出原因调用栈信息,如下文所示。通过解析异常栈信息可以定位异常位置。 - -``` -=======KERNEL PANIC======= -**Call Stack* -Call Stack 0 -- 4860d8 addr:f784c -Call Stack 1 -- 47b2b2 addr:f788c -Call Stack 2 -- 3e562c addr:f789c -Call Stack 3 -- 4101de addr:f78ac -Call Stack 4 -- 3e5f32 addr:f78cc -Call Stack 5 -- 3f78c0 addr:f78ec -Call Stack 6 -- 3f5e24 addr:f78fc -Call Stack end*** -``` - -为解析上述调用栈信息,需要使用到Hi3861_wifiiot_app.asm文件,该文件记录了代码中函数在Flash上的符号地址以及反汇编信息。asm文件会随版本打包一同构建输出,存放在./out/wifiiot/路径下。 - -1. 将调用栈CallStack信息保存到txt文档中,以便于编辑。(可选) - -2. 打开asm文件,并搜索CallStack中的地址,列出对应的函数名信息。通常只需找出前几个栈信息对应的函数,就可明确异常代码方向。 - - ``` - Call Stack 0 -- 4860d8 addr:f784c -- WadRecvCB - Call Stack 1 -- 47b2b2 addr:f788c -- wal_sdp_process_rx_data - Call Stack 2 -- 3e562c addr:f789c - Call Stack 3 -- 4101de addr:f78ac - Call Stack 4 -- 3e5f32 addr:f78cc - Call Stack 5 -- 3f78c0 addr:f78ec - Call Stack 6 -- 3f5e24 addr:f78fc - ``` - -3. 根据以上调用栈信息,可以定位WadRecvCB函数中出现了异常。 - - ![zh-cn_image_0000001271354733](figures/zh-cn_image_0000001271354733.png) - -4. 完成代码排查及修改。 diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-netconfig.md b/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-netconfig.md deleted file mode 100644 index 7e4199ccba9197a1068faf9f589853a28d4283f7..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-netconfig.md +++ /dev/null @@ -1,44 +0,0 @@ -# 联网 - - -完成版本编译及烧录后,下面开始介绍如何在串口终端上执行AT命令,使Hi3861 WLAN模组联网。 - - -1. 保持Windows工作台和WLAN模组的连接状态,在DevEco Device Tool最下方,点击“DevEco:Serial Monitor”按钮。 - - **图1** 打开DevEco Device Tool串口终端示意图   - - ![zh-cn_image_0000001227114644](figures/zh-cn_image_0000001227114644.png) - -2. 复位Hi3861 WLAN模组,终端界面显示“ready to OS start”,则启动成功。 - - **图2** Hi3861 WLAN模组复位成功示意图 -   - ![zh-cn_image_0000001226794704](figures/zh-cn_image_0000001226794704.png) - -3. 在串口终端中,依次执行如下AT命令,启动STA模式,连接指定AP热点,并开启DHCP功能。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 开发板启动后,串口会打印测试用例信息,待测试用例信息打印完成后再执行AT指令,否则AT指令会被测试用例信息覆盖。 - - - - ``` - AT+STARTSTA # 启动STA模式 - AT+SCAN # 扫描周边AP - AT+SCANRESULT # 显示扫描结果 - AT+CONN="SSID",,2,"PASSWORD" # 连接指定AP,其中SSID/PASSWORD为待连接的热点名称和密码 - AT+STASTAT # 查看连接结果 - AT+DHCP=wlan0,1 # 通过DHCP向AP请求wlan0的IP地址 - ``` - -4. 查看Hi3861 WLAN模组与网关联通是否正常,如下图所示。 - - ``` - AT+IFCFG # 查看模组接口IP - AT+PING=X.X.X.X # 检查模组与网关的联通性,其中X.X.X.X需替换为实际的网关地址 - ``` - - **图3** Hi3861 WLAN模组联网成功示意图   - - ![zh-cn_image_0000001226954648](figures/zh-cn_image_0000001226954648.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-running.md b/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-running.md deleted file mode 100644 index 0f23817a5b3b146379be6e17488df078578fcd8a..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-running.md +++ /dev/null @@ -1,19 +0,0 @@ -# 运行 - - -## 运行结果 - -示例代码编译、烧录、运行、调测后,重启开发板后将自动在界面输出如下结果: - - -``` -ready to OS start -FileSystem mount ok. -wifi init success! -[DEMO] Hello world. -``` - - -## 下一步学习 - -恭喜,您已完成Hi3861 WLAN模组快速上手!建议您下一步进入[WLAN产品开发](../guide/device-wlan-led-control.md)的学习 。 diff --git a/zh-cn/device-dev/quick-start/quickstart-overview.md b/zh-cn/device-dev/quick-start/quickstart-overview.md new file mode 100644 index 0000000000000000000000000000000000000000..6d7ebc91b73a41bb3d25b892c317692fe7351784 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-overview.md @@ -0,0 +1,53 @@ +# 快速入门概述 + + +OpenHarmony是一款面向全场景的开源分布式操作系统,采用组件化设计,支持在128KiB到xGiB RAM资源的设备上运行系统组件,设备开发者可基于目标硬件能力自由选择系统组件进行集成。 + + +OpenHarmony当前定义了三种基础系统类型,设备开发者通过选择基础系统类型完成必选组件集配置后,便可实现其最小系统的开发。这三种基础系统类型的参考定义如下: + + + **表1** 基础类型系统简介 + +| 类型 | 处理器 | 最小内存 | 能力 | +| -------- | -------- | -------- | -------- | +| 轻量系统(mini system) | MCU类处理器(例如Arm Cortex-M、RISC-V 32位的设备) | 128KiB | 提供多种轻量级网络协议,轻量级的图形框架,以及丰富的IOT总线读写部件等。可支撑的产品如智能家居领域的连接类模组、传感器设备、穿戴类设备等。 | +| 小型系统(small system) | 应用处理器(例如Arm Cortex-A的设备) | 1MiB | 提供更高的安全能力、标准的图形框架、视频编解码的多媒体能力。可支撑的产品如智能家居领域的IP Camera、电子猫眼、路由器以及智慧出行域的行车记录仪等。 | +| 标准系统(standard system) | 应用处理器(例如Arm Cortex-A的设备) | 128MiB | 提供增强的交互能力、3D GPU以及硬件合成能力、更多控件以及动效更丰富的图形能力、完整的应用框架。可支撑的产品如高端的冰箱显示屏。 | + + +本文通过介绍OpenHarmony系统的开发环境搭建、编译、烧录、调测以及运行“Hello World”等,引导开发者快速熟悉OpenHarmony设备开发的基本流程和方法。 + + +## 操作方式 + +考虑到开发者的开发习惯,OpenHarmony为开发者提供了以下两种入门指导: + + **表2** 入门方式 + +| 方式 | 工具 | 特点 | 适用人群 | +| -------- | -------- | -------- | -------- | +| [基于IDE入门](quickstart-ide-env--win.md) | IDE(DevEco Device Tool) | 完全采用IDE进行一站式开发,编译依赖工具的安装及编译、烧录、运行都通过IDE进行操作。
DevEco Device Tool采用Windows+Ubuntu混合开发环境:
- 在Windows上主要进行代码开发、代码调试、烧录等操作。
- 在Ubuntu环境实现源码编译。
DevEco Device Tool提供界面化的操作接口,可以为您提供更快捷的开发体验。 | - 不熟悉命令行操作的开发者
- 习惯界面化操作的开发者 | +| [基于命令行入门](quickstart-pkg-prepare.md) | 命令行工具包 | 通过命令行方式下载安装编译依赖工具,在Linux系统中进行编译时,相关操作通过命令实现;在Windows系统中使用开发板厂商提供的工具进行代码烧录。
命令行方式提供了简便统一的工具链安装方式。 | 习惯使用命令行操作的开发者 | + + +## 开发板 + +本文选取了如下三款典型开发板,用于介绍不同系统的开发过程,开发者可根据需要自行购买开发板。 + + **表3** 开发板-系统对应关系 + +| 名称 | 适配系统 | 简介 | +| -------- | -------- | -------- | +| Hi3861 WLAN模组 | 轻量 | [Hi3861开发板介绍](quickstart-appendix-hi3861.md) | +| Hi3516DV300 | 小型 | [Hi3516开发板介绍](quickstart-appendix-hi3516.md) | +| RK3568 | 标准 | [RK3568开发板介绍](quickstart-appendix-rk3568.md) | + + +## 开发流程 + +设备开发快速入门流程如下图所示。 + + **图1** 快速入门开发流程 + +![quickstart-overview-process](figures/quickstart-overview-process.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-building.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-build.md similarity index 60% rename from zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-building.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3516-build.md index d8e832cb33df4d07a5551cfe806231c484bceff5..1ad02e122bdf98ed1b2ad896993c96746eb115f3 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-building.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-build.md @@ -1,32 +1,49 @@ # 编译 -OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-lite-reference.md)。 +OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-pkg-common-build.md#使用buildsh脚本编译源码)。 -请进入源码根目录,执行如下命令进行编译: +想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指南](../subsystems/subsys-build-all.md)。 + + +## 前提条件 + +- 已正确[安装库和工具集](quickstart-pkg-install_package.md)。 + +- 已正确[安装编译工具](quickstart-pkg-install_tool.md)。 + +- “Hello World”程序已编写完成。 + +- 可正常登录Ubuntu环境。 +## 操作步骤 + +请进入源码根目录,执行如下命令进行编译: + 1. 设置编译路径。 - + ``` hb set ``` 2. 选择当前路径。 - + ``` . ``` 3. 在hisilicon下选择ipcamera_hispark_taurus并回车。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > + > 同样的开发板在适配不同的场景时,要采用的编译形态不同(即此处要选择的product不同),请参考[编译形态整体说明](quickstart-appendix-compiledform.md)。 **图1** Hi3516编译设置图例   - - ![zh-cn_image_0000001317198053](figures/zh-cn_image_0000001317198053.png) + + ![quickstart-lite-3516-build](figures/quickstart-lite-3516-build.png) 4. 执行编译。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** > - 单独编译一个部件(例如hello),可使用“hb build -T _目标名称_”进行编译。 > @@ -36,13 +53,12 @@ OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build. > > 此处以完整编译整个产品为例进行说明。 - + ``` hb build -f ``` 5. 编译结束后,出现“build success”字样,则证明构建成功。 - > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** > 烧录相关文件获取路径: > diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-hitool.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-burn.md similarity index 68% rename from zh-cn/device-dev/quick-start/quickstart-lite-hitool.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3516-burn.md index 42eab5ebde54416cdf603d25f599d46c7f8e47b3..130f18d0703c39bdd6e1bffbc26161d2f9c0faef 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-hitool.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-burn.md @@ -1,7 +1,7 @@ -# 使用HiTool烧录代码 +# 烧录 -针对Hi3516DV300开发板,除了DevEco Device Tool外,还可以使用HiTool进行烧录。 +针对Hi3516DV300开发板,除了DevEco Device Tool(操作方法请参考[烧录](quickstart-ide-3516-burn.md))外,还可以使用HiTool进行烧录。 ## 前提条件 @@ -10,7 +10,7 @@ - 客户端(操作平台,例如Windows系统)已下载并安装[HiTool工具](http://www.hihope.org/download/download.aspx)。 -- 客户端(操作平台,例如Windows系统)已安装USB驱动,可参考[Hi3516DV300/Hi3518EV300开发板USB驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)。 +- 客户端(操作平台,例如Windows系统)已安装USB驱动,可参考[Hi3516DV300开发板USB驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fusb_driver-0000001058690393)。 - 客户端已安装串口终端工具(例如IPOP)。 @@ -20,15 +20,12 @@ ## 操作步骤 1. 准备烧录相关文件。 - - 1. 在客户端新建用于保存烧录文件的文件夹,例如D:\liteos或D:\linux。 - + 1. 在客户端新建用于保存烧录文件的文件夹,例如“D:\liteos”或“D:\linux”。 2. 将烧录所需烧写配置文件和启动引导文件保存到新建的文件夹中。 - - - 其小型系统(LiteOS)烧写配置文件为L1_3516_liteos.xml,其启动引导文件为“[u-boot-hi3516dv300.bin](https://gitee.com/openharmony/device_board_hisilicon/tree/master/hispark_taurus/uboot/out/boot)”。 + - 其L1_LiteOS烧写配置文件为L1_3516_liteos.xml,其启动引导文件为“[u-boot-hi3516dv300.bin](https://gitee.com/openharmony/device_board_hisilicon/tree/master/hispark_taurus/uboot/out/boot)”。 其中L1_3516_liteos.xml文件需要开发者自行准备,模板如下: - + ``` @@ -38,10 +35,10 @@ ``` - - 其小型系统(Linux)烧写配置文件为L1_3516_linux.xml,其启动引导文件为“[u-boot-hi3516dv300.bin](https://gitee.com/openharmony/device_board_hisilicon/tree/master/hispark_taurus/uboot/out/boot)”。 + - 其L1_Linux烧写配置文件为L1_3516_linux.xml,其启动引导文件为“[u-boot-hi3516dv300.bin](https://gitee.com/openharmony/device_board_hisilicon/tree/master/hispark_taurus/uboot/out/boot)”。 其中L1_3516_linux.xml文件需要开发者自行准备,模板如下: - + ``` @@ -53,52 +50,43 @@ ``` 3. 将编译完成的源码包下载至客户端并解压,将烧录相关文件拷贝至步骤1中新建的文件夹。 + + 针对Hi3516开发板(轻量级系统使用LiteOS内核或Linux内核根据业务实际需要选择): - 针对Hi3516开发板(小型系统使用LiteOS内核或Linux内核根据业务实际需要选择): - - - 其小型系统(LiteOS)烧写所需文件为:OHOS_Image.bin、rootfs_vfat.img、userfs_vfat.img - - 其小型系统(Linux)烧写所需文件为:uImage_hi3516dv300_smp、rootfs_ext4.img、userfs_ext4.img、userdata_ext4.img + - 其L1_LiteOS烧写所需文件为:OHOS_Image.bin、rootfs_vfat.img、userfs_vfat.img + - 其L1_Linux烧写所需文件为:uImage_hi3516dv300_smp、rootfs_ext4.img、userfs_ext4.img、userdata_ext4.img 2. 使用HiTool烧录。 - 1. 打开HiTool。 - 2. 设置HiTool参数。 - - 传输方式选择USB口,烧写方式选择烧写eMMC(单板的存储介质为eMMC)。 - + + 传输方式选择USB口,烧写方式选择烧写eMMC(单板的存储介质为eMMC)。 3. 单击浏览在步骤1创建的文件夹中选择烧写配置文件(例如L1_3516_linux.xml)。 - - ![image](figures/zh-cn_image_0000001249937195.png) - + + ![zh-cn_image_0000001249937195](figures/zh-cn_image_0000001249937195.png) 4. 单击烧写后,按住开发板上串口旁的按钮(Update键),并拔插USB线(上下电)。 + + 烧录开始后,可以在HiTool工具下方的控制台区域观察到烧录过程中的打印信息。 - 烧录开始后,可以在HiTool工具下方的控制台区域观察到烧录过程中的打印信息。 - - 烧录完成后,HiTool弹出提示框显示烧写成功。 - + 烧录完成后,HiTool弹出提示框显示烧写成功。 5. 单击确定。 3. 导入启动参数。 - 1. 使用终端工具打开串口。 - 2. 拔插开发板电源使其重启,3s内在串口终端输入回车。 - - 终端界面中出现hisilicon \#表示已连接开发板串口。 - + + 终端界面中出现“hisilicon \#”表示已连接开发板串口。 3. 在串口终端拷贝如下启动参数后,按回车完成配置。 - - - 其小型系统(LiteOS)对应的启动参数为: - + - 其L1_LiteOS对应的启动参数为: + ``` setenv bootcmd "mmc read 0x0 0x80000000 0x800 0x4800;go 0x80000000"; setenv bootargs "console=ttyAMA0,115200n8 root=emmc fstype=vfat rootaddr=10M rootsize=50M rw"; saveenv - reset + sa;reset ``` - - 其小型系统(Linux)对应的启动参数为: - + - 其L1_Linux对应的启动参数为: + ``` setenv bootargs "mem=128M console=ttyAMA0,115200 root=/dev/mmcblk0p3 rw rootfstype=ext4 rootwait blkdevparts=mmcblk0:1M(boot),9M(kernel),50M(rootfs),50M(userfs),1024M(userdata)" setenv bootcmd "mmc read 0x0 0x82000000 0x800 0x4800; mw 0x10FF0044 0x0600;mw 0x120D2010 0x00000000;mw 0x120D2400 0x000000ff;mw 0x120D2010 0x00000000; bootm 0x82000000" diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-helloworld.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-helloworld.md similarity index 78% rename from zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-helloworld.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3516-helloworld.md index a8273bfc8b33dfdb950434eef48c0f2f3c1121af..996a536b881a24f41c9f00c255b5c4b82a470df0 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-helloworld.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-helloworld.md @@ -9,7 +9,7 @@ 示例完整目录如下: - + ``` applications/sample/hello │── BUILD.gn @@ -20,13 +20,13 @@ applications/sample/hello ## 开发步骤 -请在源码目录中通过以下步骤创建“Hello World”应用程序: +请在源码目录中通过以下步骤创建“Hello World”应用程序。 1. 新建目录及源码。 + + 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改OHOS为World)。当前应用程序可支持标准C及C++的代码开发。 - 新建**applications/sample/hello/src/helloworld.c**目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改OHOS为World)。当前应用程序可支持标准C及C++的代码开发。 - - + ``` #include @@ -41,10 +41,10 @@ applications/sample/hello ``` 2. 新建编译组织文件。 + + 新建applications/sample/hello/BUILD.gn文件,内容如下所示: - 新建**applications/sample/hello/BUILD.gn**文件,内容如下所示: - - + ``` import("//build/lite/config/component/lite_component.gni") lite_component("hello-OHOS") { @@ -57,10 +57,10 @@ applications/sample/hello ``` 3. 添加新组件。 + + 修改文件build/lite/components/communication.json,添加组件hello_world_app的配置,如下所示为**communication.json**文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**build/lite/components/communication.json**,添加组件hello_world_app的配置,如下所示为communication.json文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - + ``` { "components": [ @@ -120,10 +120,10 @@ applications/sample/hello ``` 4. 修改单板配置文件。 + + 修改文件vendor/hisilicon/hispark_taurus/config.json,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**vendor/hisilicon/hispark_taurus/config.json**,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - + ``` { "subsystem": "applications", diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-3516-running.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-running.md new file mode 100644 index 0000000000000000000000000000000000000000..612cc2eaee9133a711590e9b0dc0c1ef75ec41a0 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3516-running.md @@ -0,0 +1,32 @@ +# 运行 + + +系统启动成功后,取源码out目录下的helloworld可执行文件放入系统的bin目录,通过以下步骤运行“Hello World”。 + + +## 操作步骤 + +1. 在启动界面进入bin目录。 + + ``` + cd bin + ``` + +2. 进入bin目录后可以看到helloworld文件,通过以下命令运行helloworld程序。 + + ``` + ./helloworld + ``` + + 界面打印“Hello World!”,程序运行成功。 + + ![quickstart-pkg-3516-running](figures/quickstart-pkg-3516-running.png) + + +## 下一步学习 + +恭喜您,已完成Hi3516的快速上手!建议您下一步进学习 。可参考: + +- [屏幕和摄像头控制](../guide/device-camera-control-overview.md) + +- [视觉应用开发](../guide/device-camera-visual-overview.md) diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-build.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-build.md similarity index 55% rename from zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-build.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3568-build.md index 88eeac16d99dd0862961af1891b50d7567206854..99fa901251cf78df2941076ccdd7dee354cd6c8a 100644 --- a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-build.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-build.md @@ -1,40 +1,58 @@ # 编译 -OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-standard-reference.md)。 +OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-pkg-common-build.md#使用buildsh脚本编译源码)。 -在Ubuntu环境下进入源码根目录,执行如下命令进行编译: +想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指南](../subsystems/subsys-build-all.md)。 + + +## 前提条件 + +- 已正确[安装库和工具集](quickstart-pkg-install_package.md)。 + +- 已正确[安装编译工具](quickstart-pkg-install_tool.md)。 + +- “Hello World”程序已编写完成。 + +- 可正常登录Ubuntu环境。 +## 操作步骤 + +在Ubuntu环境下进入源码根目录,执行如下命令进行编译: + 1. 设置编译路径。 - + ``` hb set ``` 2. 选择当前路径。 - + ``` . ``` 3. 在hihope下选择rk3568并回车。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > + > 同样的开发板在适配不同的场景时,要采用的编译形态不同(即此处要选择的product不同),请参考[编译形态整体说明](quickstart-appendix-compiledform.md)。 **图1** RK3568编译设置图例   - - ![zh-cn_image_0000001268598074](figures/zh-cn_image_0000001268598074.png) + + ![quickstart-standard-rk3568-build](figures/quickstart-standard-rk3568-build.png) 4. 默认情况下,编译的是32位系统,若不需要调整,则跳过此步骤。 + 如需编译为64位系统,请执行如下命令: - + ``` hb build --target-cpu arm64 ``` 5. 执行编译。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** > - 单独编译一个部件(例如hello),可使用“hb build -T _目标名称_”进行编译。 > @@ -44,11 +62,11 @@ OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build. > > 此处以完整编译整个产品为例进行说明。 - + ``` hb build -f ``` -6. 编译结束后,出现“rk3568 build success”字样,说明构建成功。 +6. 编译结束后,出现“rk3568 build success”字样,则证明构建成功。 > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** > 编译结果文件及编译日志文件获取路径:out/rk3568。 diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-3568-burn.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-burn.md new file mode 100644 index 0000000000000000000000000000000000000000..8bb06bf8507d5f1b387157513eec9f49ea495795 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-burn.md @@ -0,0 +1,16 @@ +# 烧录 + + +针对RK3568开发板,除了DevEco Device Tool外(操作方法请参考[烧录](quickstart-ide-3568-burn.md)),还可以使用RKDevTool进行烧录。 + + +## 前提条件 + +- 开发板相关源码已编译完成,已形成烧录文件。 + +- 客户端(操作平台,例如Windows系统)已下载并安装[RKDevTool工具和USB驱动](https://gitee.com/hihope_iot/docs/tree/master/HiHope_DAYU200/%E7%83%A7%E5%86%99%E5%B7%A5%E5%85%B7%E5%8F%8A%E6%8C%87%E5%8D%97/windows)。 + + +## 操作步骤 + +使用RKDevTool的详细操作方法,请参考《[HiHope_DAYU200烧录指导](https://gitee.com/hihope_iot/docs/blob/master/HiHope_DAYU200/docs/%E7%83%A7%E5%BD%95%E6%8C%87%E5%AF%BC%E6%96%87%E6%A1%A3.md)》。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-create.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-helloworld.md similarity index 98% rename from zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-create.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3568-helloworld.md index 1a93c4a0abf6b21548d32ec2b48ac6bf89f1a042..7eae011a60cd1ed8d11ec6215fc8666b6ca88dae 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-standard-running-rk3568-create.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-helloworld.md @@ -8,7 +8,7 @@ 示例完整目录如下。 - + ``` applications/sample/hello │── BUILD.gn @@ -27,13 +27,13 @@ vendor/hihope ## 开发步骤 -请在源码目录中通过以下步骤创建“Hello World”应用程序: +请在源码目录中通过以下步骤创建“Hello World”应用程序。 1. 创建目录,编写业务代码。 - + 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改World为OHOS)。其中helloworld.h包含字符串打印函数HelloPrint的声明。当前应用程序可支持标准C及C++的代码开发。 - + ``` #include #include "helloworld.h" @@ -54,7 +54,7 @@ vendor/hihope 再添加头文件applications/sample/hello/include/helloworld.h,代码如下所示。 - + ``` #ifndef HELLOWORLD_H #define HELLOWORLD_H @@ -75,9 +75,8 @@ vendor/hihope ``` 2. 新建编译组织文件。 - 1. 新建applications/sample/hello/BUILD.gn文件,内容如下所示: - + ``` import("//build/ohos.gni") # 导入编译模板 ohos_executable("helloworld") { # 可执行模块 @@ -98,7 +97,7 @@ vendor/hihope } ``` 2. 新建applications/sample/hello/bundle.json文件,添加sample部件描述,内容如下所示。 - + ``` { "name": "@ohos/hello", @@ -137,10 +136,10 @@ vendor/hihope bundle.json文件包含两个部分,第一部分描述该部件所属子系统的信息,第二部分component则定义该部件构建相关配置。添加的时候需要指明该部件包含的模块sub_component,假如有提供给其它部件的接口,需要在inner_kits中说明,假如有测试用例,需要在test中说明,inner_kits与test没有也可以不添加。 3. 修改子系统配置文件。 - + 在build/subsystem_config.json中添加新建的子系统的配置。 - + ``` "sample": { "path": "applications/sample/hello", @@ -149,7 +148,7 @@ vendor/hihope ``` 4. 修改产品配置文件。 - + 在vendor/hihope/rk3568/config.json中添加对应的hello部件,直接添加到原有部件后即可。 ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-3568-running.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-running.md new file mode 100644 index 0000000000000000000000000000000000000000..13013f95b8041f5a1f2e0bc20c97b47bcb40afa8 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3568-running.md @@ -0,0 +1,21 @@ +# 运行 + + +## 启动系统 + +烧录完成重启开发板后,系统将会自动启动。开发板附带的屏幕呈现以下界面,表明系统已运行成功。 + + **图1** 系统启动效果图   + +![quickstart-pkg-3568-running-restart](figures/quickstart-pkg-3568-running-restart.png) + + +## 运行“Hello World” + +1. 设备启动后打开串口工具(以putty为例),波特率设置为1500000,连接设备。 + + ![rk3568-run-configuration](figures/rk3568-run-configuration.png) + +2. 打开串口后,在任意目录(以设备根目录为例)下输入命令helloworld后回车,界面打印“Hello World!”,程序运行成功。 + + ![helloworld](figures/helloworld.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-building.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-build.md similarity index 55% rename from zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-building.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3861-build.md index 34efde6b4e3910ffc15f21e1656b2362f1d29abb..e5fb2573c49559e797313f93cfbe486387e557c3 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-building.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-build.md @@ -1,32 +1,51 @@ # 编译 -OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-lite-reference.md)。 +OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-pkg-common-build.md#使用buildsh脚本编译源码)。 -在Ubuntu环境下进入源码根目录,执行如下命令进行编译: +想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指南](../subsystems/subsys-build-all.md)。 + + +## 前提条件 + +- 已正确[安装库和工具集](quickstart-pkg-install_package.md)。 + +- 已正确[安装编译工具](quickstart-pkg-install_tool.md)。 + +- 已正确[安装Hi3861特有工具](quickstart-pkg-3861-tool.md)。 + +- “Hello World”程序已编写完成。 +- 可正常登录Ubuntu环境。 + + +## 操作步骤 + +在Ubuntu环境下进入源码根目录,执行如下命令进行编译: 1. 设置编译路径。 - + ``` hb set ``` 2. 选择当前路径。 - + ``` . ``` 3. 在hisilicon下选择wifiiot_hispark_pegasus并回车。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > + > 同样的开发板在适配不同的场景时,要采用的编译形态不同(即此处要选择的product不同),请参考[编译形态整体说明](quickstart-appendix-compiledform.md)。 **图1** Hi3861编译设置图例   - ![zh-cn_image_0000001317078157](figures/zh-cn_image_0000001317078157.png) + ![quickstart-lite-3861-build](figures/quickstart-lite-3861-build.png) 4. 执行编译。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** > - 单独编译一个部件(例如hello),可使用“hb build -T _目标名称_”进行编译。 > @@ -36,12 +55,11 @@ OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build. > > 此处以完整编译整个产品为例进行说明。 - + ``` hb build -f ``` 5. 编译结束后,出现“build success”字样,则证明构建成功。 - > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** > 编译结果文件及编译日志获取路径:out/hispark_pegasus/wifiiot_hispark_pegasus。 diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-3861-burn.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-burn.md new file mode 100644 index 0000000000000000000000000000000000000000..878fdda09e59b99a1fea851eb317d4476ccff61b --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-burn.md @@ -0,0 +1,58 @@ +# 烧录 + + +针对Hi3861开发板,除了DevEco Device Tool(操作方法请参考[烧录](quickstart-ide-3861-burn.md))外,还可以使用Hiburn进行烧录。 + + +## 前提条件 + +- 开发板相关源码已编译完成,已形成烧录文件。 + +- 客户端(操作平台,例如Windows系统)已下载并安装[HiBurn工具](https://gitee.com/hihope_iot/docs/tree/master/HiSpark_WiFi_IoT/Software/tools)。 + +- 客户端(操作平台,例如Windows系统)已安装USB驱动,可参考[USB驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/hi3861-drivers-0000001058153433)。 + +- 客户端已安装串口终端工具(例如IPOP)。 + +- 使用USB线缆连接客户端与开发板。 + + +## 操作步骤 + +1. 准备烧录相关文件。 + 1. 在客户端新建用于保存烧录文件的文件夹,例如“D:\hi3861”。 + 2. 将编译完成的源码包下载至客户端并解压,将烧录相关文件拷贝至步骤1中新建的文件夹。 + 烧写所需文件为:Hi3861_wifiiot_app_allinone.bin、Hi3861_loader_signed.bin + +2. 使用HiBurn烧录。 + 1. 打开HiBurn。 + 2. 设置HiBurn参数,根据实际情况选择COM口,勾选“Select all”和“Auto burn”。 + + **图1** HiBurn烧写界面参数设置   + + ![quickstart-pkg-3861-burn-hiburn](figures/quickstart-pkg-3861-burn-hiburn.png) + + 3. 单击Select file在步骤1创建的文件夹中选择烧写文件Hi3861_wifiiot_app_allinone.bin。 + + **图2** hiburn文件选择完成   + + ![quickstart-pkg-3861-burn-selectfile](figures/quickstart-pkg-3861-burn-selectfile.png) + + 4. 确保COM口选择正确,然后单击Connect后,按一下开发板上串口旁的按钮(Reset键)开始烧写。 + 烧录开始后,可以在HiBurn工具下方的控制台区域观察到烧录过程中的打印信息。 + + 烧录完成后,控制台区域会打印提示"Execution Successful"。 + + **图3** 单击"Connect"后   + + ![quickstart-pkg-3861-burn-connect](figures/quickstart-pkg-3861-burn-connect.png) + + **图4** 单击开发板重置按键后,烧写中   + + ![quickstart-pkg-3861-burn-burning](figures/quickstart-pkg-3861-burn-burning.png) + + **图5** 烧写完成   + + ![quickstart-pkg-3861-burn-end](figures/quickstart-pkg-3861-burn-end.png) + + 5. 单击Disconnect断开连接。 diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-helloworld.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-helloworld.md similarity index 86% rename from zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-helloworld.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3861-helloworld.md index 9a511787ec586b345bebbd4c6b8f93852e4b5122..1c9bee175ef535d7f6355eac402fb01d8d51cd4c 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-helloworld.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-helloworld.md @@ -5,12 +5,12 @@ 1. 确定目录结构。 - + 开发者编写业务时,务必先在./applications/sample/wifi-iot/app路径下新建一个目录(或一套目录结构),用于存放业务源码文件。 例如:在app下新增业务my_first_app,其中hello_world.c为业务代码,BUILD.gn为编译脚本,具体规划目录结构如下: - + ``` . └── applications @@ -23,9 +23,9 @@ ``` 2. 编写业务代码。 - + 新建./applications/sample/wifi-iot/app/my_first_app下的hello_world.c文件,在hello_world.c中新建业务入口函数HelloWorld,并实现业务逻辑。并在代码最下方,使用OpenHarmony启动恢复模块接口SYS_RUN()启动业务。(SYS_RUN定义在ohos_init.h文件中) - + ``` #include #include "ohos_init.h" @@ -39,12 +39,12 @@ ``` 3. 编写用于将业务构建成静态库的BUILD.gn文件。 - + 新建./applications/sample/wifi-iot/app/my_first_app下的BUILD.gn文件,并完成如下配置。 如步骤1所述,BUILD.gn文件由三部分内容(目标、源文件、头文件路径)构成,需由开发者完成填写。 - + ``` static_library("myapp") { sources = [ @@ -61,10 +61,10 @@ - include_dirs中指定source所需要依赖的.h文件路径。 4. 添加新组件。 + + 修改文件build/lite/components/communication.json,添加组件hello_world_app的配置,如下所示为communication.json文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**build/lite/components/communication.json**,添加组件hello_world_app的配置,如下所示为communication.json文件片段,"\#\#start\#\#"和"\#\#end\#\#"之间为新增配置("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - + ``` { "components": [ @@ -124,10 +124,10 @@ ``` 5. 修改单板配置文件。 + + 修改文件vendor/hisilicon/hispark_pegasus/config.json,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - 修改文件**vendor/hisilicon/hispark_pegasus/config.json**,新增hello_world_app组件的条目,如下所示代码片段为applications子系统配置,"\#\#start\#\#"和"\#\#end\#\#"之间为新增条目("\#\#start\#\#"和"\#\#end\#\#"仅用来标识位置,添加完配置后删除这两行): - - + ``` { "subsystem": "applications", diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-3861-running.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-running.md new file mode 100644 index 0000000000000000000000000000000000000000..884893f1412e1be2f966bea769b13636f00a322e --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-running.md @@ -0,0 +1,120 @@ +# 运行 + + +## 联网配置 + +由于Hi3861为WLAN模组,您可以在版本编译及烧录后,通过如下操作,使开发板实现联网功能。 + +1. 保持Windows工作台和Hi3861 WLAN模组的连接状态,确认串口终端显示正常。 + +2. 复位Hi3861 WLAN模组,终端界面显示“ready to OS start”,则启动成功。 + + **图1** Hi3861 WLAN模组复位成功示意图   + + ![quickstart-pkg-3861-running-restart](figures/quickstart-pkg-3861-running-restart.png) + +3. 依次执行如下AT命令,启动STA模式,连接指定AP热点,并开启DHCP功能。 + + ``` + AT+STARTSTA # 启动STA模式 + AT+SCAN # 扫描周边AP + AT+SCANRESULT # 显示扫描结果 + AT+CONN="SSID",,2,"PASSWORD" # 连接指定AP,其中SSID/PASSWORD为待连接的热点名称和密码 + AT+STASTAT # 查看连接结果 + AT+DHCP=wlan0,1 # 通过DHCP向AP请求wlan0的IP地址 + ``` + +4. 查看Hi3861 WLAN模组与网关联通是否正常,如下图所示。 + + ``` + AT+IFCFG # 查看模组接口IP + AT+PING=X.X.X.X # 检查模组与网关的联通性,其中X.X.X.X需替换为实际的网关地址 + ``` + + **图2** Hi3861 WLAN模组联网成功示意图   + ![quickstart-pkg-3861-running-success](figures/quickstart-pkg-3861-running-success.png) + + +## 调测验证 + +完成烧录及联网之后,用户可根据需要进行调试验证。目前调试验证的方法有以下两种,开发者可以根据具体业务情况选择。 + +1. 通过printf打印日志 + +2. 通过asm文件定位panic问题 + +由于本示例业务简单,采用printf打印日志的调试方式即可。下方将介绍这两种调试手段的使用方法。 + + +### printf打印 + +代码中增加printf维测,信息会直接打印到串口上。开发者可在业务关键路径或业务异常位置增加日志打印,如下所示: + + +``` +void HelloWorld(void) +{ + printf("[DEMO] Hello world.\n"); +} +``` + + +### 根据asm文件进行问题定位 + + 系统异常退出时,会在串口上打印异常退出原因调用栈信息,如下文所示。通过解析异常栈信息可以定位异常位置。 + +``` +=======KERNEL PANIC======= +**Call Stack* +Call Stack 0 -- 4860d8 addr:f784c +Call Stack 1 -- 47b2b2 addr:f788c +Call Stack 2 -- 3e562c addr:f789c +Call Stack 3 -- 4101de addr:f78ac +Call Stack 4 -- 3e5f32 addr:f78cc +Call Stack 5 -- 3f78c0 addr:f78ec +Call Stack 6 -- 3f5e24 addr:f78fc +Call Stack end*** +``` + +为解析上述调用栈信息,需要使用到Hi3861_wifiiot_app.asm文件,该文件记录了代码中函数在Flash上的符号地址以及反汇编信息。asm文件会随版本打包一同构建输出,存放在./out/wifiiot/路径下。 + +1. 将调用栈CallStack信息保存到txt文档中,以便于编辑。(可选) + +2. 打开asm文件,并搜索CallStack中的地址,列出对应的函数名信息。通常只需找出前几个栈信息对应的函数,就可明确异常代码方向。 + + ``` + Call Stack 0 -- 4860d8 addr:f784c -- WadRecvCB + Call Stack 1 -- 47b2b2 addr:f788c -- wal_sdp_process_rx_data + Call Stack 2 -- 3e562c addr:f789c + Call Stack 3 -- 4101de addr:f78ac + Call Stack 4 -- 3e5f32 addr:f78cc + Call Stack 5 -- 3f78c0 addr:f78ec + Call Stack 6 -- 3f5e24 addr:f78fc + ``` + +3. 根据以上调用栈信息,可以定位WadRecvCB函数中出现了异常。 + + ![hi3861-test](figures/hi3861-test.png) + +4. 完成代码排查及修改。 + + +## 运行结果 + +示例代码编译、烧录、运行、调测后,重启开发板后将自动在界面输出如下结果: + + +``` +ready to OS start +FileSystem mount ok. +wifi init success! +[DEMO] Hello world. +``` + +下一步学习 + +恭喜,您已完成Hi3861 WLAN模组快速上手!建议您下一步进入的学习 。可参考: + +- [LED外设控制](../guide/device-wlan-led-control.md) + +- [集成三方SDK](../guide/device-wlan-sdk.md) diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-setting.md b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-tool.md similarity index 93% rename from zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-setting.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-3861-tool.md index a662874ab7a5e86d68a66a189f38ea5621dab041..88b666c840e86275e328d6661b704b722a15b64b 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-setting.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-3861-tool.md @@ -1,21 +1,10 @@ -# 安装Hi3861开发板环境 +# 安装Hi3861开发板特有环境 -## Hi3861工具要求 +除上述[安装库和工具集](quickstart-pkg-install_package.md)和[安装编译工具](quickstart-pkg-install_tool.md)外,针对Hi3861开发板还需要安装特定的编译工具。 -### 硬件要求 - -- Linux工作台 - -- Hi3861 WLAN模组 - -- USB Type-C线(Linux工作台通过USB与Hi3861开发板连接) - - -### 软件要求 - -Hi3861 WLAN模组需要的工具如下表所示。 +## 工具要求 **表1** Hi3861 WLAN模组需要安装的编译工具 @@ -26,40 +15,42 @@ Hi3861 WLAN模组需要的工具如下表所示。 | gcc riscv32 | 编译构建工具 | -## 安装编译工具 +## 操作步骤 -编译Hi3861 WLAN模组需要一些特定的编译工具,在Ubuntu下通过以下步骤安装。 +相关操作在Ubuntu环境下进行。 ### 安装Scons 1. 运行如下命令,安装SCons安装包。 - + ``` python3 -m pip install scons ``` 2. 运行如下命令,查看是否安装成功。如果安装成功,查询结果下图所示。 - + ``` scons -v ``` **图1** SCons安装成功界面,版本要求3.0.4以上   - ![zh-cn_image_0000001271234749](figures/zh-cn_image_0000001271234749.png) + + ![hi3861-scons-install-success](figures/hi3861-scons-install-success.png) ### 安装python模块 1. 运行如下命令,安装python模块setuptools。 - + ``` pip3 install setuptools ``` 2. 安装GUI menuconfig工具(Kconfiglib),建议安装Kconfiglib 13.2.0+版本,任选如下一种方式。 + - **命令行方式:** - + ``` sudo pip3 install kconfiglib ``` @@ -67,15 +58,16 @@ Hi3861 WLAN模组需要的工具如下表所示。 1. 下载.whl文件(例如:kconfiglib-13.2.0-py2.py3-none-any.whl)。 下载路径:“[https://pypi.org/project/kconfiglib#files](https://pypi.org/project/kconfiglib#files)” 2. 运行如下命令,安装.whl文件。 - + ``` sudo pip3 install kconfiglib-13.2.0-py2.py3-none-any.whl ``` 3. 安装pycryptodome,任选如下一种方式。 - 安装升级文件签名依赖的Python组件包,包括:pycryptodome、six、ecdsa。安装ecdsa依赖six,请先安装six,再安装ecdsa。 + + 安装升级文件签名依赖的Python组件包,包括:pycryptodome、six、ecdsa。安装ecdsa依赖six,请先安装six,再安装ecdsa。 - **命令行方式:** - + ``` sudo pip3 install pycryptodome ``` @@ -84,14 +76,14 @@ Hi3861 WLAN模组需要的工具如下表所示。 1. 下载.whl文件(例如:pycryptodome-3.9.9-cp38-cp38-manylinux1_x86_64.whl)。 下载路径:“[https://pypi.org/project/pycryptodome/#files](https://pypi.org/project/pycryptodome/#files)”。 2. 运行如下命令,安装.whl文件。 - + ``` sudo pip3 install pycryptodome-3.9.9-cp38-cp38-manylinux1_x86_64.whl ``` 4. 安装six,任选如下一种方式。 - **命令行方式:** - + ``` sudo pip3 install six --upgrade --ignore-installed six ``` @@ -99,14 +91,14 @@ Hi3861 WLAN模组需要的工具如下表所示。 1. 下载.whl文件(例如:six-1.12.0-py2.py3-none-any.whl)。 下载路径:“[https://pypi.org/project/six/#files](https://pypi.org/project/six/#files)” 2. 运行如下命令,安装.whl文件。 - + ``` sudo pip3 install six-1.12.0-py2.py3-none-any.whl ``` 5. 安装ecdsa,任选如下一种方式。 - **命令行方式:** - + ``` sudo pip3 install ecdsa ``` @@ -114,7 +106,7 @@ Hi3861 WLAN模组需要的工具如下表所示。 1. 下载.whl文件(例如:ecdsa-0.14.1-py2.py3-none-any.whl)。 下载路径:“[https://pypi.org/project/ecdsa/#files](https://pypi.org/project/ecdsa/#files)” 2. 运行如下命令,安装.whl文件。 - + ``` sudo pip3 install ecdsa-0.14.1-py2.py3-none-any.whl ``` @@ -130,31 +122,31 @@ Hi3861 WLAN模组需要的工具如下表所示。 1. 打开Linux编译服务器终端。 2. 下载riscv-gnu-toolchain交叉编译工具链。 - + ``` git clone --recursive https://gitee.com/mirrors/riscv-gnu-toolchain.git ``` 3. 打开文件夹riscv-gnu-toolchain,先删除空文件夹,以防止下载newlib,binutils,gcc时冲突。 - + ``` cd riscv-gnu-toolchain && rm -rf riscv-newlib && rm -rf riscv-binutils && rm -rf riscv-gcc ``` 4. 下载riscv-newlib-3.0.0。 - + ``` git clone -b riscv-newlib-3.0.0 https://github.com/riscv/riscv-newlib.git ``` 5. 下载riscv-binutils-2.31.1。 - + ``` git clone -b riscv-binutils-2.31.1 https://github.com/riscv/riscv-binutils-gdb.git ``` 6. 下载riscv-gcc-7.3.0。 - + ``` git clone -b riscv-gcc-7.3.0 https://github.com/riscv/riscv-gcc ``` @@ -163,43 +155,43 @@ Hi3861 WLAN模组需要的工具如下表所示。 访问gcc官方补丁链接[89411](https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=026216a753ef0a757a9e368a59fa667ea422cf09;hp=2a23a1c39fb33df0277abd4486a3da64ae5e62c2),[86724](https://gcc.gnu.org/git/?p=gcc.git;a=blobdiff;f=gcc/graphite.h;h=be0a22b38942850d88feb159603bb846a8607539;hp=4e0e58c60ab83f1b8acf576e83330466775fac17;hb=b1761565882ed6a171136c2c89e597bc4dd5b6bf;hpb=fbd5f023a03f9f60c6ae36133703af5a711842a3),按照补丁链接中要求的修改,手动将变更添加到对应的.c和.h文件中,注意由于patch版本与下载的gcc版本有所偏差,行数有可能对应不上,请自行查找patch中的关键字定位到对应行。 8. 下载[GMP 6.1.2](https://gmplib.org/download/gmp/gmp-6.1.2.tar.bz2),并解压安装。 - + ``` tar -xvf gmp-6.1.2.tar.bz2 && mkdir build_gmp && cd build_gmp && ../gmp-6.1.2/configure --prefix=/usr/local/gmp-6.1.2 --disable-shared --enable-cxx && make && make install ``` 9. 下载[mpfr-4.0.2 ](https://www.mpfr.org/mpfr-4.0.2/mpfr-4.0.2.tar.gz),并解压安装。 - + ``` tar -xvf mpfr-4.0.2.tar.gz && mkdir build_mpfr && cd build_mpfr && ../mpfr-4.0.2/configure --prefix=/usr/local/mpfr-4.0.2 --with-gmp=/usr/local/gmp-6.1.2 --disable-shared && make && make install ``` 10. 下载[mpc-1.1.0](https://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz) ,并解压安装。 - + ``` tar -xvf mpc-1.1.0.tar.gz && mkdir build_mpc && cd build_mpc && ../mpc-1.1.0/configure --prefix=/usr/local/mpc-1.1.0 --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-4.0.2 --disable-shared && make && make install ``` 11. 打开文件夹riscv-gnu-toolchain,新建工具链输出目录。 - + ``` cd /opt && mkdir gcc_riscv32 ``` 12. 编译binutils。 - + ``` mkdir build_binutils && cd build_binutils && ../riscv-binutils-gdb/configure --prefix=/opt/gcc_riscv32 --target=riscv32-unknown-elf --with-arch=rv32imc --with-abi=ilp32 --disable-__cxa_atexit --disable-libgomp --disable-libmudflap --enable-libssp --disable-libstdcxx-pch --disable-nls --disable-shared --disable-threads --disable-multilib --enable-poison-system-directories --enable-languages=c,c++ --with-gnu-as --with-gnu-ld --with-newlib --with-system-zlib CFLAGS="-fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wl,-z,relro,-z,now,-z,noexecstack -fPIE" CXXFLAGS="-fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wl,-z,relro,-z,now,-z,noexecstack -fPIE" CXXFLAGS_FOR_TARGET="-Os -mcmodel=medlow -Wall -fstack-protector-strong -Wl,-z,relro,-z,now,-z,noexecstack -Wtrampolines -fno-short-enums -fno-short-wchar" CFLAGS_FOR_TARGET="-Os -mcmodel=medlow -Wall -fstack-protector-strong -Wl,-z,relro,-z,now,-z,noexecstack -Wtrampolines -fno-short-enums -fno-short-wchar" --bindir=/opt/gcc_riscv32/bin --libexecdir=/opt/gcc_riscv32/riscv32 --libdir=/opt/gcc_riscv32 --includedir=/opt/gcc_riscv32 && make -j16 && make install && cd .. ``` 13. 编译newlib。 - + ``` mkdir build_newlib && cd build_newlib && ../riscv-newlib/configure --prefix=/opt/gcc_riscv32 --target=riscv32-unknown-elf --with-arch=rv32imc --with-abi=ilp32 --disable-__cxa_atexit --disable-libgomp --disable-libmudflap --enable-libssp --disable-libstdcxx-pch --disable-nls --disable-shared --disable-threads --disable-multilib --enable-poison-system-directories --enable-languages=c,c++ --with-gnu-as --with-gnu-ld --with-newlib --with-system-zlib CFLAGS="-fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wl,-z,relro,-z,now,-z,noexecstack -fPIE" CXXFLAGS="-fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wl,-z,relro,-z,now,-z,noexecstack -fPIE" \CXXFLAGS_FOR_TARGET="-Os -mcmodel=medlow -Wall -fstack-protector-strong -Wl,-z,relro,-z,now,-z,noexecstack -Wtrampolines -fno-short-enums -fno-short-wchar" CFLAGS_FOR_TARGET="-Os -mcmodel=medlow -Wall -fstack-protector-strong -Wl,-z,relro,-z,now,-z,noexecstack -Wtrampolines -fno-short-enums -fno-short-wchar" --bindir=/opt/gcc_riscv32/bin --libexecdir=/opt/gcc_riscv32 --libdir=/opt/gcc_riscv32 --includedir=/opt/gcc_riscv32 && make -j16 && make install && cd .. ``` 14. 编译gcc。 - + ``` mkdir build_gcc && cd build_gcc && ../riscv-gcc/configure --prefix=/opt/gcc_riscv32 --target=riscv32-unknown-elf --with-arch=rv32imc --with-abi=ilp32 --disable-__cxa_atexit --disable-libgomp --disable-libmudflap --enable-libssp --disable-libstdcxx-pch --disable-nls --disable-shared --disable-threads --disable-multilib --enable-poison-system-directories --enable-languages=c,c++ --with-gnu-as --with-gnu-ld --with-newlib --with-system-zlib CFLAGS="-fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wl,-z,relro,-z,now,-z,noexecstack -fPIE" CXXFLAGS="-fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wl,-z,relro,-z,now,-z,noexecstack -fPIE" LDFLAGS="-Wl,-z,relro,-z,now,-z,noexecstack" CXXFLAGS_FOR_TARGET="-Os -mcmodel=medlow -Wall -fstack-protector-strong -Wl,-z,relro,-z,now,-z,noexecstack -Wtrampolines -fno-short-enums -fno-short-wchar" CFLAGS_FOR_TARGET="-Os -mcmodel=medlow -Wall -fstack-protector-strong -Wl,-z,relro,-z,now,-z,noexecstack -Wtrampolines -fno-short-enums -fno-short-wchar" --with-headers="/opt/gcc-riscv32/riscv32-unknown-elf/include" --with-mpc=/usr/local/mpc-1.1.0 --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-4.0.2 && make -j16 && make install ``` @@ -212,27 +204,27 @@ Hi3861 WLAN模组需要的工具如下表所示。 > tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~ > ``` - - + +​ ``` vim ~/.bashrc ``` 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 - + ``` export PATH=~/gcc_riscv32/bin:$PATH ``` 16. 生效环境变量。 - + ``` source ~/.bashrc ``` 17. Shell命令行中输入如下命令,如果能正确显示编译器版本号,表明编译器安装成功。 - + ``` riscv32-unknown-elf-gcc -v ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-common-build.md b/zh-cn/device-dev/quick-start/quickstart-pkg-common-build.md new file mode 100644 index 0000000000000000000000000000000000000000..6319febfdea4701cb670b15db526ab7c3815e7ec --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-common-build.md @@ -0,0 +1,22 @@ +# 使用build.sh脚本编译源码 + + +1. 进入源码根目录,执行如下命令进行版本编译。 + + ``` + ./build.sh --product-name name --ccache + ``` + + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > _name_为产品名称,例如Hi3516DV300、rk3568等。 + +2. 检查编译结果。编译完成后,log中显示如下: + + ``` + post_process + =====build name successful. + ``` + + 编译所生成的文件都归档在out/{device_name}/目录下,结果镜像输出在out/{device_name}/packages/phone/images/ 目录下。 + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 其他模块化编译操作,可参见[编译构建指南](../subsystems/subsys-build-all.md)。 diff --git a/zh-cn/device-dev/quick-start/quickstart-lite-faq-compose.md b/zh-cn/device-dev/quick-start/quickstart-pkg-common-builderr.md similarity index 90% rename from zh-cn/device-dev/quick-start/quickstart-lite-faq-compose.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-common-builderr.md index ee73ec25bd0a8d61f0a204cc1e0f6e72ed5d1edb..e4a05c711efb25399630870e7b9cf59fdf7e7cc7 100644 --- a/zh-cn/device-dev/quick-start/quickstart-lite-faq-compose.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-common-builderr.md @@ -1,18 +1,21 @@ -# 编译异常 +# 编译异常处理 ## Linux编译服务器终端输入不识别的命令时提示“ImportError: No module named apt_pkg” - **现象描述** + Linux编译服务器终端输入不识别的命令时,提示"ImportError: No module named apt_pkg" - **可能原因** + python3 apt安装兼容性问题。 - **解决办法** + 执行如下命令重新安装python3-apt。 - + ``` sudo apt-get remove python3-apt sudo apt-get install python3-apt @@ -22,33 +25,38 @@ ## 编译构建过程中,提示找不到“python” - **现象描述** + 编译构建过程中出现以下错误: - + ``` -bash: /usr/bin/python: No such file or directory ``` - **可能原因**1 + 没有装python。 - **解决办法** + 请使用如下命令安装Python,下方以Python3.8为例。 - + ``` sudo apt-get install python3.8 ``` - **可能原因2** + usr/bin目录下没有python软链接 - ![zh-cn_image_0000001271354745](figures/zh-cn_image_0000001271354745.png) + ![faq-python-error](figures/faq-python-error.png) - **解决办法** + 请运行以下命令添加软链接: - + ``` # cd /usr/bin/ # which python3 @@ -58,22 +66,24 @@ 例: - ![zh-cn_image_0000001227114636](figures/zh-cn_image_0000001227114636.png) + ![faq-python-add-soft-link](figures/faq-python-add-soft-link.png) ## 编译构建过程中,提示找不到“python3” - **现象描述** - - ![zh-cn_image_0000001227114640](figures/zh-cn_image_0000001227114640.png) + + ![faq-python3-not-found](figures/faq-python3-not-found.png) - **可能原因** + 没有装python3。 - **解决办法** + 请使用如下命令安装Python3。 - + ``` sudo apt-get install python3.8 ``` @@ -82,14 +92,16 @@ ## 安装python3过程中,提示“configure: error: no acceptable C compiler found in $PATH” - **现象描述** + 安装python3过程中出现以下错误: - + ``` configure: error: no acceptable C compiler found in $PATH. See 'config.log' for more details ``` - **可能原因** + 环境中未安装“gcc”。 - **解决办法** @@ -100,14 +112,16 @@ ## 安装python3过程中,提示“-bash: make: command not found” - **现象描述** + 安装python3过程中出现以下错误: - + ``` -bash: make: command not found ``` - **可能原因** + 环境中未安装“make”。 - **解决办法** @@ -118,18 +132,19 @@ ## 安装python3过程中,提示“No module named '_ctypes'” - **现象描述** + 安装python3过程中出现以下错误: - + ``` ModuleNotFoundError:No module named ‘_ctypes’ ``` - **可能原因** + 环境中未安装“libffi”和“libffi-devel”。 - **解决办法** - 1. 通过命令“apt-get install libffi\* -y”,在线安装。 2. 完成后,重新安装python3。 @@ -137,25 +152,26 @@ ## 编译构建过程中,提示“No module named 'Crypto'” - **现象描述** + 编译构建过程中出现以下错误: - + ``` ModuleNotFoundError: No module named 'Crypto' ``` - **可能原因** + 环境中未安装“Crypto”。 - **解决办法** - 方法1:通过命令“pip3 install Crypto”,在线安装。 方法2:离线安装。 通过网页[https://pypi.org/project/pycrypto/#files](https://pypi.org/project/pycrypto/#files),下载源码。 - ![zh-cn_image_0000001226794696](figures/zh-cn_image_0000001226794696.png) + ![faq-download-pycrypto](figures/faq-download-pycrypto.png) 将源码放置在Linux服务器中,解压,并安装“python3 setup.py install”。 @@ -165,25 +181,26 @@ ## (Hi3861)编译构建过程中,提示“No module named 'ecdsa'” - **现象描述** + 编译构建过程中出现以下错误: - + ``` ModuleNotFoundError:No module named 'ecdsa' ``` - **可能原因** + 环境中未安装“ecdsa”。 - **解决办法** - 方法1:通过命令“pip3 install ecdsa”,在线安装。 方法2:离线安装 通过网页[https://pypi.org/project/ecdsa/#files](https://pypi.org/project/ecdsa/#files),下载安装包。 - ![zh-cn_image_0000001271594753](figures/zh-cn_image_0000001271594753.png) + ![faq-download-ecdsa](figures/faq-download-ecdsa.png) 将安装包放置Linux服务器中,并安装“pip3 install ecdsa-0.15-py2.py3-none-any.whl”。 @@ -193,25 +210,26 @@ ## (Hi3861)编译构建过程中,提示“Could not find a version that satisfies the requirement six>=1.9.0” - **现象描述** + 编译构建过程中出现以下错误: - + ``` Could not find a version that satisfies the requirement six>=1.9.0 ``` - **可能原因** + 环境中未安装合适的“six”。 - **解决办法** - 方法1:通过命令“pip3 install six”,在线安装。 方法2:离线安装。 通过网页[https://pypi.org/project/six/#files](https://pypi.org/project/six/#files),下载安装包。 - ![zh-cn_image_0000001271474573](figures/zh-cn_image_0000001271474573.png) + ![faq-download-six](figures/faq-download-six.png) 将源码放置在Linux服务器中,并安装“pip3 install six-1.14.0-py2.py3-none-any.whl”。 @@ -221,25 +239,28 @@ ## (Hi3861)编译构建过程中,提示找不到“-lgcc” - **现象描述** + 编译构建过程中出现以下错误: - + ``` riscv32-unknown-elf-ld: cannot find -lgcc ``` - **可能原因** + 交叉编译器gcc_riscv32的PATH添加错误,如下,在"bin"后多添加了一个“/”,应该删除。 - + ``` ~/gcc_riscv32/bin/:/data/toolchain/ ``` - **解决办法** + 重新修改gcc_riscv32的PATH,将多余的“/”删除。 - + ``` ~/gcc_riscv32/bin:/data/toolchain/ ``` @@ -248,15 +269,18 @@ ## (Hi3861)安装kconfiglib时,遇到lsb_release错误 - **现象描述** + 安装kconfiglib过程中遇到如下错误打印: - + ``` subprocess.CalledProcessError: Command '('lsb_release', '-a')' returned non-zero exit status 1. ``` - **可能原因** + lsb_release模块基于的python版本与现有python版本不一致。 - **解决办法** + 执行"find / -name lsb_release",找到lsb_release位置并删除,如:"sudo rm -rf /usr/bin/lsb_release"。 diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-common-burnerr.md b/zh-cn/device-dev/quick-start/quickstart-pkg-common-burnerr.md new file mode 100644 index 0000000000000000000000000000000000000000..37d5448406177c8ac2e245bbb15092d400ab4ac6 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-common-burnerr.md @@ -0,0 +1,122 @@ +# 烧录异常处理 + + +## 烧写选择串口后提示“Error: Opening COMxx: Access denied” + +- **现象描述** + + 单击烧写并选择串口后,出现Error: Opening COMxx: Access denied。 + + **图1** 打开串口失败图   + + ![hi3516-faq-serial-access-denied](figures/hi3516-faq-serial-access-denied.png) + +- **可能原因** + + 串口已经被占用。 + +- **解决办法** + +1. 按图依次选择下拉框,查找带有serial-xx的终端。 + + **图2** 查找是否存在占用串口的终端   + + ![hi3516-faq-serial-check](figures/hi3516-faq-serial-check.png) + +2. 单击标号中的垃圾桶图标,关闭串口。 + + **图3** 关闭串口终端   + + ![hi3516-faq-serial-close-terminal](figures/hi3516-faq-serial-close-terminal.png) + +3. 重新单击烧写,选择串口并开始烧写程序。 + + **图4** 重新启动烧写任务   + + ![hi3516-faq-serial-reburn](figures/hi3516-faq-serial-reburn.png) + + +## Windows电脑与单板网络连接失败 + +- **现象描述** + + 单击烧写并选择串口后,无法获取文件。 + + **图5** 网络不通,单板无法获取文件图   + + ![hi3516-faq-network-fail](figures/hi3516-faq-network-fail.png) + +- **可能原因** + + 单板网络与Windows电脑不联通。 + + Windows电脑防火墙未允许Visual Studio Code联网。 + +- **解决方法** + +1. 检查网线是否连接。 + +2. 单击Windows防火墙。 + + **图6** 网络防火墙设置图   + + ![hi3516-faq-firewall-setting](figures/hi3516-faq-firewall-setting.png) + +3. 单击“允许应用通过防火墙”。 + + **图7** 防火墙和网络保护界面图   + + ![hi3516-faq-firewall-setting-allow](figures/hi3516-faq-firewall-setting-allow.png) + +4. 查找Visual Studio Code应用。 + + **图8** 查找Visual Studio Code应用图   + + ![hi3516-faq-firewall-find-vscode](figures/hi3516-faq-firewall-find-vscode.png) + +5. 勾选Visual Studio Code的专用和公用网络的访问权限。 + + **图9** 允许Visual Studio Code应用访问网络   + + ![hi3516-faq-firewall-vscode-allow-network](figures/hi3516-faq-firewall-vscode-allow-network.png) + + +## (Hi3516)串口无回显 + +- **现象描述** + + 串口显示已连接,重启单板后,回车无任何回显。 + +- **可能原因1** + + 串口连接错误。 + +- **解决办法** + + 修改串口号。 + + 请查看设备管理器,确认连接单板的串口与终端中连接串口是否一致,若不一致,请按[串口访问失败的步骤](#烧写选择串口后提示error-opening-comxx-access-denied)修改串口号。 + +- **可能原因2** + + 单板U-boot被损坏。 + +- **解决办法** + + 烧写U-boot。 + + 若上述步骤依旧无法连接串口,可能由于单板U-boot损坏,按下述步骤烧写U-boot。 + +1. 获取引导文件U-boot。 + > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** + > 单板的U-boot文件请在开源包中获取:device\hisilicon\hispark_taurus\sdk_liteos\uboot\out\boot\u-boot-hi3516dv300.bin + +2. 根据USB烧写步骤烧写U-boot文件。 + + 按照[Hi3516系列USB烧写步骤](https://device.harmonyos.com/cn/docs/documentation/guide/upload_hi3516_small_system-0000001326267405)中描述的烧写方法,选择对应单板的U-boot文件进行烧写。 + +3. 烧写完成后,登录串口如下图所示。 + + **图10** U-boot烧写完成串口显示图   + + ![hi3516-faq-burn-uboot-success](figures/hi3516-faq-burn-uboot-success.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-faq-hb.md b/zh-cn/device-dev/quick-start/quickstart-pkg-common-hberr.md similarity index 93% rename from zh-cn/device-dev/quick-start/quickstart-standard-faq-hb.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-common-hberr.md index 9accfa1781e1ae816c3d304f005e942809ffcf2c..bdedcf08c819bcbb38e26caebf858f23a1d32cba 100644 --- a/zh-cn/device-dev/quick-start/quickstart-standard-faq-hb.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-common-hberr.md @@ -1,18 +1,21 @@ -# hb安装异常 +# hb安装异常处理 ## hb安装过程中出现乱码、段错误 - **现象描述** + 执行“python3 -m pip install --user ohos-build”出现乱码、段错误(segmentation fault)。 - **可能原因** + pip版本过低。 - **解决办法** + 执行如下命令升级pip。 - + ``` python3 -m pip install -U pip ``` @@ -21,15 +24,18 @@ ## hb安装过程中提示"cannot import 'sysconfig' from 'distutils'" - **现象描述** + 执行“python3 -m pip install --user ohos-build”提示"cannot import 'sysconfig' from 'distutils'" - **可能原因** + 缺少distutils模块。 - **解决办法** + 执行如下命令安装。 - + ``` sudo apt-get install python3.8-distutils ``` @@ -38,15 +44,18 @@ ## hb安装过程中提示"module 'platform' has no attribute 'linux_distribution'" - **现象描述** + 执行“python3 -m pip install --user ohos-build”提示"module 'platform' has no attribute 'linux_distribution'" - **可能原因** + python3 pip安装兼容性问题。 - **解决办法** + 执行如下命令重新安装pip。 - + ``` sudo apt remove python3-pip curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py @@ -57,15 +66,17 @@ ## hb安装过程中提示"Could not find a version that satisfies the requirement ohos-build" - **现象描述** + 执行“python3 -m pip install --user ohos-build”提示"Could not find a version that satisfies the requirement ohos-build" - **可能原因** - 可能是网络环境较差导致的安装失败。 + + 可能是网络环境较差导致的安装失败。 - **解决办法** 1. 请检查网络连接是否正常。如果网络有问题,请修复网络问题后重新安装。 2. 若网络正常,请尝试指定临时pypi源的方式安装: - + ``` python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ohos-build ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-common-proxy.md b/zh-cn/device-dev/quick-start/quickstart-pkg-common-proxy.md new file mode 100644 index 0000000000000000000000000000000000000000..04321a5b064375a50da2c94ac7cc66aebf86bcff --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-common-proxy.md @@ -0,0 +1,42 @@ +# 配置代理 + + +### 配置Python代理 + +1. 新建代理配置文件。 + + ``` + mkdir ~/.pipvim ~/.pip/pip.conf + ``` + +2. 在文件中写入如下代理信息并保存退出。 + + ``` + [global] + index-url = http://代理网址 + trusted-host = 可信任的镜像地址 + timeout = 120 + ``` + + +### 配置NPM代理 + +1. 新建代理配置文件。 + + ``` + vim ~/.npmrc + ``` + +2. 在文件中写入如下代理信息并保存退出。 + + ``` + registry=http://代理网址 + strict-ssl=false + ``` + +3. 将以下内容添加到.bashrc中并保存退出。 + + ``` + export NPM_REGISTRY=http://代理网址 + source .bashrc + ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-env.md b/zh-cn/device-dev/quick-start/quickstart-pkg-env.md new file mode 100644 index 0000000000000000000000000000000000000000..313c291e3e917767472787f90f4b74cb68de948f --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-env.md @@ -0,0 +1,4 @@ +# 搭建开发环境 + + +在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。同时,开发板的烧录需要在Windows环境中进行。 diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-info.md b/zh-cn/device-dev/quick-start/quickstart-pkg-info.md new file mode 100644 index 0000000000000000000000000000000000000000..aa2bd522a5e6f8487e5bf0b38a881d6069f2286f --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-info.md @@ -0,0 +1,13 @@ +# 常用信息 + + + +- **[配置代理](quickstart-pkg-common-proxy.md)** + +- **[使用build.sh脚本编译源码](quickstart-pkg-common-build.md)** + +- **[hb安装异常处理](quickstart-pkg-common-hberr.md)** + +- **[编译异常处理](quickstart-pkg-common-builderr.md)** + +- **[烧录异常处理](quickstart-pkg-common-burnerr.md)** \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-install_package.md b/zh-cn/device-dev/quick-start/quickstart-pkg-install_package.md new file mode 100644 index 0000000000000000000000000000000000000000..541b0e7ef851edcf98189115245045898dba914d --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-install_package.md @@ -0,0 +1,37 @@ +# 安装库和工具集 + + +使用命令行进行设备开发时,可以通过以下步骤安装编译OpenHarmony需要的库和工具。 + + +相应操作在Ubuntu环境中进行。 + + +1. 使用如下apt-get命令安装后续操作所需的库和工具: + + ``` + sudo apt-get update && sudo apt-get install binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib gcc-arm-linux-gnueabi libc6-dev-i386 libc6-dev-amd64 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip ruby genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons python3.8-distutils tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5-dev libncursesw5 libstdc++6 gcc-arm-none-eabi vim ssh locales libxinerama-dev libxcursor-dev libxrandr-dev libxi-dev + ``` + + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** + > 以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。其中: + > + > - Python要求安装Python 3.8及以上版本,此处以Python 3.8为例。 + > + > - Java要求java8及以上版本,此处以java8为例。 + +2. 将Python 3.8设置为默认Python版本。 + + 查看Python 3.8的位置: + + + ``` + which python3.8 + ``` + + 将Python和Python3切换为Python 3.8: + + ``` + sudo update-alternatives --install /usr/bin/python python {Python 3.8 路径} 1 #{Python 3.8 路径}为上一步查看的Python 3.8的位置 + sudo update-alternatives --install /usr/bin/python3 python3 {Python 3.8 路径} 1 #{Python 3.8 路径}为上一步查看的Python 3.8的位置 + ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-install_tool.md b/zh-cn/device-dev/quick-start/quickstart-pkg-install_tool.md new file mode 100644 index 0000000000000000000000000000000000000000..54883773c4ea30aa1acd55e5bdd1f56297c51f3b --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-install_tool.md @@ -0,0 +1,102 @@ +# 安装编译工具 + + +## 安装编译工具 + +想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指南](../subsystems/subsys-build-all.md)。 + +相关操作在Ubuntu环境下进行。 + + +### 安装hb + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> 如需安装代理,请参考[配置代理](quickstart-pkg-common-proxy.md)。 + +1. 运行如下命令安装hb并更新至最新版本 + + ``` + pip3 install --user build/lite + ``` + +2. 设置环境变量 + + ``` + vim ~/.bashrc + ``` + + 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 + + ``` + export PATH=~/.local/bin:$PATH + ``` + + 执行如下命令更新环境变量。 + + ``` + source ~/.bashrc + ``` + +3. 在源码目录执行"hb -h",界面打印以下信息即表示安装成功: + + ``` + usage: hb + + OHOS build system + + positional arguments: + {build,set,env,clean} + build Build source code + set OHOS build settings + env Show OHOS build env + clean Clean output + + optional arguments: + -h, --help show this help message and exit + ``` + +> ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** +> - 可采用以下命令卸载hb: +> +> ``` +> pip3 uninstall ohos-build +> ``` +> +> - 若安装hb的过程中遇到问题,请参见下文[常见问题](quickstart-pkg-common-hberr.md)进行解决。 + + +### 安装LLVM(仅OpenHarmony_v1.x分支/标签需要) + +> ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** +> 如果下载的源码为OpenHarmony_v1.x分支/标签,请按下面的步骤安装9.0.0版本的llvm。 +> +> 如果下载的源码为Master及非OpenHarmony_v1.x分支/标签,可直接跳过本小节,hb会自动下载最新的llvm。 + +1. 打开Linux编译服务器终端。 + +2. [下载LLVM工具](https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-36191/linux/llvm-linux-9.0.0-36191.tar)。 + +3. 解压LLVM安装包至~/llvm路径下。 + + ``` + tar -zxvf llvm.tar -C ~/ + ``` + +4. 设置环境变量。 + + ``` + vim ~/.bashrc + ``` + + 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 + + + ``` + export PATH=~/llvm/bin:$PATH + ``` + +5. 生效环境变量。 + + ``` + source ~/.bashrc + ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg-prepare.md b/zh-cn/device-dev/quick-start/quickstart-pkg-prepare.md new file mode 100644 index 0000000000000000000000000000000000000000..62abffed40b0d40ba7c093e1e03302e4cb963a69 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-prepare.md @@ -0,0 +1,93 @@ +# 准备开发环境 + + +在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。同时,开发板的烧录需要在Windows环境中进行。 + +在基于命令行方式开发的过程中,除下述[Windows环境要求](#windows环境要求)、[Ubuntu环境要求](#ubuntu环境要求)外,不对开发设备做另外的要求,请用户自行准备Windows环境、Ubuntu环境。本章节主要介绍通过Samba服务器实现Windows环境远程连接Ubuntu环境的方法。 + + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> OpenHarmony还为开发者提供了[Docker环境](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/get-code/gettools-acquire.md),整合的docker包在很大程度上简化了编译前的环境配置,习惯使用命令行的开发者也可以选择Docker环境进行编译 。 + + +进行工具安装之前,需要做如下准备。 + + +## Windows环境要求 + +源码烧录需要Windows10 64位的系统环境。 + + +## Ubuntu环境要求 + +- Ubuntu18.04及以上版本,内存推荐16 GB及以上。 + +- Ubuntu系统的用户名不能包含中文字符。 + + +## 远程访问准备 + +当在Windows下进行烧录时,开发者需要访问Ubuntu环境下的源码和镜像文件。您可以使用习惯的文件传输或共享工具实现文件的共享或传输。 + +此处介绍通过Samba服务器进行连接的操作方法。 + + +### 配置Samba服务器 + +在Ubuntu环境下进行以下操作: + +1. 安装Samba软件包。 + + ``` + sudo apt-get install samba samba-common + ``` + +2. 修改Samba配置文件,配置共享信息。 + 打开配置文件: + + ``` + sudo gedit /etc/samba/smb.conf + ``` + + 在配置文件末尾添加以下配置信息(根据实际需要配置相关内容): + + + ``` + [Share] #在Windows中映射的根文件夹名称(此处以“Share”为例) + comment = Shared Folder #共享信息说明 + path = /home/share #共享目录 + valid users = username #可以访问该共享目录的用户(Ubuntu的用户名) + directory mask = 0775 #默认创建的目录权限 + create mask = 0775 #默认创建的文件权限 + public = yes #是否公开 + writable = yes #是否可写 + available = yes #是否可获取 + browseable = yes #是否可浏览 + ``` + +3. 添加Samba服务器用户和访问密码。 + + ``` + sudo smbpasswd -a username #用户名为Ubuntu用户名。输入命令后,根据提示设置密码。 + ``` + +4. 重启Samba服务。 + + ``` + sudo service smbd restart + ``` + + +### 设置Windows映射 + +在Windows环境下进行以下操作: + +1. 右键计算机选择映射网络驱动器,输入共享文件夹信息。在文件夹输入框填入Ubuntu设备的IP地址和Ubuntu共享文件夹的路径。 + + ![quickstart-pkg-prepare-networkdriver](figures/quickstart-pkg-prepare-networkdriver.png) + +2. 输入Samba服务器的访问用户名和密码([在配置Samba服务器时已完成配置](#配置samba服务器))。 + + ![quickstart-pkg-prepare-setsamba](figures/quickstart-pkg-prepare-setsamba.png) + +3. 用户名和密码输入完成后即可在Windows下看到Linux的共享目录,并可对其进行访问。 diff --git a/zh-cn/device-dev/quick-start/quickstart-ide-lite-sourcecode-acquire.md b/zh-cn/device-dev/quick-start/quickstart-pkg-sourcecode.md similarity index 73% rename from zh-cn/device-dev/quick-start/quickstart-ide-lite-sourcecode-acquire.md rename to zh-cn/device-dev/quick-start/quickstart-pkg-sourcecode.md index 99ada780545742afc03f3ce5c0b29698142bb018..897b3cea39728f27f7fefcc56420c33fcb21485a 100644 --- a/zh-cn/device-dev/quick-start/quickstart-ide-lite-sourcecode-acquire.md +++ b/zh-cn/device-dev/quick-start/quickstart-pkg-sourcecode.md @@ -10,22 +10,22 @@ 2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)。 -3. 安装git客户端和git-lfs。(上述工具已在搭建环境章节安装。如已安装,请忽略) - +3. 安装git客户端和git-lfs。(上述工具已在安装必要的库和工具小节安装。如已安装,请忽略) + 更新软件源: - + ``` sudo apt-get update ``` 通过以下命令安装: - + ``` sudo apt-get install git git-lfs ``` 4. 配置用户信息。 - + ``` git config --global user.name "yourname" git config --global user.email "your-email-address" @@ -33,9 +33,9 @@ ``` 5. 执行如下命令安装码云repo工具。 - + 下述命令中的安装路径以"~/bin"为例,请用户自行创建所需目录。 - + ``` mkdir ~/bin curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o ~/bin/repo @@ -44,7 +44,7 @@ ``` 6. 将repo添加到环境变量。 - + ``` vim ~/.bashrc # 编辑环境变量 export PATH=~/bin:$PATH # 在环境变量的最后添加一行repo路径信息 @@ -55,12 +55,17 @@ ## 获取方式 > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> Master主干为开发分支,开发者可通过Master主干获取最新特性。发布分支代码相对比较稳定,开发者可基于发布分支代码进行商用功能开发。 +> 发布分支代码相对比较稳定,开发者可基于发布分支代码进行商用功能开发。Master主干为开发分支,开发者可通过Master主干获取最新特性。 -- **OpenHarmony主干代码获取** +- **OpenHarmony发布分支代码获取** + + OpenHarmony各个版本发布分支的源码获取方式请参考[Release-Notes](../../release-notes/Readme.md)。 - 方式一(推荐):通过repo + ssh下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 - + +- **OpenHarmony主干代码获取** + + 方式一(推荐):通过repo + ssh下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 + ``` repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify repo sync -c @@ -69,22 +74,18 @@ 方式二:通过repo + https下载。 - + ``` repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify repo sync -c repo forall -c 'git lfs pull' ``` -- **OpenHarmony发布分支代码获取** - - OpenHarmony各个版本发布分支的源码获取方式请参考[Release-Notes](../../release-notes/Readme.md)。 - -### 执行prebuilts +## 执行prebuilts 在源码根目录下执行prebuilts脚本,安装编译器及二进制工具。 - + ``` bash build/prebuilts_download.sh ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-pkg.md b/zh-cn/device-dev/quick-start/quickstart-pkg.md new file mode 100644 index 0000000000000000000000000000000000000000..b13f806e0f01e594a5393aeb13a7dd60c59a36a8 --- /dev/null +++ b/zh-cn/device-dev/quick-start/quickstart-pkg.md @@ -0,0 +1,31 @@ +# 使用命令行快速入门 + + +- 基于命令行入门 + - 搭建开发环境 + - [准备开发环境](quickstart-pkg-prepare.md) + - [安装库和工具集](quickstart-pkg-install_package.md) + - [获取源码](quickstart-pkg-sourcecode.md) + - [安装编译工具](quickstart-pkg-install_tool.md) + - 轻量系统(基于Hi3861开发板) + - [安装Hi3861开发板特有环境](quickstart-pkg-3861-tool.md) + - [编写“Hello World”程序](quickstart-pkg-3861-helloworld.md) + - [编译](quickstart-pkg-3861-build.md) + - [烧录](quickstart-pkg-3861-burn.md) + - [运行](quickstart-pkg-3861-running.md) + - 小型系统(基于Hi3516开发板) + - [编写“Hello World”程序](quickstart-pkg-3516-helloworld.md) + - [编译](quickstart-pkg-3516-build.md) + - [烧录](quickstart-pkg-3516-burn.md) + - [运行](quickstart-pkg-3516-running.md) + - 标准系统(基于RK3568开发板) + - [编写“Hello World”程序](quickstart-pkg-3568-helloworld.md) + - [编译](quickstart-pkg-3568-build.md) + - [烧录](quickstart-pkg-3568-burn.md) + - [运行](quickstart-pkg-3568-running.md) + - 常用信息 + - [配置代理](quickstart-pkg-common-proxy.md) + - [使用build.sh脚本编译源码](quickstart-pkg-common-build.md) + - [hb安装异常处理](quickstart-pkg-common-hberr.md) + - [编译异常处理](quickstart-pkg-common-builderr.md) + - [烧录异常处理](quickstart-pkg-common-burnerr.md) \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-board-introduction-hi3516.md b/zh-cn/device-dev/quick-start/quickstart-standard-board-introduction-hi3516.md deleted file mode 100644 index 4840b3381104344ffed9a8efaee8130b4944969b..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-board-introduction-hi3516.md +++ /dev/null @@ -1,20 +0,0 @@ -# Hi3516开发板介绍 - - -## 开发板简介 - -Hi3516DV300作为新一代行业专用Smart HD IP摄像机SOC,集成新一代ISP(Image Signal Processor)、H.265视频压缩编码器以及高性能NNIE引擎,具备低码率、高画质、低功耗等特点,并具备强劲的智能处理和分析能力。 - - **图1** Hi3516单板正面外观图   - -![zh-cn_image_0000001226922318](figures/zh-cn_image_0000001226922318.png) - - -## 开发板规格 - - **表1** Hi3516开发板规格清单 - -| 规格类型 | 规格清单 | -| -------- | -------- | -| **处理器及内部存储** | - Hi3516DV300芯片
- DDR3 1GB
- eMMC4.5,8GB容量 | -| **外部器件** | - 以太网口
- 音频视频
  - 1路语音输入
  - 1路单声道(AC_L)输出,接3W功放(LM4871)
  - MicroHDMI(1路HDMI 1.4)
- 摄像头
  - 传感器IMX335
  - 镜头M12,焦距4mm,光圈1.8
- 显示屏
  - LCD连接器(2.35寸)
  - LCD连接器(5.5寸)
- 外部器件及接口
  - SD卡接口
  - JTAG/I2S接口
  - ADC接口
  - 舵机接口
  - Grove连接器
  - USB2.0(Type C)
  - 功能按键3个,2个用户自定义按键,1个升级按键
  - LED指示灯,绿灯,红灯 | diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-board-introduction-rk3568.md b/zh-cn/device-dev/quick-start/quickstart-standard-board-introduction-rk3568.md deleted file mode 100644 index 24c654595917bcbcc0641ae0ccc8f6959ad6b520..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-board-introduction-rk3568.md +++ /dev/null @@ -1,41 +0,0 @@ -# RK3568开发板介绍 - - -## 开发板简介 - -RK3568开发板基于Rockchip RK3568芯片,集成双核心架构GPU以及高效能NPU;搭载四核64位Cortex-A55处理器,采用22nm先进工艺,主频高达2.0GHz;支持蓝牙、Wi-Fi、音频、视频和摄像头等功能,拥有丰富的扩展接口,支持多种视频输入输出接口;配置双千兆自适应RJ45以太网口,可满足NVR、工业网关等多网口产品需求。 - - **图1** RK3568开发板正面 -   -![zh-cn_image_0000001271442261](figures/zh-cn_image_0000001271442261.png) - - **图2** RK3568开发板背面  -  -![zh-cn_image_0000001226602394](figures/zh-cn_image_0000001226602394.png) - - -## 开发板规格 - - **表1** RK3568开发板规格说明 - -| 规格类型 | 规格清单 | -| -------- | -------- | -| 显示接口 | - 1×HDMI2.0(Type-A)接口,支持4K/60fps输出
- 2×MIPI接口,支1920\*1080\@60fps输出
- 1×eDP接口,支持2K\@60fps输出 | -| 音频接口 | - 1×8ch I2S/TDM/PDM
- 1×HDMI音频输出
- 1×喇叭输出
- 1×耳机输出
- 1×麦克风,板载音频输入 | -| 以太网 | 2×GMAC(10/100/1000M) | -| 无线网络 | SDIO接口,支持WIFI6 5G/2.5G,BT4.2 | -| 摄像头接口 | MIPI-CSI2,1x4-lane/2x2-lane\@2.5Gbps/lane | -| USB | - 2×USB2.0 Host,Type-A
- 1×USB3.0 Host,Type-A
- 1×USB3.0 OTG | -| PCIe | 1×2Lanes PCIe3.0 Connector (RC Mode) | -| SATA | 1×SATA3.0 Connector | -| SDMMC | 1×Micro SD Card3.0 | -| 按键 | - 1×Vol+/Recovery
- 1×Reset
- 1×Power
- 1×Vol-
- 1×Mute | -| 调试 | 1×调试串口 | -| RTC | 1×RTC | -| IR | 1×IR | -| 三色灯 | 3×LED | -| G-sensor | 1×G-sensor | -| FAN | 1×Fan | -| 扩展接口 | 20Pin扩展接口包括:
- 2×ADC接口
- 2×I2C接口
- 7×GPIO口(或者3×gpio + 4×uart信号)
- 3×VCC电源(12V、3.3V、5V) | -| 底板尺寸 | 180mm×130mm | -| PCB规格 | 4 层板 | diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-env-setup.md b/zh-cn/device-dev/quick-start/quickstart-standard-env-setup.md deleted file mode 100644 index 1a22f7864fceb0ed8c11314110b1ff8a892a3301..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-env-setup.md +++ /dev/null @@ -1,384 +0,0 @@ -# 搭建标准系统环境 - - -## 系统要求 - -- Windows系统要求:Windows10 64位系统。 - -- Ubuntu系统要求:Ubuntu18.04~21.10版本,内存推荐16 GB及以上。 - -- Windows系统和Ubuntu系统的用户名不能包含中文字符。 - -- Windows和Ubuntu上安装的DevEco Device Tool为3.0 Release版本。 - - -## 安装必要的库和工具 - -编译OpenHarmony需要一些库和工具,可以通过以下步骤进行安装。 - -相应操作在Ubuntu环境中进行。 - -1. 使用如下apt-get命令安装后续操作所需的库和工具: - - ``` - sudo apt-get update && sudo apt-get install binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib gcc-arm-linux-gnueabi libc6-dev-i386 libc6-dev-amd64 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip ruby genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons python3.8-distutils tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5-dev libncursesw5 libstdc++6 gcc-arm-none-eabi vim ssh locales libxinerama-dev libxcursor-dev libxrandr-dev libxi-dev - ``` - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。其中: - > - > - Python要求安装Python 3.8及以上版本,此处以Python 3.8为例。 - > - > - Java要求java8及以上版本,此处以java8为例。 - -2. 将python 3.8设置为默认python版本。 - - 查看python 3.8的位置: - - - ``` - which python3.8 - ``` - - 将python和python3切换为python3.8: - - ``` - sudo update-alternatives --install /usr/bin/python python {python3.8 路径} 1 #{python3.8 路径}为上一步查看的python3.8的位置 - sudo update-alternatives --install /usr/bin/python3 python3 {python3.8 路径} 1 #{python3.8 路径}为上一步查看的python3.8的位置 - ``` - - -## 安装DevEco Device Tool - -通过Windows系统远程访问Ubuntu环境进行烧录等操作,需要先在Windows和Ubuntu下分别安装DevEco Device Tool。 - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> DevEco Device Tool是OpenHarmony的一站式开发工具,支持源码开发、编译、烧录,调测等,本文主要用其远端链接Ubuntu环境进行烧录和运行。 - - -### 安装Window版本DevEco Device Tool - -1. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Windows版。 - -2. 解压DevEco Device Tool压缩包,双击安装包程序,点击Next进行安装。 - -3. 设置DevEco Device Tool的安装路径,请注意安装路径不能包含中文字符,同时建议安装到非系统盘符,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果您已安装DevEco Device Tool 3.0 Beta2及以前的版本,则在安装新版本时,会先卸载旧版本,卸载过程中出现如下错误提示时,请点击“Ignore”继续安装,该错误不影响新版本的安装。 - > - > ![zh-cn_image_0000001239275843](figures/zh-cn_image_0000001239275843.png) - - ![zh-cn_image_0000001270076961](figures/zh-cn_image_0000001270076961.png) - -4. 根据安装向导提示,勾选要自动安装的软件。 - - 1. 在弹出VSCode installation confirm页面,勾选“Install VScode 1.62.2automatically”,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果检测到Visual Studio Code已安装,且版本为1.62及以上,则会跳过该步骤。 - - ![zh-cn_image_0000001237801283](figures/zh-cn_image_0000001237801283.png) - - 2. 在弹出的Python select page选择“Download from Huawei mirror”,点击**Next**。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 如果系统已安装可兼容的Python版本(Python 3.8~3.9版本),可选择“Use one of compatible on your PC”。 - - ![zh-cn_image_0000001193983334](figures/zh-cn_image_0000001193983334.png) - -5. 在以下界面点击**Next**。 - - ![zh-cn_image_0000001259180828](figures/zh-cn_image_0000001259180828.png) - -6. 请详细阅读以下界面的用户协议和隐私声明,这里须勾选"I accept the licenses",然后点击Next,安装向导才会继续进行软件下载和安装。 - - ![zh-cn_image_0000001307019009](figures/zh-cn_image_0000001307019009.png) - -7. 继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,点击**Finish**,关闭DevEco Device Tool安装向导。 - - ![zh-cn_image_0000001239650137](figures/zh-cn_image_0000001239650137.png) - -8. 打开Visual Studio Code,进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。 - - ![zh-cn_image_0000001225760456](figures/zh-cn_image_0000001225760456.png) - - -### 安装Ubuntu版本DevEco Device Tool - - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 如果没有Ubuntu系统,可在Windows系统中通过虚拟机方式搭建Ubuntu系统,具体请参考[Ubuntu系统安装指导](https://developer.huawei.com/consumer/cn/training/course/video/C101639987816176315)。Ubuntu系统安装完成后,请根据指导完成[Ubuntu基础环境配置](https://developer.huawei.com/consumer/cn/training/course/video/C101639988048536240),然后再根据本章节进行DevEco Device Tool工具的安装。 - - -1. 将Ubuntu Shell环境修改为bash。 - - 1. 执行如下命令,确认输出结果为bash。如果输出结果不是bash,请根据步骤2,将Ubuntu shell修改为bash。 - - ``` - ls -l /bin/sh - ``` - - ![zh-cn_image_0000001226764302](figures/zh-cn_image_0000001226764302.png) - - 2. 打开终端工具,执行如下命令,输入密码,然后选择**No**,将Ubuntu shell由dash修改为bash。 - - ``` - sudo dpkg-reconfigure dash - ``` - - ![zh-cn_image_0000001243641075](figures/zh-cn_image_0000001243641075.png) - -2. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Linux版本。 - -3. 解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。 - - 1. 进入DevEco Device Tool软件包目录,执行如下命令解压软件包,其中devicetool-linux-tool-3.0.0.401.zip为软件包名称,请根据实际进行修改。 - - ``` - unzip devicetool-linux-tool-3.0.0.401.zip - ``` - 2. 进入解压后的文件夹,执行如下命令,赋予安装文件可执行权限,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - chmod u+x devicetool-linux-tool-3.0.0.401.sh - ``` - -4. 执行如下命令,安装DevEco Device Tool,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。 - - ``` - sudo ./devicetool-linux-tool-3.0.0.401.sh - ``` - -5. 在用户协议和隐私声明签署界面,请详细阅读用户协议和隐私声明,需签署同意用户协议和隐私声明才能进行下一步的安装。 - - ![zh-cn_image_0000001322167645.png](figures/zh-cn_image_0000001322167645.png) - - 安装完成后,当界面输出“DevEco Device Tool successfully installed.”时,表示DevEco Device Tool安装成功。 - - ![zh-cn_image_0000001198722374](figures/zh-cn_image_0000001198722374.png) - - -## 配置Windows远程访问Ubuntu环境 - - -### 安装SSH服务并获取远程访问的IP地址 - -1. 在Ubuntu系统中,打开终端工具,执行如下命令安装SSH服务。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果执行该命令失败,提示openssh-server和openssh-client依赖版本不同,请根据CLI界面提示信息,安装openssh-client相应版本后(例如:sudo apt-get install openssh-client=1:8.2p1-4),再重新执行该命令安装openssh-server。 - - - ``` - sudo apt-get install openssh-server - ``` - -2. 执行如下命令,启动SSH服务。 - - ``` - sudo systemctl start ssh - ``` - -3. 执行如下命令,获取当前用户的IP地址,用于Windows系统远程访问Ubuntu环境。 - - ``` - ifconfig - ``` - - ![zh-cn_image_0000001215737140](figures/zh-cn_image_0000001215737140.png) - - -### 安装Remote SSH - -1. 打开Windows系统下的Visual Studio Code,点击![zh-cn_image_0000001239080359](figures/zh-cn_image_0000001239080359.png),在插件市场的搜索输入框中输入“remote-ssh”。 - - ![zh-cn_image_0000001193920448](figures/zh-cn_image_0000001193920448.png) - -2. 点击Remote-SSH的**Install**按钮,安装Remote-SSH。安装成功后,在**INSTALLED**下可以看到已安装Remote-SSH。 - - ![zh-cn_image_0000001238880335](figures/zh-cn_image_0000001238880335.png) - - -### 远程连接Ubuntu环境 - -1. 打开Windows系统的Visual Studio Code,点击![zh-cn_image_0000001238760373](figures/zh-cn_image_0000001238760373.png),在REMOTE EXPLORER页面点击+按钮。 - - ![zh-cn_image_0000001215878922](figures/zh-cn_image_0000001215878922.png) - -2. 在弹出的SSH连接命令输入框中输入“ssh _username_\@_ip_address_”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号。 - - ![zh-cn_image_0000001215879750](figures/zh-cn_image_0000001215879750.png) - -3. 在弹出的输入框中,选择SSH configuration文件,选择默认的第一选项即可。 - - ![zh-cn_image_0000001260519729](figures/zh-cn_image_0000001260519729.png) - -4. 在SSH TARGETS中,找到远程计算机,点击![zh-cn_image_0000001194080414](figures/zh-cn_image_0000001194080414.png),打开远程计算机。 - - ![zh-cn_image_0000001215720398](figures/zh-cn_image_0000001215720398.png) - -5. 在弹出的输入框中,选择**Linux**,然后在选择**Continue**,然后输入登录远程计算机的密码,连接远程计算机 。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 在Windows系统远程访问Ubuntu过程中,需要频繁的输入密码进行连接,为解决该问题,您可以使用SSH公钥来进行设置,设置方法请参考[注册远程访问Ubuntu环境的公钥](https://device.harmonyos.com/cn/docs/documentation/guide/ide-registering-public-key-0000001247162706)。 - - ![zh-cn_image_0000001215897530](figures/zh-cn_image_0000001215897530.png) - - 连接成功后,等待在远程计算机.vscode-server文件夹下自动安装插件,安装完成后,根据界面提示在Windows系统下重新加载Visual Studio Code,便可以在Windows的DevEco Device Tool界面进行源码开发、编译、烧录等操作。 - - -## 获取源码 - -在Ubuntu环境下通过以下步骤获取OpenHarmony源码。 - - -### 准备工作 - -1. 注册码云gitee帐号。 - -2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)。 - -3. 安装git客户端和git-lfs。(上述工具已在安装必要的库和工具小节安装。如已安装,请忽略) - - 更新软件源: - - ``` - sudo apt-get update - ``` - - 通过以下命令安装: - - ``` - sudo apt-get install git git-lfs - ``` - -4. 配置用户信息。 - - ``` - git config --global user.name "yourname" - git config --global user.email "your-email-address" - git config --global credential.helper store - ``` - -5. 执行如下命令安装码云repo工具。 - - 下述命令中的安装路径以"~/bin"为例,请用户自行创建所需目录。 - - ``` - mkdir ~/bin - curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o ~/bin/repo - chmod a+x ~/bin/repo - pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests - ``` - -6. 将repo添加到环境变量。 - - ``` - vim ~/.bashrc # 编辑环境变量 - export PATH=~/bin:$PATH # 在环境变量的最后添加一行repo路径信息 - source ~/.bashrc # 应用环境变量 - ``` - - -### 获取方式 - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> Master主干为开发分支,开发者可通过Master主干获取最新特性。发布分支代码相对比较稳定,开发者可基于发布分支代码进行商用功能开发。 - -- **OpenHarmony主干代码获取** - - 方式一(推荐):通过repo + ssh下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 - - ``` - repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - - 方式二:通过repo + https下载。 - - - ``` - repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - -- **OpenHarmony发布分支代码获取** - - OpenHarmony各个版本发布分支的源码获取方式请参考[Release-Notes](../../release-notes/Readme.md)。 - - -### 执行prebuilts - - 在源码根目录下执行prebuilts脚本,安装编译器及二进制工具。 - -``` -bash build/prebuilts_download.sh -``` - - -## 安装编译工具 - -hb是OpenHarmony的编译工具,可通过以下步骤在Ubuntu下进行安装。想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指导](../subsystems/subsys-build-all.md)。 - - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 如需安装代理,请参考[配置代理](../quick-start/quickstart-standard-reference.md#配置代理)。 - - -1. 运行如下命令安装hb并更新至最新版本 - - ``` - pip3 install --user build/lite - ``` - -2. 设置环境变量 - - ``` - vim ~/.bashrc - ``` - - 将以下命令拷贝到.bashrc文件的最后一行,保存并退出。 - - ``` - export PATH=~/.local/bin:$PATH - ``` - - 执行如下命令更新环境变量。 - - ``` - source ~/.bashrc - ``` - -3. 在源码目录执行"hb -h",界面打印以下信息即表示安装成功: - - ``` - usage: hb - - OHOS build system - - positional arguments: - {build,set,env,clean} - build Build source code - set OHOS build settings - env Show OHOS build env - clean Clean output - - optional arguments: - -h, --help show this help message and exit - ``` - - -> ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** -> - 可采用以下命令卸载hb: -> -> ``` -> pip3 uninstall ohos-build -> ``` -> -> - 若安装hb的过程中遇到问题,请参见下文[常见问题](../quick-start/quickstart-standard-faq-hb.md)进行解决。 diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-faq-burning.md b/zh-cn/device-dev/quick-start/quickstart-standard-faq-burning.md deleted file mode 100644 index 59f633eea2e5f66cb296521ef0462ae6e8ac5d42..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-faq-burning.md +++ /dev/null @@ -1,92 +0,0 @@ -# 烧录异常 - - -## 烧写选择串口后提示“Error: Opening COMxx: Access denied” - -- **现象描述** - - 点击烧写并选择串口后,出现Error: Opening COMxx: Access denied。 - - **图1** 打开串口失败图   - - ![zh-cn_image_0000001271202461](figures/zh-cn_image_0000001271202461.png) - -- **可能原因** - 串口已经被占用。 - -- **解决办法** - -1. 按图依次选择下拉框,查找带有serial-xx的终端。 - - **图2** 查找是否存在占用串口的终端   - - ![zh-cn_image_0000001271202473](figures/zh-cn_image_0000001271202473.png) - -2. 点击标号中的垃圾桶图标,关闭串口。 - - **图3** 关闭串口终端   - - ![zh-cn_image_0000001271202469](figures/zh-cn_image_0000001271202469.png) - -3. 重新点击烧写,选择串口并开始烧写程序。 - - **图4** 重新启动烧写任务   - - ![zh-cn_image_0000001271562449](figures/zh-cn_image_0000001271562449.png) - - -## Windows电脑与单板网络连接失败 - -- **现象描述** - - 点击烧写并选择串口后,无法获取文件。 - - **图5** 网络不通,单板无法获取文件图   - - ![zh-cn_image_0000001226922306](figures/zh-cn_image_0000001226922306.png) - -- **可能原因** - - 单板网络与Windows电脑不联通。 - - Windows电脑防火墙未允许Visual Studio Code联网。 - -- **解决方法** - -1. 检查网线是否连接。 - -2. 点击Windows防火墙。 - - **图6** 网络防火墙设置图   - - ![zh-cn_image_0000001227082322](figures/zh-cn_image_0000001227082322.png) - -3. 点击“允许应用通过防火墙”。 - - **图7** 防火墙和网络保护界面图   - - ![zh-cn_image_0000001271202457](figures/zh-cn_image_0000001271202457.png) - -4. 查找Visual Studio Code应用。 - - **图8** 查找Visual Studio Code应用图   - - ![zh-cn_image_0000001271562445](figures/zh-cn_image_0000001271562445.png) - -5. 勾选Visual Studio Code的专用和公用网络的访问权限。 - - **图9** 允许Visual Studio Code应用访问网络  -  - ![zh-cn_image_0000001271442273](figures/zh-cn_image_0000001271442273.png) - - -## 烧写失败 - -- **现象描述** - 点击烧写并选择串口后,出现无法烧写的情况。 - -- **可能原因** - 安装IDE插件DevEco后未重启。 - -- **解决方法** - 重启IDE。 diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-faq-compose.md b/zh-cn/device-dev/quick-start/quickstart-standard-faq-compose.md deleted file mode 100644 index 10bd0232f170ce1efeb3d2f90b4ed4e2d4077e90..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-faq-compose.md +++ /dev/null @@ -1,161 +0,0 @@ -# 编译异常 - - -## Linux编译服务器终端输入不识别的命令时提示“ImportError: No module named apt_pkg” - -- **现象描述** - Linux编译服务器终端输入不识别的命令时,提示"ImportError: No module named apt_pkg" - -- **可能原因** - python3 apt安装兼容性问题。 - -- **解决办法** - 执行如下命令重新安装python3-apt。 - - - ``` - sudo apt-get remove python3-apt - sudo apt-get install python3-apt - ``` - - -## 编译构建过程中,提示找不到“python” - -- **现象描述** - 编译构建过程中出现以下错误: - - - ``` - -bash: /usr/bin/python: No such file or directory - ``` - -- **可能原因**1 - 没有装python。 - -- **解决办法** - 请使用如下命令安装Python,下方以Python3.8为例。 - - - ``` - sudo apt-get install python3.8 - ``` - -- **可能原因2** - usr/bin目录下没有python软链接 - - ![zh-cn_image_0000001226922322](figures/zh-cn_image_0000001226922322.png) - -- **解决办法** - 请运行以下命令添加软链接: - - - ``` - # cd /usr/bin/ - # which python3 - # ln -s /usr/local/bin/python3 python - # python --version - ``` - - 例: - - ![zh-cn_image_0000001271562453](figures/zh-cn_image_0000001271562453.png) - - -## 编译构建过程中,提示找不到“python3” - -- **现象描述** - - ![zh-cn_image_0000001226602414](figures/zh-cn_image_0000001226602414.png) - -- **可能原因** - 没有装python3。 - -- **解决办法** - 请使用如下命令安装Python3。 - - - ``` - sudo apt-get install python3.8 - ``` - - -## 安装python3过程中,提示“configure: error: no acceptable C compiler found in $PATH” - -- **现象描述** - 安装python3过程中出现以下错误: - - - ``` - configure: error: no acceptable C compiler found in $PATH. See 'config.log' for more details - ``` - -- **可能原因** - 环境中未安装“gcc”。 - -- **解决办法** - 1. 通过命令“apt-get install gcc”在线安装。 - 2. 完成后,重新安装python3。 - - -## 安装python3过程中,提示“-bash: make: command not found” - -- **现象描述** - 安装python3过程中出现以下错误: - - - ``` - -bash: make: command not found - ``` - -- **可能原因** - 环境中未安装“make”。 - -- **解决办法** - 1. 通过命令“apt-get install make”在线安装。 - 2. 完成后,重新安装python3。 - - -## 安装python3过程中,提示“No module named '_ctypes'” - -- **现象描述** - 安装python3过程中出现以下错误: - - - ``` - ModuleNotFoundError:No module named ‘_ctypes’ - ``` - -- **可能原因** - 环境中未安装“libffi”和“libffi-devel”。 - -- **解决办法** - 1. 通过命令“apt-get install libffi\* -y”,在线安装。 - 2. 完成后,重新安装python3。 - - -## 编译构建过程中,提示“No module named 'Crypto'” - -- **现象描述** - 编译构建过程中出现以下错误: - - - ``` - ModuleNotFoundError: No module named 'Crypto' - ``` - -- **可能原因** - 环境中未安装“Crypto”。 - -- **解决办法** - - 方法1:通过命令“pip3 install Crypto”,在线安装。 - - 方法2:离线安装。 - - 通过网页[https://pypi.org/project/pycrypto/#files](https://pypi.org/project/pycrypto/#files),下载源码。 - - ![zh-cn_image_0000001227082334](figures/zh-cn_image_0000001227082334.png) - - 将源码放置在Linux服务器中,解压,并安装“python3 setup.py install”。 - - 完成上述安装后,重新构建。 diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-hitool.md b/zh-cn/device-dev/quick-start/quickstart-standard-hitool.md deleted file mode 100644 index a77bcfb579eee7bd3371e1991f4984d4e127afae..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-hitool.md +++ /dev/null @@ -1,69 +0,0 @@ -# 使用HiTool烧录代码 - - -针对Hi3516DV300开发板,除了DevEco Device Tool外,还可以使用HiTool进行烧录。 - - -## 前提条件 - -- 开发板相关源码已编译完成,已形成烧录文件。 - -- 客户端(操作平台,例如Windows系统)已下载并安装[HiTool工具](http://www.hihope.org/download/download.aspx)。 - -- 客户端(操作平台,例如Windows系统)已安装USB驱动,可参考[Hi3516DV300/Hi3518EV300开发板USB驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)。 - -- 客户端已安装串口终端工具(例如IPOP)。 - -- 使用USB线缆、串口线缆连接客户端与开发板。 - - -## 操作步骤 - -1. 准备烧录相关文件。 - - 1. 在客户端新建用于保存烧录文件的文件夹,例如D:\L2。 - - 2. 将编译完成的源码包下载至客户端并解压,将烧录相关文件拷贝至步骤1中新建的文件夹。 - - Hi3516DV300开发板烧写所需文件为:boot.img、Hi3516DV300-emmc.xml、system.img、u-boot-hi3516dv300_emmc.bin、uImage、updater.img、userdata.img、vendor.img。 - -2. 使用HiTool烧录。 - - 1. 打开HiTool。 - - 2. 设置HiTool参数。 - - 传输方式选择USB口,烧写方式选择烧写eMMC(单板的存储介质为eMMC)。 - - 3. 单击浏览在步骤1创建的文件夹中选择烧写配置文件(例如Hi3516DV300-emmc.xml)。 - - ![zh-cn_image_0000001249937194](figures/zh-cn_image_0000001249937194.png) - - 4. 单击烧写后,按住开发板上串口旁的按钮(Update键),并拔插USB线(上下电)。 - - 烧录开始后,可以在HiTool工具下方的控制台区域观察到烧录过程中的打印信息。 - - 烧录完成后,HiTool弹出提示框显示烧写成功。 - - 5. 单击确定。 - -3. 导入启动参数。 - - 1. 使用终端工具打开串口。 - - 2. 拔插开发板电源使其重启,3s内在串口终端输入回车。 - - 终端界面中出现hisilicon \#表示已连接开发板串口。 - - 3. 在串口终端拷贝如下启动参数后,按回车完成配置。 - - ``` - setenv bootargs 'mem=640M console=ttyAMA0,115200 mmz=anonymous,0,0xA8000000,384M clk_ignore_unused androidboot.selinux=permissive rootdelay=10 hardware=Hi3516DV300 init=/init root=/dev/ram0 rw blkdevparts=mmcblk0:1M(boot),15M(kernel),20M(updater),2M(misc),3307M(system),256M(vendor),-(userdata)';setenv bootcmd 'mmc read 0x0 0x82000000 0x800 0x4800; bootm 0x82000000' - - saveenv - - reset - ``` - - > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** - > 输入启动参数时,请勿自行删除其中的空行。 diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-ide-directory.md b/zh-cn/device-dev/quick-start/quickstart-standard-ide-directory.md deleted file mode 100644 index 23c92d7e820d16ba8ec5c3ca55dc2ad598006c4e..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-ide-directory.md +++ /dev/null @@ -1,22 +0,0 @@ -## 标准系统快速入门(IDE方式) - -- [标准系统入门概述](quickstart-ide-standard-overview.md) -- 准备标准系统环境 - - [搭建Windows+Ubuntu混合开发环境](quickstart-ide-standard-env-setup-win-ubuntu.md) - - [获取源码](quickstart-ide-standard-sourcecode-acquire.md) -- [导入源码工程](quickstart-ide-standard-create-project.md) -- 运行“Hello World” - - Hi3516开发板 - - [编写“Hello World”程序](quickstart-ide-standard-running-hi3516-create.md) - - [编译](quickstart-ide-standard-running-hi3516-build.md) - - [烧录](quickstart-ide-standard-running-hi3516-burning.md) - - [运行](quickstart-ide-standard-running-hi3516-running.md) - - RK3568开发板 - - [编写“Hello World”程序](quickstart-ide-standard-running-rk3568-create.md) - - [编译](quickstart-ide-standard-running-rk3568-build.md) - - [烧录](quickstart-ide-standard-running-rk3568-burning.md) - - [运行](quickstart-ide-standard-running-rk3568-running.md) -- 附录 - - [Hi3516开发板介绍](quickstart-ide-standard-board-introduction-hi3516.md) - - [RK3568开发板介绍](quickstart-ide-standard-board-introduction-rk3568.md) - - [编译形态整体说明](quickstart-build.md) \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-overview.md b/zh-cn/device-dev/quick-start/quickstart-standard-overview.md deleted file mode 100644 index a565f4412d378c2afa376e85d8267cc330418ae5..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-overview.md +++ /dev/null @@ -1,41 +0,0 @@ -# 标准系统入门概述 - - -## 简介 - -OpenHarmony标准系统适用于参考内存≥128MiB的设备。通过本文,开发者可以快速熟悉OpenHarmony标准系统的环境搭建、编译、烧录、调测以及运行“Hello World”等。 - -考虑到开发者的开发习惯,OpenHarmony为开发者提供了以下两种入门指导: - -- IDE方式:完全采用IDE(DevEco Device Tool)进行一站式开发,编译依赖工具的安装及编译、烧录、运行都通过IDE进行操作。 - -- 安装包方式:通过命令行进行编译依赖工具的下载安装,编译操作也通过命令实现。烧录、运行等操作使用IDE。 - OpenHarmony还为开发者提供了[Docker环境](../get-code/gettools-acquire.md),在很大程度上简化了编译前的环境配置,习惯使用安装包方式的开发者也可以选择Docker环境进行编译 。 - -本文采用安装包方式进行介绍,习惯使用DevEco Device Tool的开发者可参考[标准系统快速入门(IDE方式)](../quick-start/quickstart-ide-standard-overview.md)。 - - -## 开发环境 - -推荐开发者采用Windows+Ubuntu环境进行OpenHarmony开发: - -- Windows:用于源码开发、烧录等。 - -- Ubuntu:用于源码编译。 - -本文将介绍如何基于Windows+Ubuntu环境进行OpenHarmony的开发。 - - -## 开发板 - -本文选取了两款典型开发板:Hi3516DV300、RK3516,并基于上述两款开发板进行开发介绍。开发板的具体外观和规格可参见[本文附录](../quick-start/quickstart-standard-board-introduction-hi3516.md),开发者可根据需要自行购买开发板。 - - -## 开发流程 - -标准系统快速入门流程如下图所示。 - - **图1** 标准系统快速入门开发流程   - - -![zh-cn_image_0000001227082314](figures/zh-cn_image_0000001227082314.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-package-directory.md b/zh-cn/device-dev/quick-start/quickstart-standard-package-directory.md deleted file mode 100644 index 9173ab71c468560ac1fbbe3374771a16c0a9414a..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-package-directory.md +++ /dev/null @@ -1,26 +0,0 @@ -## 标准系统快速入门(安装包方式) - -- [标准系统入门概述](quickstart-standard-overview.md) -- [搭建标准系统环境](quickstart-standard-env-setup.md) -- 运行“Hello World” - - Hi3516开发板 - - [编写“Hello World”程序](quickstart-std-3516-create.md) - - [编译](quickstart-standard-running-hi3516-build.md) - - [烧录](quickstart-standard-running-hi3516-burning.md) - - [运行](quickstart-standard-running-hi3516-running.md) - - RK3568开发板 - - [编写“Hello World”程序](quickstart-standard-running-rk3568-create.md) - - [编译](quickstart-standard-running-rk3568-build.md) - - [烧录](quickstart-standard-running-rk3568-burning.md) - - [运行](quickstart-standard-running-rk3568-running.md) -- 常见问题 - - [hb安装异常](quickstart-standard-faq-hb.md) - - [编译异常](quickstart-standard-faq-compose.md) - - [烧录异常](quickstart-standard-faq-burning.md) -- 附录 - - 开发板介绍 - - [Hi3516开发板介绍](quickstart-standard-board-introduction-hi3516.md) - - [RK3568开发板介绍](quickstart-standard-board-introduction-rk3568.md) - - [编译形态整体说明](quickstart-build.md) - - [参考信息](quickstart-standard-reference.md) - - [使用HiTool烧录代码](quickstart-standard-hitool.md) \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-reference.md b/zh-cn/device-dev/quick-start/quickstart-standard-reference.md deleted file mode 100644 index 513f7e8667a3133b4cf81d275b5a38749207beea..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-reference.md +++ /dev/null @@ -1,68 +0,0 @@ -# 参考信息 - - -## 使用build.sh脚本编译源码 - -1. 进入源码根目录,执行如下命令进行版本编译。 - - ``` - ./build.sh --product-name name --ccache - ``` - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > _name_为产品名称,例如Hi3516DV300、rk3568等。 - -2. 检查编译结果。编译完成后,log中显示如下: - - ``` - post_process - =====build name successful. - ``` - - 编译所生成的文件都归档在out/{device_name}/目录下,结果镜像输出在out/{device_name}/packages/phone/images/ 目录下。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 其他模块化编译操作,可参见[编译构建指导](../subsystems/subsys-build-all.md)。 - - -## 配置代理 - - -### 配置Python代理 - -1. 新建代理配置文件。 - - ``` - mkdir ~/.pipvim ~/.pip/pip.conf - ``` - -2. 在文件中写入如下代理信息并保存退出。 - - ``` - [global] - index-url = http://代理网址 - trusted-host = 可信任的镜像地址 - timeout = 120 - ``` - - -### 配置NPM代理 - -1. 新建代理配置文件。 - - ``` - vim ~/.npmrc - ``` - -2. 在文件中写入如下代理信息并保存退出。 - - ``` - registry=http://代理网址 - strict-ssl=false - ``` - -3. 将以下内容添加到.bashrc中并保存退出。 - - ``` - export NPM_REGISTRY=http://代理网址 - source .bashrc - ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-build.md b/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-build.md deleted file mode 100644 index 0183bd5f33a601d4d5ad2755f2e4df6c9a5f8096..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-build.md +++ /dev/null @@ -1,47 +0,0 @@ -# 编译 - - -OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码](quickstart-standard-reference.md)。 - - -在Ubuntu环境下进入源码根目录,执行如下命令进行编译: - - -1. 设置编译路径。 - - ``` - hb set - ``` - -2. 选择当前路径。 - - ``` - . - ``` - -3. 在hisilicon下选择hispark_taurus_standard并回车。 - - **图1** Hi3516编译设置图例   - - ![zh-cn_image_0000001268278138](figures/zh-cn_image_0000001268278138.png) - -4. 执行编译。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - 单独编译一个部件(例如hello),可使用“hb build -T _目标名称_”进行编译。 - > - > - 增量编译整个产品,可使用“hb build”进行编译。 - > - > - 完整编译整个产品,可使用“hb build -f”进行编译。 - > - > 此处以完整编译整个产品为例进行说明。 - - - ``` - hb build -f - ``` - -5. 编译结束后,出现“build success”字样,则证明构建成功。 - - > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:** - > 编译结果文件及编译日志文件获取路径:out/hi3516dv300。 diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-burning.md b/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-burning.md deleted file mode 100644 index 07260e729ed7d3709762cb918658b040ac99c446..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-burning.md +++ /dev/null @@ -1,89 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - -Hi3516DV300开发板小型系统的烧录方式包括USB烧录、网口烧录两种方式,本文采用USB方式进行烧录。 - -## 导入源码 - -在编译完成后,[保证Windows系统可以远程访问Ubuntu环境](quickstart-standard-env-setup.md)的情况下,您还需要通过以下步骤将编译好的源码导入DevEco Device Tool,方可进行烧录。 - -1. 打开DevEco Device Tool,进入Home页,点击**Import Project**打开工程。 - - ![zh-cn_image_0000001278358765](figures/zh-cn_image_0000001278358765.png) - -2. 选择OpenHarmony源码根目录路径(需要访问Ubuntu下的源码目录),然后再选择**Import OpenHarmony Source**选项,点击**Import**进行导入。 - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 工程存储路径不能包含中文字符、空格。 - - ![zh-cn_image_0000001271477045](figures/zh-cn_image_0000001271477045.png) - -3. 在Import Project界面,选择**Product**后,会自动填充对应的SOC、Board、Company和Kernel信息,然后**Ohos Ver**选择对应的OpenHarmony源码版本。 - - ![zh-cn_image_0000001279426717](figures/zh-cn_image_0000001279426717.png) - -4. 点击**Open**打开工程或源码。 - - -## 烧录 - -完成源码导入后,通过以下步骤进行烧录: - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 使用USB烧录方式,在DevEco Device Tool 2.2 Beta2及更高版本中支持。 - -1. 请连接好电脑和待烧录开发板,需要连接USB口和串口,具体可参考[Hi3516DV300开发板介绍](quickstart-lite-introduction-hi3516.md)。 - -2. 根据[Hi3516DV300/Hi3518EV300开发板串口驱动安装指导](https://gitee.com/link?target=https%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fhi3516_hi3518-drivers-0000001050743695)、[Hi3516DV300/Hi3518EV300开发板USB驱动安装指导](https://device.harmonyos.com/cn/docs/documentation/guide/usb_driver-0000001058690393)安装USB驱动及USB转串口的驱动。若您的设备中已安装此驱动,请忽略该步骤。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - -4. 在菜单栏中点击**Project Settings**按钮,进入Hi3516DV300工程配置界面。 - - ![zh-cn_image_0000001198566364](figures/zh-cn_image_0000001198566364.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001198566365](figures/zh-cn_image_0000001198566365.png) - -6. 在“hi3516dv300”页签,设置烧录选项,包括upload_partitions、upload_port和upload_protocol。 - - - upload_partitions:选择待烧录程序的配置文件(已预置默认的配置文件),该配置文件会指定烧录文件名称、起始烧录地址、地址长度等信息;同时请勾选**Enable to use upload_partitions_profile for upload**选项。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如需修改烧录profile文件,在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 - > - > 首次烧录,请勾选**Enable to use upload_partitions_profile for upload**选项,会自动生成upload_partitions文件。再次烧录时,可根据实际情况选择生成upload_partitions文件进行自定义烧录,也可以再勾选**Enable to use upload_partitions_profile for upload**选项,使用upload_partitions_profile重新生成upload_partitions文件用于烧录。 - - - upload_protocol:选择烧录协议,固定选择“hiburn-usb”。 - - - upload_port:选择已查询的串口号。 - - ![zh-cn_image_0000001177478136](figures/zh-cn_image_0000001177478136.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 点击hi3516dv300下的**Upload**按钮。 - - ![zh-cn_image_0000001267532292](figures/zh-cn_image_0000001267532292.png) - - 此时待烧录文件会从Ubuntu系统传输到Windows下,传输完成后界面显示“Operation paused, Please press Enter key to continue”时,请点击**Enter**键启动烧录。 - - ![zh-cn_image_0000001114129427](figures/zh-cn_image_0000001114129427.png) - -9. 在终端窗口显示如下提示信息时,请在15秒内,按住Update键,插拔USB线,最后松开Update键启动烧录。 - - ![zh-cn_image_0000001326412233.png](figures/zh-cn_image_0000001326412233.png) - - 启动烧录后,界面提示**SUCCESS**信息时,表示烧录成功。 - - ![zh-cn_image_0000001160649344](figures/zh-cn_image_0000001160649344.png) - -10. 烧录成功后,请根据运行章节进行操作,启动系统。 \ No newline at end of file diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-running.md b/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-running.md deleted file mode 100644 index e90e3789ff218595885a032473793ec9b113bcdc..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-running-hi3516-running.md +++ /dev/null @@ -1,57 +0,0 @@ -# 运行 - - -## 启动系统 - -烧录完成后在Windows下通过以下步骤启动系统: - -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** -> 初次烧写标准系统,需要完成以下配置,后续烧写或者启动,可以跳过以下操作。 - -1. 在DevEco Device Tool中,点击Monitor,打开串口工具。 - - ![zh-cn_image_0000001226762374](figures/zh-cn_image_0000001226762374.png) - -2. 重启开发板,在倒计时结束前,按任意键进入系统。 - - ![zh-cn_image_0000001271442265](figures/zh-cn_image_0000001271442265.gif) - -3. 通过以下两条命令设置启动参数。 - - ``` - setenv bootargs 'mem=640M console=ttyAMA0,115200 mmz=anonymous,0,0xA8000000,384M clk_ignore_unused rootdelay=10 hardware=Hi3516DV300 init=/init root=/dev/ram0 rw blkdevparts=mmcblk0:1M(boot),15M(kernel),20M(updater),2M(misc),3307M(system),256M(vendor),-(userdata)'; - ``` - - - ``` - setenv bootcmd 'mmc read 0x0 0x82000000 0x800 0x4800; bootm 0x82000000' - ``` - - ![zh-cn_image_0000001271322437](figures/zh-cn_image_0000001271322437.png) - -4. 保存参数设置。 - - ``` - save - ``` - - ![zh-cn_image_0000001271562437](figures/zh-cn_image_0000001271562437.png) - -5. 重启开发板,完成系统启动。 - - ``` - reset - ``` - - ![zh-cn_image_0000001226762378](figures/zh-cn_image_0000001226762378.png) - - -## 运行“Hello World” - -设备启动后打开串口工具,在任意目录下输入命令helloworld后回车,界面打印“Hello World!”,程序运行成功。 - -![zh-cn_image_0000001226602398](figures/zh-cn_image_0000001226602398.png) - -## 下一步 - -恭喜!您已经完成了OpenHarmony标准系统的快速入门,接下来可[开发一个小示例](../guide/device-clock-guide.md),进一步熟悉OpenHarmony的开发。 diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-burning.md b/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-burning.md deleted file mode 100644 index 6f213903a0c4a6ae9e107dbeb3176095cbe1decf..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-burning.md +++ /dev/null @@ -1,86 +0,0 @@ -# 烧录 - - -烧录是指将编译后的程序文件下载到芯片开发板上的动作,为后续的程序调试提供基础。DevEco Device Tool提供一键烧录功能,操作简单,能快捷、高效的完成程序烧录,提升烧录的效率。 - -RK3568的镜像烧录通过Windows环境进行烧录。 - - -## 导入源码 - -在编译完成后,[保证Windows系统可以远程访问Ubuntu环境](quickstart-standard-env-setup.md)的情况下,您还需要通过以下步骤将编译好的源码导入DevEco Device Tool,方可进行烧录。 - -1. 打开DevEco Device Tool,进入Home页,点击**Import Project**打开工程。 - - ![zh-cn_image_0000001278358765](figures/zh-cn_image_0000001278358765.png) - -2. 选择OpenHarmony源码根目录路径(需要访问Ubuntu下的源码目录),然后再选择**Import OpenHarmony Source**选项,点击**Import**进行导入。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > 工程存储路径不能包含中文字符、空格。 - - ![zh-cn_image_0000001271477045](figures/zh-cn_image_0000001271477045.png) - -3. 在Import Project界面,选择**Product**后,会自动填充对应的SOC、Board、Company和Kernel信息,然后**Ohos Ver**选择对应的OpenHarmony源码版本。 - - ![zh-cn_image_0000001279587085](figures/zh-cn_image_0000001279587085.png) - -4. 点击**Open**打开工程或源码。 - - -## 烧录 - -完成源码导入后,通过以下步骤进行烧录: - -1. [下载](https://gitee.com/hihope_iot/docs/blob/master/HiHope_DAYU200/%E7%83%A7%E5%86%99%E5%B7%A5%E5%85%B7%E5%8F%8A%E6%8C%87%E5%8D%97/windows/DriverAssitant_v5.1.1.zip)并安装驱动DriverInstall.exe。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果已经安装旧版本的烧写工具,请先点击"驱动卸载"按钮卸载驱动,然后再点击"驱动安装"按钮安装驱动。 - -2. 请连接好电脑和待烧录开发板,连接USB接口,具体可参考[RK3568开发板介绍](quickstart-standard-board-introduction-rk3568.md)。 - -3. 在DevEco Device Tool中,选择REMOTE DEVELOPMENT > Local PC,查看远程计算机(Ubuntu开发环境)与本地计算机(Windows开发环境)的连接状态。 - - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261315939](figures/zh-cn_image_0000001261315939.png),则远程计算机与本地计算机为已连接状态,不需要执行其他操作。 - - 如果Local PC右边连接按钮为![zh-cn_image_0000001261515989](figures/zh-cn_image_0000001261515989.png),则点击绿色按钮进行连接。连接时DevEco Device Tool会重启服务,因此请不要在下载源码或源码编译过程中进行连接,否则会中断任务。 - - ![zh-cn_image_0000001261395999](figures/zh-cn_image_0000001261395999.png) - -4. 在菜单栏中点击**Project Settings**按钮,进入RK3568工程配置界面。 - - ![zh-cn_image_0000001198566364](figures/zh-cn_image_0000001198566364.png) - -5. 在“Tool Chain”页签,设置Uploader烧录器工具,可以通过Tool Chain页签中的Install按钮在线安装。 - - ![zh-cn_image_0000001239661509](figures/zh-cn_image_0000001239661509.png) - -6. 在“hh_scdy200”页签,设置烧录选项,包括upload_partitions和upload_protocol。 - - - upload_partitions_profile:选择待烧录程序的配置文件,该配置文件会指定烧录文件名称、起始烧录地址、地址长度等信息;同时请勾选**Enable to use upload_partitions_profile for upload**选项。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如需修改烧录profile文件,在设置烧录分区起始地址和分区长度时,应根据实际待烧录文件的大小进行设置,要求设置的烧录分区大小,要大于待烧录文件的大小;同时,各烧录文件的分区地址设置不能出现重叠。 - > - > 首次烧录,请勾选**Enable to use upload_partitions_profile for upload**选项,会自动生成upload_partitions文件。再次烧录时,可根据实际情况选择生成upload_partitions文件进行自定义烧录,也可以再勾选**Enable to use upload_partitions_profile for upload**选项,使用upload_partitions_profile重新生成upload_partitions文件用于烧录。 - - - upload_protocol:选择烧录协议,固定选择“upgrade”。 - - ![zh-cn_image_0000001194504874](figures/zh-cn_image_0000001194504874.png) - -7. 所有的配置都修改完成后,在工程配置页签的顶部,点击**Save**进行保存。 - -8. 在“PROJECT TASKS”中,点击hh_scdy200下的**Upload**按钮启动烧录。 - - ![zh-cn_image_0000001194821710](figures/zh-cn_image_0000001194821710.png) - -9. 当屏幕提示“Operation paused,Please press Enter key to continue”,请按回车键继续。 - - > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** - > - > 如果开发板未处于烧录模式,屏幕会提示“The board is not in Loader mode.Please Hold on the VOL+key...”,此时,请长按音量+键,3秒后点击RESET键,然后再过3秒放开音量+键,使开发板进入烧录模式。 - - 等待开发板烧录完成,当屏幕提示如下信息时,表示烧录成功。 - - ![zh-cn_image_0000001194984912](figures/zh-cn_image_0000001194984912.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-create.md b/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-create.md deleted file mode 100644 index 43f763c2c8dbb0149da71cfb37a5d223a8048ab4..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-create.md +++ /dev/null @@ -1,159 +0,0 @@ -# 编写“Hello World”程序 - - -下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。 - - -## 示例目录 - - 示例完整目录如下。 - -``` -applications/sample/hello -│ │── BUILD.gn -│ │── include -│ │ └── helloworld.h -│ │── src -│ │ └── helloworld.c -│ └── bundle.json -build -└── subsystem_config.json -vendor/hihope -└── rk3568 - └── config.json -``` - - -## 开发步骤 - -请在源码目录中通过以下步骤创建“Hello World”应用程序: - -1. 创建目录,编写业务代码。 - - 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改World为OH)。其中helloworld.h包含字符串打印函数HelloPrint的声明。当前应用程序可支持标准C及C++的代码开发。 - - - ``` - #include - #include "helloworld.h" - - int main(int argc, char **argv) - { - HelloPrint(); - return 0; - } - - void HelloPrint() - { - printf("\n\n"); - printf("\n\t\tHello World!\n"); - printf("\n\n"); - } - ``` - - 再添加头文件applications/sample/hello/include/helloworld.h,代码如下所示。 - - - ``` - #ifndef HELLOWORLD_H - #define HELLOWORLD_H - #ifdef __cplusplus - #if __cplusplus - extern "C" { - #endif - #endif - - void HelloPrint(); - - #ifdef __cplusplus - #if __cplusplus - } - #endif - #endif - #endif // HELLOWORLD_H - ``` - -2. 新建编译组织文件。 - - 1. 新建applications/sample/hello/BUILD.gn文件,内容如下所示: - - ``` - import("//build/ohos.gni") # 导入编译模板 - ohos_executable("helloworld") { # 可执行模块 - sources = [ # 模块源码 - "src/helloworld.c" - ] - include_dirs = [ # 模块依赖头文件目录 - "include" - ] - cflags = [] - cflags_c = [] - cflags_cc = [] - ldflags = [] - configs = [] - deps =[] # 部件内部依赖 - part_name = "hello" # 所属部件名称,必选 - install_enable = true # 是否默认安装(缺省默认不安装),可选 - } - ``` - 2. 新建applications/sample/hello/bundle.json文件,添加sample部件描述,内容如下所示。 - - ``` - { - "name": "@ohos/hello", - "description": "Hello world example.", - "version": "3.1", - "license": "Apache License 2.0", - "publishAs": "code-segment", - "segment": { - "destPath": "applications/sample/hello" - }, - "dirs": {}, - "scripts": {}, - "component": { - "name": "hello", - "subsystem": "sample", - "syscap": [], - "features": [], - "adapted_system_type": [ "mini", "small", "standard" ], - "rom": "10KB", - "ram": "10KB", - "deps": { - "components": [], - "third_party": [] - }, - "build": { - "sub_component": [ - "//applications/sample/hello:helloworld" - ], - "inner_kits": [], - "test": [] - } - } - } - ``` - - bundle.json文件包含两个部分,第一部分描述该部件所属子系统的信息,第二部分component则定义该部件构建相关配置。添加的时候需要指明该部件包含的模块sub_component,假如有提供给其它部件的接口,需要在inner_kits中说明,假如有测试用例,需要在test中说明,inner_kits与test没有也可以不添加。 - -3. 修改子系统配置文件。 - - 在build/subsystem_config.json中添加新建的子系统的配置。 - - - ``` - "sample": { - "path": "applications/sample/hello", - "name": "sample" - }, - ``` - -4. 修改产品配置文件。 - - 在vendor/hihope/rk3568/config.json中添加对应的hello部件,直接添加到原有部件后即可。 - - ``` - "usb:usb_manager_native":{}, - "applications:prebuilt_hap":{}, - "sample:hello":{}, - "wpa_supplicant-2.9:wpa_supplicant-2.9":{}, - ``` diff --git a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-running.md b/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-running.md deleted file mode 100644 index caa6e2df154873b6c36288c36f779966ba5cf2ab..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-standard-running-rk3568-running.md +++ /dev/null @@ -1,21 +0,0 @@ -# 运行 - - -## 启动系统 - -镜像烧录完成重启开发板后,系统将会自动启动。开发板附带的屏幕呈现以下界面,表明系统已运行成功。 - - **图1** 系统启动效果图   - -![zh-cn_image_0000001226602406](figures/zh-cn_image_0000001226602406.jpg) - - -## 运行“Hello World” - -1. 设备启动后打开串口工具(以putty为例),波特率设置为1500000,连接设备。 - - ![zh-cn_image_0000001226922310](figures/zh-cn_image_0000001226922310.png) - -2. 打开串口后,在任意目录(以设备根目录为例)下输入命令helloworld后回车,界面打印“Hello World!”,程序运行成功。 - - ![zh-cn_image_0000001271202465](figures/zh-cn_image_0000001271202465.png) diff --git a/zh-cn/device-dev/quick-start/quickstart-std-3516-create.md b/zh-cn/device-dev/quick-start/quickstart-std-3516-create.md deleted file mode 100644 index cfffb34b1dc8c4d2c68d9ed1189e1c4b2f0b13be..0000000000000000000000000000000000000000 --- a/zh-cn/device-dev/quick-start/quickstart-std-3516-create.md +++ /dev/null @@ -1,162 +0,0 @@ -# 编写“Hello World”程序 - - -下方将展示如何在单板上运行第一个应用程序,其中包括新建应用程序、编译、烧写、运行等步骤,最终输出“Hello World!”。 - - -## 示例目录 - -示例完整目录如下。 - - -``` -applications/sample/hello -│── BUILD.gn -│── include -│ └── helloworld.h -│── src -│ └── helloworld.c -├── bundle.json -build -└── subsystem_config.json -vendor/hisilicon -└── Hi3516DV300 - └── config.json -``` - - -## 开发步骤 - -请在源码目录中通过以下步骤创建“Hello World”应用程序: - - -1. 创建目录,编写业务代码。 - - 新建applications/sample/hello/src/helloworld.c目录及文件,代码如下所示,用户可以自定义修改打印内容(例如:修改World为OH)。其中helloworld.h包含字符串打印函数HelloPrint的声明。当前应用程序可支持标准C及C++的代码开发。 - - - ``` - #include - #include "helloworld.h" - - int main(int argc, char **argv) - { - HelloPrint(); - return 0; - } - - void HelloPrint() - { - printf("\n\n"); - printf("\n\t\tHello World!\n"); - printf("\n\n"); - } - ``` - - 再添加头文件applications/sample/hello/include/helloworld.h,代码如下所示。 - - - ``` - #ifndef HELLOWORLD_H - #define HELLOWORLD_H - #ifdef __cplusplus - #if __cplusplus - extern "C" { - #endif - #endif - - void HelloPrint(); - - #ifdef __cplusplus - #if __cplusplus - } - #endif - #endif - #endif // HELLOWORLD_H - ``` - -2. 新建编译组织文件。 - - 1. 新建applications/sample/hello/BUILD.gn文件,内容如下所示: - - ``` - import("//build/ohos.gni") # 导入编译模板 - ohos_executable("helloworld") { # 可执行模块 - sources = [ # 模块源码 - "src/helloworld.c" - ] - include_dirs = [ # 模块依赖头文件目录 - "include" - ] - cflags = [] - cflags_c = [] - cflags_cc = [] - ldflags = [] - configs = [] - deps =[] # 部件内部依赖 - part_name = "hello" # 所属部件名称,必选 - install_enable = true # 是否默认安装(缺省默认不安装),可选 - } - ``` - 2. 新建applications/sample/hello/bundle.json文件,添加sample部件描述,内容如下所示。 - - ``` - { - "name": "@ohos/hello", - "description": "Hello world example.", - "version": "3.1", - "license": "Apache License 2.0", - "publishAs": "code-segment", - "segment": { - "destPath": "applications/sample/hello" - }, - "dirs": {}, - "scripts": {}, - "component": { - "name": "hello", - "subsystem": "sample", - "syscap": [], - "features": [], - "adapted_system_type": [ "mini", "small", "standard" ], - "rom": "10KB", - "ram": "10KB", - "deps": { - "components": [], - "third_party": [] - }, - "build": { - "sub_component": [ - "//applications/sample/hello:helloworld" - ], - "inner_kits": [], - "test": [] - } - } - } - ``` - - bundle.json文件包含两个部分,第一部分描述该部件所属子系统的信息,第二部分component则定义该部件构建相关配置。添加的时候需要指明该部件包含的模块sub_component,假如有提供给其它部件的接口,需要在inner_kits中说明,假如有测试用例,需要在test中说明,inner_kits与test没有也可以不添加。 - -3. 修改子系统配置文件。 - - 在build/subsystem_config.json中添加新建的子系统的配置。 - - - ``` - "sample": { - "path": "applications/sample/hello", - "name": "sample" - }, - ``` - -4. 修改产品配置文件。 - - 在vendor/hisilicon/Hi3516DV300/config.json中添加对应的hello部件,直接添加到原有部件后即可。 - - - ``` - "usb:usb_manager_native":{}, - "applications:prebuilt_hap":{}, - "sample:hello":{}, - "wpa_supplicant-2.9:wpa_supplicant-2.9":{}, - ``` diff --git a/zh-cn/device-dev/subsystems/subsys-build-all.md b/zh-cn/device-dev/subsystems/subsys-build-all.md index 8dd82206e54844b7e37866a4cecfb0e776168de8..21fafa4d6f941cc48eb601f742cd9488c2165c91 100644 --- a/zh-cn/device-dev/subsystems/subsys-build-all.md +++ b/zh-cn/device-dev/subsystems/subsys-build-all.md @@ -92,7 +92,7 @@ OpenHarmony编译子系统是以GN和Ninja构建为基座,对构建和配置 # export PATH=~/.local/bin:$PATH ``` - ![icon-note.gif](public_sys-resources/icon-note.gif)**注意**:上述安装ohos-build的过程中会安装编译工具hb,但有时会出现hb安装不成功的情况,若安装不成功,则按照[hb安装](../../device-dev/quick-start/quickstart-lite-env-setup.md#安装hb)重新安装。 + ![icon-note.gif](public_sys-resources/icon-note.gif)**注意**:上述安装ohos-build的过程中会安装编译工具hb,但有时会出现hb安装不成功的情况,若安装不成功,则按照[hb安装](../../device-dev/quick-start/quickstart-pkg-install_tool.md#安装hb)重新安装。 ## 配置规则 diff --git a/zh-cn/device-dev/subsystems/subsys-build-gn-kconfig-visual-config-guide.md b/zh-cn/device-dev/subsystems/subsys-build-gn-kconfig-visual-config-guide.md index d6175848914f1bb1caee3cd219fdff1930c7aeaa..c88c1dbd54038b5bfe40d14a628578d465bba81e 100644 --- a/zh-cn/device-dev/subsystems/subsys-build-gn-kconfig-visual-config-guide.md +++ b/zh-cn/device-dev/subsystems/subsys-build-gn-kconfig-visual-config-guide.md @@ -30,7 +30,7 @@ 2. 环境准备 - 环境配置所需要的Kconfiglib已内置在OpenHarmony自带的hb工具中,如需安装hb工具,可参考:[hb安装教程](../quick-start/quickstart-lite-env-setup.md#安装hb) + 环境配置所需要的Kconfiglib已内置在OpenHarmony自带的hb工具中,如需安装hb工具,可参考:[hb安装教程](../quick-start/quickstart-pkg-install_tool.md#安装hb) 3. 开启可视化配置界面 diff --git a/zh-cn/device-dev/website.md b/zh-cn/device-dev/website.md index 2b0e46fb6da156fa6ae0c5d6755b8d9becf93be3..1fe6576b25b528ca3483740deb6463590ebf4154 100644 --- a/zh-cn/device-dev/website.md +++ b/zh-cn/device-dev/website.md @@ -1,204 +1,70 @@ # OpenHarmony设备开发文档 - [设备开发导读](device-dev-guide.md) - 快速开始 - - 轻量和小型系统快速入门(IDE方式,推荐) - - - [轻量与小型系统入门概述](quick-start/quickstart-ide-lite-overview.md) - - - 准备轻量与小型系统环境 - - - [搭建Windows+Ubuntu混合开发环境](quick-start/quickstart-ide-lite-env-setup-win-ubuntu.md) - - - [获取源码](quick-start/quickstart-ide-lite-sourcecode-acquire.md) - - - [导入源码工程](quick-start/quickstart-ide-lite-create-project.md) - - - 运行“Hello World” - - - Hi3861开发板 - - - [编写“Hello World”程序](quick-start/quickstart-ide-lite-steps-hi3861-helloworld.md) - - - [编译](quick-start/quickstart-ide-lite-steps-hi3861-building.md) - - - [烧录](quick-start/quickstart-ide-lite-steps-hi3861-burn.md) - - - [联网](quick-start/quickstart-ide-lite-steps-hi3861-netconfig.md) - - - [调试验证](quick-start/quickstart-ide-lite-steps-hi3861-debug.md) - - - [运行](quick-start/quickstart-ide-lite-steps-hi3861-running.md) - - - Hi3516开发板 - - - [编写“Hello World”程序](quick-start/quickstart-ide-lite-steps-hi3516-helloworld.md) - - - [编译](quick-start/quickstart-ide-lite-steps-hi3516-building.md) - - - [烧录](quick-start/quickstart-ide-lite-steps-hi3516-burn.md) - - - [运行](quick-start/quickstart-ide-lite-steps-hi3516-running.md) - - - 附录 - - - [Hi3861开发板介绍](quick-start/quickstart-ide-lite-introduction-hi3861.md) - - - [Hi3516开发板介绍](quick-start/quickstart-ide-lite-introduction-hi3516.md) - - - [编译形态整体说明](quick-start/quickstart-build.md) - - - 轻量和小型系统快速入门(安装包方式) - - - [轻量与小型系统入门概述](quick-start/quickstart-lite-overview.md) - - - [搭建轻量与小型系统环境](quick-start/quickstart-lite-env-setup.md) - - - 运行“Hello World” - - - Hi3861开发板 - - - [安装Hi3861开发板环境](quick-start/quickstart-lite-steps-hi3861-setting.md) - - - [编写“Hello World”程序](quick-start/quickstart-lite-steps-hi3861-helloworld.md) - - - [编译](quick-start/quickstart-lite-steps-hi3861-building.md) - - - [烧录](quick-start/quickstart-lite-steps-hi3861-burn.md) - - - [联网](quick-start/quickstart-lite-steps-hi3861-netconfig.md) - - - [调试验证](quick-start/quickstart-lite-steps-hi3861-debug.md) - - - [运行](quick-start/quickstart-lite-steps-hi3861-running.md) - - - Hi3516开发板 - - - [安装Hi3516开发板环境](quick-start/quickstart-lite-steps-hi3516-setting.md) - - - [编写“Hello World”程序](quick-start/quickstart-lite-steps-hi3516-helloworld.md) - - - [编译](quick-start/quickstart-lite-steps-hi3516-building.md) - - - [烧录](quick-start/quickstart-lite-steps-hi3516-burn.md) - - - [运行](quick-start/quickstart-lite-steps-hi3516-running.md) - - - 常见问题 - - - [hb安装异常](quick-start/quickstart-lite-faq-hb.md) - - - [编译异常](quick-start/quickstart-lite-faq-compose.md) - - - [烧录异常](quick-start/quickstart-lite-faq-burning.md) - - - 附录 - - - 开发板介绍 - - - [Hi3861开发板介绍](quick-start/quickstart-lite-introduction-hi3861.md) - - - [Hi3516开发板介绍](quick-start/quickstart-lite-introduction-hi3516.md) - - - [参考信息](quick-start/quickstart-lite-reference.md) - - - [使用HiTool烧录代码](quick-start/quickstart-lite-hitool.md) - - - [编译形态整体说明](quick-start/quickstart-build.md) - - - 标准系统快速入门(IDE方式,推荐) - - - [标准系统入门概述](quick-start/quickstart-ide-standard-overview.md) - - - 准备标准系统环境 - - - [搭建Windows+Ubuntu混合开发环境](quick-start/quickstart-ide-standard-env-setup-win-ubuntu.md) - - - [获取源码](quick-start/quickstart-ide-standard-sourcecode-acquire.md) - - - [导入源码工程](quick-start/quickstart-ide-standard-create-project.md) - - - 运行“Hello World” - - - Hi3516开发板 - - - [编写“Hello World”程序](quick-start/quickstart-ide-standard-running-hi3516-create.md) - - - [编译](quick-start/quickstart-ide-standard-running-hi3516-build.md) - - - [烧录](quick-start/quickstart-ide-standard-running-hi3516-burning.md) - - - [运行](quick-start/quickstart-ide-standard-running-hi3516-running.md) - - - RK3568开发板 - - - [编写“Hello World”程序](quick-start/quickstart-ide-standard-running-rk3568-create.md) - - - [编译](quick-start/quickstart-ide-standard-running-rk3568-build.md) - - - [烧录](quick-start/quickstart-ide-standard-running-rk3568-burning.md) - - - [运行](quick-start/quickstart-ide-standard-running-rk3568-running.md) - - - 附录 - - - [Hi3516开发板介绍](quick-start/quickstart-ide-standard-board-introduction-hi3516.md) - - - [RK3568开发板介绍](quick-start/quickstart-ide-standard-board-introduction-rk3568.md) - - - [编译形态整体说明](quick-start/quickstart-build.md) - - - 标准系统快速入门(安装包方式) - - - [标准系统入门概述](quick-start/quickstart-standard-overview.md) - - - [搭建标准系统环境](quick-start/quickstart-standard-env-setup.md) - - - 运行“Hello World” - - - Hi3516开发板 - - - [编写“Hello World”程序](quick-start/quickstart-std-3516-create.md) - - - [编译](quick-start/quickstart-standard-running-hi3516-build.md) - - - [烧录](quick-start/quickstart-standard-running-hi3516-burning.md) - - - [运行](quick-start/quickstart-standard-running-hi3516-running.md) - - - RK3568开发板 - - - [编写“Hello World”程序](quick-start/quickstart-standard-running-rk3568-create.md) - - - [编译](quick-start/quickstart-standard-running-rk3568-build.md) - - - [烧录](quick-start/quickstart-standard-running-rk3568-burning.md) - - - [运行](quick-start/quickstart-standard-running-rk3568-running.md) - - - 常见问题 - - - [hb安装异常](quick-start/quickstart-standard-faq-hb.md) - - - [编译异常](quick-start/quickstart-standard-faq-compose.md) - - - [烧录异常](quick-start/quickstart-standard-faq-burning.md) - - - 附录 - - - 开发板介绍 - - - [Hi3516开发板介绍](quick-start/quickstart-standard-board-introduction-hi3516.md) - - - [RK3568开发板介绍](quick-start/quickstart-standard-board-introduction-rk3568.md) - - - [参考信息](quick-start/quickstart-standard-reference.md) - - - [使用HiTool烧录代码](quick-start/quickstart-standard-hitool.md) - - - [编译形态整体说明](quick-start/quickstart-build.md) + - [快速入门概述](quick-start/quickstart-overview.md) + - 基于IDE开发 + - 搭建开发环境 + - [搭建Windows环境](quick-start/quickstart-ide-env--win.md) + - [搭建Ubuntu环境](quick-start/quickstart-ide-env-ubuntu.md) + - [配置远程访问环境](quick-start/quickstart-ide-env-remote.md) + - [创建工程并获取源码](quick-start/quickstart-ide-import-project.md) + - 轻量系统(基于Hi3861开发板) + - [编写“Hello World”程序](quick-start/quickstart-ide-3861-helloworld.md) + - [编译](quick-start/quickstart-ide-3861-build.md) + - [烧录](quick-start/quickstart-ide-3861-burn.md) + - [运行](quick-start/quickstart-ide-3861-running.md) + - 小型系统(基于Hi3516开发板) + - [编写“Hello World”程序](quick-start/quickstart-ide-3516-helloworld.md) + - [编译](quick-start/quickstart-ide-3516-build.md) + - [烧录](quick-start/quickstart-ide-3516-burn.md) + - [运行](quick-start/quickstart-ide-3516-running.md) + - 标准系统(基于RK3568开发板) + - [编写“Hello World”程序](quick-start/quickstart-ide-3568-helloworld.md) + - [编译](quick-start/quickstart-ide-3568-build.md) + - [烧录](quick-start/quickstart-ide-3568-burn.md) + - [运行](quick-start/quickstart-ide-3568-running.md) + - 基于命令行开发 + - 搭建开发环境 + - [准备开发环境](quick-start/quickstart-pkg-prepare.md) + - [安装库和工具集](quick-start/quickstart-pkg-install_package.md) + - [获取源码](quick-start/quickstart-pkg-sourcecode.md) + - [安装编译工具](quick-start/quickstart-pkg-install_tool.md) + - 轻量系统(基于Hi3861开发板) + - [安装Hi3861开发板特有环境](quick-start/quickstart-pkg-3861-tool.md) + - [编写“Hello World”程序](quick-start/quickstart-pkg-3861-helloworld.md) + - [编译](quick-start/quickstart-pkg-3861-build.md) + - [烧录](quick-start/quickstart-pkg-3861-burn.md) + - [运行](quick-start/quickstart-pkg-3861-running.md) + - 小型系统(基于Hi3516开发板) + - [编写“Hello World”程序](quick-start/quickstart-pkg-3516-helloworld.md) + - [编译](quick-start/quickstart-pkg-3516-build.md) + - [烧录](quick-start/quickstart-pkg-3516-burn.md) + - [运行](quick-start/quickstart-pkg-3516-running.md) + - 标准系统(基于RK3568开发板) + - [编写“Hello World”程序](quick-start/quickstart-pkg-3568-helloworld.md) + - [编译](quick-start/quickstart-pkg-3568-build.md) + - [烧录](quick-start/quickstart-pkg-3568-burn.md) + - [运行](quick-start/quickstart-pkg-3568-running.md) + - 常用信息 + - [配置代理](quick-start/quickstart-pkg-common-proxy.md) + - [使用build.sh脚本编译源码](quick-start/quickstart-pkg-common-build.md) + - [hb安装异常处理](quick-start/quickstart-pkg-common-hberr.md) + - [编译异常处理](quick-start/quickstart-pkg-common-builderr.md) + - [烧录异常处理](quick-start/quickstart-pkg-common-burnerr.md) + - 附录 + - [Hi3516开发板介绍](quick-start/quickstart-appendix-hi3516.md) + - [Hi3861开发板介绍](quick-start/quickstart-appendix-hi3861.md) + - [RK3568开发板介绍](quick-start/quickstart-appendix-rk3568.md) + - [编译形态整体说明](quick-start/quickstart-appendix-compiledform.md) + - [Hi3516标准系统入门(IDE方式)](quick-start/quickstart-appendix-hi3516-ide.md) + - [Hi3516标准系统入门(命令行方式)](quick-start/quickstart-appendix-hi3516-pkg.md) + - [获取源码](get-code/sourcecode-acquire.md) - [隐私保护](security/security-privacy-protection.md) - [安全指南](security/security-guidelines-overall.md) +- 隐私和安全 + - [隐私保护](security/security-privacy-protection.md) + - [安全指南](security/security-guidelines-overall.md) - 移植 @@ -444,6 +310,7 @@ - [标准系统内核编译与构建指导](kernel/kernel-standard-build.md) - 内核增强特性 - [Enhanced SWAP特性介绍](kernel/kernel-standard-mm-eswap.md) + - [NewIP内核协议栈介绍](kernel/kernel-standard-newip.md) - 任务调度 - [关联线程组调度](kernel/kernel-standard-sched-rtg.md) - [CPU轻量级隔离](kernel/kernel-standard-sched-cpuisolation.md) @@ -579,6 +446,8 @@ - [IPC通信鉴权开发指导](subsystems/subsys-security-communicationverify.md) - [设备安全等级管理开发指导](subsystems/subsys-security-devicesecuritylevel.md) - [OpenHarmony通用密钥库系统开发指导](subsystems/subsys-security-huks-guide.md) + - [应用特权配置指导](subsystems/subsys-app-privilege-config-guide.md) + - [预置应用配置指导](subsystems/subsys-preinstall-app-config-guide.md) - 启动恢复 - [启动恢复子系统概述](subsystems/subsys-boot-overview.md) - init启动引导组件 @@ -623,13 +492,6 @@ - WLAN连接类产品 - [LED外设控制](guide/device-wlan-led-control.md) - [集成三方SDK](guide/device-wlan-sdk.md) - - 无屏摄像头类产品 - - 摄像头控制 - - [概述](guide/device-iotcamera-control-overview.md) - - 示例开发 - - [拍照开发指导](guide/device-iotcamera-control-demo-photodevguide.md) - - [录像开发指导](guide/device-iotcamera-control-demo-videodevguide.md) - - [应用实例](guide/device-iotcamera-control-example.md) - 带屏摄像头类产品 - 屏幕和摄像头控制 - [概述](guide/device-camera-control-overview.md) @@ -675,10 +537,9 @@ - [内核常见问题](faqs/faqs-kernel.md) - [移植常见问题](faqs/faqs-porting.md) - [启动恢复常见问题](faqs/faqs-startup.md) - - [系统应用常见问题](faqs/faqs-system-applications.md) - + - [系统应用常见问题](faqs/faqs-system-applications.md) - HDI接口参考 - - 模块 + - 模块 - [Audio](reference/hdi-apis/_audio.md) - [Battery](reference/hdi-apis/battery.md) - [Camera](reference/hdi-apis/_camera.md) @@ -901,4 +762,17 @@ - [VerifyAllocInfo](reference/hdi-apis/_verify_alloc_info.md) - [VibratorInterface](reference/hdi-apis/_vibrator_interface.md) - [VideoPortCap](reference/hdi-apis/_video_port_cap.md) - + + - CMSIS API参考 + - [CMSIS](reference/kernel/cmsis/_c_m_s_i_s-_r_t_o_s.md) + - 结构体 + - [osEventFlagsAttr_t](reference/kernel/cmsis/os_event_flags_attr__t.md) + - [osMemoryPoolAttr_t](reference/kernel/cmsis/os_memory_pool_attr__t.md) + - [osMessageQueueAttr_t](reference/kernel/cmsis/os_message_queue_attr__t.md) + - [osMutexAttr_t](reference/kernel/cmsis/os_mutex_attr__t.md) + - [osSemaphoreAttr_t](reference/kernel/cmsis/os_semaphore_attr__t.md) + - [osThreadAttr_t](reference/kernel/cmsis/os_thread_attr__t.md) + - [osTimerAttr_t](reference/kernel/cmsis/os_timer_attr__t.md) + - [osVersion_t](reference/kernel/cmsis/os_version__t.md) + + \ No newline at end of file