鸿蒙设备开发
文章平均质量分 75
连志安的博客
OpenHarmony龙芯架构SIG小组负责人,OpenHarmony教育工作组副组长,开源大师兄项目执行总监,
华为HDE专家,开放原子开源基金会2022开源贡献之星,广州市天河区软件协会专家委员,润和软件生态技术总监
出版书籍《物联网——嵌入式开发实战》。移植OpenHarmony到龙芯相关芯片,GD32,STM32芯片并开源。
展开
-
OpenHarmony 3.1 Release初体验 润和DAYU200开发套件
万众瞩目的OpenHarmony 3.1 Release版本终于发布了,相关技术特性可以查看文章:https://ost.51cto.com/posts/109271 固件下载手里刚好有一块DAYU200开发板,官方刚好有发布编译的固件,下载链接:https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-v3.1-release.md好家伙,下载下来后2个G。2 固件烧录DAYU200固件烧录原创 2022-03-31 18:38:51 · 1762 阅读 · 0 评论 -
基于润和DAYU200开发套件的OpenHarmony分布式音乐播放器
前言:DAYU200开发套件是润和软件推出的首款支持OpenHarmony富设备开发套件,目前已全面到货,可到如下全网指定官方购买链接购买:淘宝:https://item.taobao.com/item.htm?spm=a2126o.success.result.1.44984831HpwtGV&id=655971020101华为生态市场:https://developer.huawei.com/consumer/cn/market/prod-detail?productId=d0df2ab0原创 2022-03-14 09:05:09 · 2604 阅读 · 1 评论 -
史上最全的鸿蒙学习资料——润和满天星系列Pegasus资料汇总
1 开发套件介绍润和满天星系列Pegasus鸿蒙开发套件 首发于HDC 2020,是首批支持HarmonyOS 2.0的开发套件,亦是鸿蒙官方推荐套件,由润和软件HiHope量身打造,已在鸿蒙社区和广大鸿蒙开发者中得到广泛应用。2 资料仓库相关资料仓库链接:https://gitee.com/hihope_iot/Hihope_Pegasus_Doc/tree/master3 资料详情3.1 课程文档课程文档包含了最新版本的入门课程文档:3.2 课程文档配套例程提供了和第1部分的文档原创 2022-03-08 15:31:36 · 2260 阅读 · 0 评论 -
OpenHarmony鸿蒙 润和Pegasus套件样例--智能安防
润和Pegasus套件样例–智能安防该样例展示OpenHarmony智能安防项目,当温度传感器超过设定值后,或者烟雾传感器检测到烟雾时,会触发蜂鸣器工作、同时通知到HarmonyOS手机上的APP。下载源码建议将本教程的设备源码下载后,放在applications/sample/wifi-iot/app目录下:执行命令git clone https://gitee.com/hihope_iot/hispark-pegasus-sample/tree/master/30_samart_envir原创 2022-03-04 14:07:24 · 6722 阅读 · 0 评论 -
OpenHarmony 样例——鸿蒙小车开发
摘要:本文简单介绍鸿蒙系统 + Hi3861 的WiFi小车开发适合群体:适用于润和Hi3861开发板文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit13.1 小车介绍基于鸿蒙系统 + Hi3861 的WiFi小车首先,我们得有一套WiFi小车套件,其实也是Hi3861 加上电机、循迹模块、超声波等模块。小车安装完大概是这样:13.2 电机驱动我们这里先只做最简单的,驱动小车的电机,让小车跑起来。电机的驱动板如下图原创 2022-03-03 11:50:15 · 2539 阅读 · 1 评论 -
OpenHarmony开发样例——ADC多按键功能
摘要:本文简单介绍如何操作ADC去读取电压,并且实现开发板上3个ADC按键检测的功能适合群体:适用于润和Hi3861开发板,L0轻量系统驱动开发文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit6.1实验效果查看开发板,可以看到除了复位按键之外,还有3个按键。而查看原理,我们可以看到这个3个按键其实都是接的GPIO5 引脚,而GPIO5引脚又可复用为ADC2引脚。故而,我们可以猜测出来我们可以使用ADC检测电压,判断出来是哪原创 2022-03-03 11:38:54 · 1128 阅读 · 0 评论 -
从零开始移植OpenHarmony轻量系统
摘要:本文简单介绍OpenHarmony轻量系统移植,如何使用移植示例适合群体:想自己动手移植OpenHarmony轻量系统的朋友经过几天的努力,终于成功把最新版本的OpenHarmony轻量系统内核移植到ARM单片机上,现在代码开源、移植文章也完成7篇,后续会考虑增加视频讲解,直播。以便大家也可以自己移植。移植OpenHarmony轻量系统【1】移植思路移植OpenHarmony轻量系统【2】Board和SoC解耦的设计思路移植OpenHarmony轻量系统【3】Board、SOC、架构与代码对原创 2022-02-10 09:59:17 · 3265 阅读 · 1 评论 -
移植OpenHarmony轻量系统【7】烧录与验证
摘要:本文简单介绍OpenHarmony轻量系统移植,内核初始化和启动适合群体:想自己动手移植OpenHarmony轻量系统的朋友上一节我们已经完成的移植好了内核,hb build -f编译后,查看输出文件:out\gd32f303_lianzhian\gd32f303_lianzhian其中,OHOS_Image.bin 是我们要烧录的文件。这里我们使用jlink进行烧录,步骤如下:(1)下载JLinkARM_GD_Exclusive软件,打开JFlashARM.exe程序。(2)选择Op原创 2022-02-10 09:55:05 · 1425 阅读 · 0 评论 -
移植OpenHarmony轻量系统【6】内核初始化和启动
摘要:本文简单介绍OpenHarmony轻量系统移植,内核初始化和启动适合群体:想自己动手移植OpenHarmony轻量系统的朋友上一节我们已经实现了链接脚本和启动文件,现在代码可以进入main函数,接下来我们要初始化内核、启动内核。6.1 main函数Main函数位于:device\board\lianzhian\gd32f303_lianzhian\sdk可以看到,main函数的实现比较简单,先实现gpio和串口的初始化。接下来是比较重要的,我们要调用内核之前,需要先调用LOS_Kerne原创 2022-02-10 09:54:30 · 1331 阅读 · 0 评论 -
移植OpenHarmony轻量系统【5】newlibc库移植
摘要:本文简单介绍OpenHarmony轻量系统移植,libc库移植适合群体:想自己动手移植OpenHarmony轻量系统的朋友当前M核编译时上层组件与内核统一使用musl-C,位于//third_party/musl/porting/liteos_m/kernel/,内核当前的内部实现也是主要适配musl的结构体定义,但社区及三方厂商开发多使用公版工具链arm-none-eabi-gcc加上私有定制优化进行编译,考虑我们内核的易用性提升,故支持公版arm-none-eabi-gccC库编译内核运行原创 2022-02-10 09:53:51 · 1773 阅读 · 0 评论 -
移植OpenHarmony轻量系统【4】启动文件与链接
摘要:本文简单介绍OpenHarmony轻量系统移植,启动文件和链接适合群体:想自己动手移植OpenHarmony轻量系统的朋友上一节我们已经实现了大部分代码,现在我们需要实现启动文件和最终链接成可烧录到开发板的文件。4.1 ARM芯片移植轻量系统基础知识在做芯片移植工作之前,我们需要掌握一点点基础知识。(1)适配LiteOS-M轻量系统GD32F303系列器件是基于Arm® Cortex®-M4处理器的32位通用微控制器。所以我们使用的是内核是LiteOS-M,对应的是OpenHarmony轻原创 2022-02-10 09:53:07 · 1224 阅读 · 1 评论 -
移植OpenHarmony轻量系统【3】Board、SOC、架构与代码对应关系
摘要:本文简单介绍OpenHarmony轻量系统移植,Board和SoC与代码的对应关系适合群体:想自己动手移植OpenHarmony轻量系统的朋友上一节,我们已经添加了Board、SOC两个文件夹、由于我们所选的芯片是GD32F303,其架构(ARCH)为ARM cortex-M4,OpenHarmony已经支持了,所以不需要我们修改,整体文件夹如下:Arch文件夹如下:2.1 芯片和开发板分类其实不管是什么芯片、GD32F303也好、STM32F103也罢,他们都可以按照这个规则进行分类原创 2022-02-10 09:52:31 · 2366 阅读 · 0 评论 -
移植OpenHarmony轻量系统【2】Board和SoC解耦的设计思路
摘要:本文简单介绍OpenHarmony轻量系统移植,Board和SoC解耦的设计思路适合群体:想自己动手移植OpenHarmony轻量系统的朋友开始尝试讲解一下系统的移植,主要是轻量系统,也可能会顺便讲下L1移植。本节内容所有代码都在这个仓库下:https://gitee.com/qidiyun/openharmony-gd32f303-example/tree/master对应的是 01_vendor_soc_board2.1 hb编译原理当我们输入hb set命令后,会提示我们选择要原创 2022-02-10 09:51:50 · 1933 阅读 · 1 评论 -
移植OpenHarmony轻量系统【1】移植思路
摘要:本文简单介绍OpenHarmony轻量系统移植,会分多篇适合群体:想自己动手移植OpenHarmony轻量系统的朋友开始尝试讲解一下系统的移植,主要是轻量系统,也可能会顺便讲下L1移植。1.1移植类型OpenHarmony轻量系统的移植比较简单,代码中解耦做得非常好。从代码的设计理念上来看,移植主要是3部分的内容:(1)ARCH部分的代码(2)SoC部分的代码(3)board级的代码从上至下我们可以用一张图来做对比:ARCH也就是架构,例如ARM架构、RISC-V架构.原创 2022-02-10 09:49:57 · 2563 阅读 · 4 评论 -
OpenHarmony轻量系统开发【14】使用语音控制鸿蒙小车
摘要:本文简单介绍如何使用语音控制鸿蒙小车适合群体:适用于润和Hi3861开发板文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit14.1 讯飞语音识别之前我们已经有一篇文章讲了如何驱动鸿蒙小车,通过网络控制小车的运行。基于鸿蒙系统 + Hi3861 的wifi小车,可以通过电脑、手机控制这一篇我们来试点不一样的:使用语音控制鸿蒙小车。附件提供可以直接烧录的鸿蒙镜像、修改后的手机java源码。另.原创 2022-02-10 09:45:38 · 5017 阅读 · 1 评论 -
OpenHarmony轻量系统开发【13】鸿蒙小车开发
摘要:本文简单介绍鸿蒙系统 + Hi3861 的WiFi小车开发适合群体:适用于润和Hi3861开发板文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit13.1 小车介绍基于鸿蒙系统 + Hi3861 的WiFi小车首先,我们得有一套WiFi小车套件,其实也是Hi3861 加上电机、循迹模块、超声波等模块。小车安装完大概是这样:13.2 电机驱动我们这里先只做最简单的,驱动小车的电机,让小车.原创 2022-02-10 09:44:50 · 956 阅读 · 1 评论 -
OpenHarmony轻量系统开发【12】OneNET云接入
摘要:本文简单介绍如何接入OneNET云平台适合群体:适用于润和Hi3861开发板文中所有代码仓库:OpenHarmony润和3861智能家居套件代码仓库: 润和3861智能家居套件代码仓库12.1 OneNET云介绍通常来说,一个物联网产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植MQTT协议、OneNET接入协议,实现手机APP、网页两者都可以远程(跨网络,不是局域网的)访问开发板数据,并控制开发板的功能。理论上来说,任何以MQTT协议为基础的物联网云平台都可以支持接入。关原创 2022-02-10 09:42:46 · 4305 阅读 · 1 评论 -
OpenHarmony轻量系统开发【11】移植MQTT
摘要:本文简单介绍如何移植MQTT适合群体:适用于润和Hi3861开发板文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit11.1 MQTT介绍MQTT 是当前最主流的物联网通信协议,需要物联网云平台,例如华为云、阿里云、移动OneNET都支持mqtt。而Hi3861则是一款专为IoT应用场景打造的芯片。本节主要讲如何在鸿蒙系统中通过移植第3方软件包 paho mqtt去实现MQTT协议功能,最后会给出测试验证。为后续的物联网项原创 2022-01-26 18:02:31 · 4619 阅读 · 2 评论 -
OpenHarmony轻量系统开发【10】编写自己的软件包
摘要:本文简单介绍Hi3861WiFi操作,怎么连接到热点,查看IP,ping服务器等适合群体:适用于润和Hi3861开发板文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit10.1 添加第一个a_myparty软件包打开鸿蒙系统的源码,可以看到有这么一个文件夹:third_party。里面存放的是第三方的代码。点开我们可以看到有很多第三方代码:后续我们如果需要往系统中添加、移植任何开源代码,都可以添加到这个文件夹中。接原创 2022-01-26 18:01:47 · 688 阅读 · 1 评论 -
OpenHarmony轻量系统开发【9】WiFi之STA模式连接热点
摘要:本文简单介绍Hi3861WiFi操作,怎么连接到热点,查看IP,ping服务器等适合群体:适用于润和Hi3861开发板文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit9.1AT指令操作WiFi我们可以使用AT指令进行Hi3861 WiFi操作,连接热点、ping服务器等。但是很多时候,我们需要实现开机后自动连接到某个热点,光靠AT指令不行。Hi3861 为我们提供了WiFi操作的相关API,方便我们编写代码,实现热原创 2022-01-26 18:01:00 · 1917 阅读 · 0 评论 -
OpenHarmony轻量系统开发【8】其它驱动开发示例
春节不停更,此文正在参加「星光计划-春节更帖活动」https://harmonyos.51cto.com/posts/9923摘要:本文简单介绍Hi3861其他驱动的开发示例、包括PWM、SPI、SDIO等。适合群体:适用于润和Hi3861开发板,L0轻量系统驱动开发文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit8.1代码示例OpenHarmony代码中,Hi3861提供了绝大部分的驱动示例代码,文件路径:device\原创 2022-01-26 18:00:15 · 1572 阅读 · 0 评论 -
OpenHarmony轻量系统开发【7】驱动之I2C显示OLED屏幕
摘要:本文简单介绍如何操作I2C去显示OLED屏幕,并且实现动画播放、中文英文显示、绘图等功能适合群体:适用于润和Hi3861开发板,L0轻量系统驱动开发文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit本文参考许思维老师的文章,许思维老师主页是:https://harmonyos.51cto.com/user/posts/6631823感谢许思维老师~7.1实验效果Hispark WiFi开发套件又..原创 2022-01-26 17:59:38 · 1580 阅读 · 0 评论 -
OpenHarmony轻量系统开发【6】驱动之ADC按键
摘要:本文简单介绍如何操作ADC去读取电压,并且实现开发板上3个ADC按键检测的功能适合群体:适用于润和Hi3861开发板,L0轻量系统驱动开发文中所有代码仓库:https://gitee.com/qidiyun/hihope-3861-smart-home-kit6.1实验效果查看开发板,可以看到除了复位按键之外,还有3个按键。而查看原理,我们可以看到这个3个按键其实都是接的GPIO5 引脚,而GPIO5引脚又可复用为ADC2引脚。故而,我们可以猜测出来我们可以使用ADC检测.原创 2022-01-26 17:57:55 · 566 阅读 · 0 评论 -
OpenHarmony轻量系统开发【5】驱动之GPIO点灯
摘要:本文简单介绍如何操作GPIO去点灯适合群体:适用于Hi3861开发板,L0轻量系统驱动开发5.1点灯例程源码先看最简单得LED灯闪烁操作源码结构如下:第一个BUILD.gn文件内容:static_library("led_demo") { sources = [ "led_demo.c" ] include_dirs = [ "//utils/native/lite/include",原创 2022-01-26 17:55:06 · 1430 阅读 · 0 评论 -
OpenHarmony轻量系统开发【4】编写第一个程序、启动流程分析
摘要:本文简单介绍如何编写第一个hello world程序,以及程序是被执行的适合群体:适用于Hi3861开发板,启动流程分析4.1编写第一个程序编写一个hello world程序比较简单,可以参考官网:https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3861-application-framework.md本文在这里做下总结:.原创 2022-01-26 17:53:47 · 2459 阅读 · 1 评论 -
OpenHarmony轻量系统开发【3】代码编译和烧录
摘要:本文简单介绍OpenHarmony最新版本代码目录简单解读、编译、烧录适合群体:适用于Hi3861开发板3.1源码目录下载完代码后,大家可以进入代码目录:这里重点介绍几个比较重要的文件夹:1 vendor文件夹该文件夹存放的是厂商相关的配置,包括组件配置、HDF相关配置,代码目录如下:可以看到有hisilicon文件夹,下面有Hi3516DV300、hispark_aries等,其中hi3861开发板对应的是hispark_pegasus里面有如下文件:其中比较重要的是 con原创 2022-01-26 17:52:41 · 2527 阅读 · 0 评论 -
OpenHarmony轻量系统开发【2】源码下载和开发环境
摘要:本文简单介绍OpenHarmony开发环境,代码下载、版本更新日志等。适合群体:想要上手开发OpenHarmony设备2.1源码下载关于源码下载的,读者可以直接查看官网:https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/quickstart-lite-sourcecode-acquire.md本文这里做下总结:(1)注册码云gitee账号。(2)注册码云SSH公钥,具体可以百度(3)安原创 2022-01-26 17:51:18 · 3564 阅读 · 0 评论 -
OpenHarmony轻量系统开发【1】初始OpenHarmony
摘要:本文简单介绍OpenHarmony、轻量系统、小型系统、标准系统的差异,以及相关的官方资料和文档适合群体:第一次接触OpenHarmony、或者想要对OpenHarmony有一个全面的认知的。1.1系统类型OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目,目标是面向全场景、全连接、全智能时代,基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。官方gitee仓库:OpenHarmony: OpenHa原创 2022-01-26 17:49:34 · 6082 阅读 · 1 评论 -
【汇总】OpenHarmony轻量系统开发【0】目录和个人感悟
前言还记得2020年9月OpenHarmony大会后,我开始在社区写了一些OpenHarmony轻量系统开发的文章,基于Hi3861。转眼已经过去那么久了。OpenHarmony从过去的1.0版本,演变到了现在的3.1版本。于是决定重新开启篇章,针对3.0以上的版本,写一系列的文章。开发板:润和Hi3861开发套件代码仓库:润和3861智能家居套件代码仓库: 润和3861智能家居套件代码仓库适合人群:刚入门想学习OpenHarmony轻量系统的难度:简单系统类型:OpenHarmony轻量系统版本原创 2022-01-26 17:48:22 · 1839 阅读 · 0 评论