0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【入门必看】零基础学鸿蒙系统设备开发,从入门到12大物联网项目实战

华清远见工控 2024-09-20 15:58 次阅读

01 OpenHarmony简介

OpenHarmony是一款面向全场景的开源分布式操作系统,是开放原子开源基金会旗下开源项目。OpenHarmony 在传统的单设备系统能力的基础上,创造性地提出了基于同一套系统能力、适配多种终端形态的理念,旨在为不同设备提供统一的操作系统底座,支持多种终端设备的互联互通和协同工作。针对设备开发者,OpenHarmony 采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求,全面覆盖ARMRISC-V、x86 等多种CPU

OpenHarmony 整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照 “系统> 子系统 > 功能 / 模块” 逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或功能 / 模块。OpenHarmony 技术架构如下所示。

wKgZombtKyiAHqIzAAHiklbwkVI834.png

OpenHarmony是支撑整个鸿蒙生态的技术基础设施,OpenHarmony的开源属性吸引了众多企业、开发者、高校和研究机构的参与,共同推动其技术进步和生态繁荣。众多基于OpenHarmony开发的操作系统版本和行业解决方案不断涌现,覆盖了智能家居工业物联网、教育、医疗等多个领域,进一步拓宽了鸿蒙生态的应用场景和市场边界。

02 鸿蒙开发的两大方向

鸿蒙开发主要分为设备开发和应用开发两个方向,也叫南向开发和北向开发:

鸿蒙设备开发(南向开发),要侧重于硬件层面的开发,涉及硬件接口控制、设备驱动开发、鸿蒙系统内核开发等,目的是使硬件设备能够兼容并运行鸿蒙系统,或者开发具有特定功能的物联网(IoT)设备,需要开发者具备一定的硬件知识、嵌入式系统开发能力以及对鸿蒙操作系统内核的熟悉度;

鸿蒙应用开发(北向开发),主要侧重于应用层的开发,如APP开发、用户界面设计等,更多地关注用户体验、应用性能优化、上层业务逻辑的实现,需要开发者具备基本的编程知识、对操作系统原理的简单理解,以及一定的UI设计感。

wKgaombtKx6APnnTAABxMc7nUV086.jpeg

无论是设备开发还是应用开发,鸿蒙开发方向均展现出良好的发展空间,尤其是对于能够跨领域工作,既懂南向底层技术又了解北向应用开发的复合型人才,其价值将进一步凸显。鸿蒙的生态建设正逐步完善,吸引了众多开发者和企业的加入,前景广阔。

对于嵌入式、物联网、硬件、单片机爱好者而言,可以学习鸿蒙设备开发方向;对于想往软件方向发展,比如之前做Android开发的用户来说,可以学习鸿蒙应用开发。

本文主要以华清远见的Hi3861鸿蒙开发板为硬件平台,讲解如何快速学习鸿蒙设备及物联网开发,为初学者提供"零基础入门->项目实战->单片机拓展"的完整学习路线。

wKgZombtKyiAcjjZAAGrAN_b7yY76.jpeg

03 鸿蒙设备开发第一步

对于初探鸿蒙设备开发领域的学习者而言,拥有一块得力的开发板是学习的第一步,入手一块Hi3861或其他支持鸿蒙的开发板,跟随教程完成一些基础的硬件控制和系统调用练习。

Hi3861鸿蒙开发板的用处

Hi3861鸿蒙开发板,是专为鸿蒙设备开发设计的学习和实验平台,非常适合作为学习鸿蒙设备开发的入门开发板。可以学习鸿蒙系统在硬件设备上的部署、驱动开发、通信协议实现等,帮助开发者深入了解鸿蒙系统在物联网领域的应用,以及如何基于鸿蒙系统进行设备开发和应用创新。

难不难学,我能不能学会?

华清远见Hi3861鸿蒙开发板的整个学习,因为并不太涉及底层代码,且开发板配套了全套的开发教程、视频课程及丰富的项目案例,所以学习起来并不难(比STM32单片机学习起来更容易)。

按照开发板提供的教程和视频,搭建完开发环境,学习使用hi3861接口去控制一些外设,了解鸿蒙系统的一些基本使用,再了解下WiFi、MQTT等网络开发,以及华为云接入这些内容,就OK,1个月左右就可以搞定的。

需要什么样的基础?

主要就是C语言基础,如果有单片机开发经验,学起来就更容易了。没有单片机经验的用户,也不用担心。Hi3861主要是通过函数调用接口,不涉及寄存器之类。

04 鸿蒙设备及物联网开发学习路线

(1)入门阶段:鸿蒙系统学习

用Hi3861开发板,进行鸿蒙物联网操作系统学习,包括传感器应用、系统原理、物联网开发、华为云。

  • 开发环境搭建

在学习OpenHarmony系统之前,需要搭建好开发环境,这是我们开发的第一步,也是打开学习大门的垫脚石。我们需要在Windows系统中安装Visual Studio Code及其插件,以及华为的DevEco Device Tool开发环境。有了这种编译器和各种插件的加持,编写代码会清晰方便很多。

  • 硬件驱动开发

鸿蒙硬件驱动开发主要是确保操作系统能够与各种硬件设备顺畅通信。我们使用OpenHarmonyOS系统,一定要先学习PWM、GPIO等外设的使用,可以控制一些简单的设备。需要学习OpenHarmonyOS系统基本的外设使用机制,再去学习常见的通讯接口,比如串口、IIC、SPI等,然后就可以进行驱动开发板上相关的传感器,比如LED、蜂鸣器、温湿度传感器、三合一传感器、显示屏以及NFC控制器等。

驱动框架 HDF(Hardware Driver Foundation)

HDF是OpenHarmony中用于传感器和其他硬件设备驱动开发的框架,它提供了一套标准化的驱动模型和开发工具,帮助开发者更高效地编写兼容性好、易维护的驱动程序。HDF简化了驱动的开发、调试和升级过程,提高了驱动的可复用性和兼容性,并且支持动态加载和卸载驱动。

  • 鸿蒙内核开发

鸿蒙内核开发主要是设计与优化LiteOS微内核,实现高效的任务调度、安全的并发控制和通信机制,以及硬件适配与资源管理,为鸿蒙操作系统提供强大、安全、低延迟的底层支撑。课程内容包括任务调度和管理(创建任务、删除任务、挂起任务、启动任务),同步与通信机制(软件定时器信号量、互斥锁、消息队列)等。

  • 鸿蒙网络开发

鸿蒙网络开发专注于利用鸿蒙操作系统提供的网络通信能力来实现设备间的连接与数据交换,特别是在物联网(IoT)场景下。课程内容主要包括WiFi组网、MQTT协议、TCP/UDP通信、接入华为IOTDA平台等。

(2)项目阶段:鸿蒙物联网项目实战

在掌握了基础开发技能后,可以尝试开发简单的物联网应用。我们提供智能照明灯、智能安防报警、智慧农业、智能温度计、智能测距仪、倒车雷达、智能小车、智能指纹锁、智能垃圾桶、语音控制智能小车、智慧农业与安防控制、车辆感知与定位12大鸿蒙物联网综合应用项目实战。

通过这些实战项目,初学者可以快速积累鸿蒙设备开发的实战经验,加深对鸿蒙系统及其物联网应用的理解。这些项目也非常适合高校教学、学生毕设、创新竞赛及个人项目练手。

05 拓展学习:单片机协作开发(可选)

我们发现,鸿蒙设备开发学习用户里,有部分用户,单片机方面是比较薄弱的,所以我们提供了一系列单片机入门及项目实战课程,帮助初学者更好的提升单片机开发能力。

在毕设、竞赛及高校教学的场合下,一个项目组,要完成鸿蒙智能硬件开发,可以有更好的分工。有的负责单片机控制(传感器数据采集与电机控制等),有的负责鸿蒙系统RTOS以及网络开发,还有负责微信小程序开发,这样的项目综合性也比较强,也比较锻炼团队协作及多技术方向学习。

(1)单片机开发入门

适合小白阶段,用电机驱动板,进行单片机入门、电机控制、总线通讯-协议学习。以项目协作式的开发思维去看:Hi3861鸿蒙开发板专注于鸿蒙系统RTOS以及网络任务,电机驱动板进行单片机的入门学习,专注于传感器数据采集与电机控制。主要通过学习STM32G0驱动板裸机开发,掌握底层相关控制,从而更好地和Hi3861相结合,进行后续的综合项目。

(2)单片机项目实战

以超声波测距模块的设计为案例,真实还原企业项目开发流程,从项目来源--需求分析--硬件设计选型--原理图设计--调试编程,并在项目实战过程中,手把手带你学单片机开发,包括GPIO/串口通信/中断/定时器/PWM/DMA/ADC等的技术讲解及实战应用。

06 华清远见Hi3861鸿蒙开发板亮点及优势

FS-Hi3861鸿蒙开发板,是华清远见研发的一款用于鸿蒙设备开发及鸿蒙物联网开发学习的开发板。

丰富的硬件配置及创新模块:

华清远见Hi3861鸿蒙开发板采用华为海思Hi3861V100芯片为主控,内置WiFi功能,支持OpenHarmony系统。板载丰富的模块,包括传感器、执行器、NFC、显示屏等,还有丰富的项目拓展模块,包括电机驱动板、超声波测距模块、智能小车、指纹识别模块、语音控制模块、农业安防模块、雷达控制模块、移动定位模块等。为开发者提供了广泛的应用拓展空间。

wKgaombtKyiAb4F-AAG9MoBWpS0320.png

点击添加图片描述(最多60个字)

易于上手的入门学习资源:

华清远见Hi3861鸿蒙开发板,配套丰富的入门学习资料,包括开发教程、视频课程、项目文档、实验及项目源码、系统镜像、工具软件、原理图、芯片手册等,涉及基础入门+进阶提升+项目实战+单片机拓展学习。

全面的项目案例库:

提供12大物联网综合应用项目,覆盖了硬件接口开发、传感器数据采集、鸿蒙系统开发、NFC配网、WiFi网络开发、MQTT协议、华为云接入、微信小程序开发等多个知识点。非常适合高校教学、学生毕设、创新竞赛及个人开发学习实战。

wKgaombtKyiAFG2zAAQKTIpEEPU574.png

嵌入式大赛海思赛道官方推荐平台:

华为海思连续多年参与嵌入式芯片与系统设计竞赛,华清远见FS-Hi3861鸿蒙物联网开发板连续两年作为该赛道官方指定的竞赛硬件平台之一,助力参赛者打造高品质创新项目。

wKgZombtKyiATYhSAAF53NY38RI88.jpeg

点击添加图片描述(最多60个字)

07 鸿蒙设备开发现状及前景

鸿蒙设备开发人才需求情况

当前,随着鸿蒙生态的推广,市场上对熟悉鸿蒙系统、具备设备开发能力的人才需求在稳步增长。岗位涵盖物联网工程师嵌入式软件工程师、系统架构师等方向,涉及智能家居、智能穿戴、车联网等多个领域的企业。

鸿蒙设备开发人才方向主要包括但不限于以下几个岗位:

  • 鸿蒙系统开发工程师:负责鸿蒙操作系统的定制与优化,包括图形框架设计、系统调测、性能调优、新特性开发等。需掌握操作系统内核、驱动开发、系统架构等技能。
  • 嵌入式软件工程师:专注于鸿蒙系统在特定硬件平台上的移植、适配与驱动开发,保证系统稳定运行和高效性能。
  • 嵌入式硬件工程师:与软件团队紧密协作,设计和优化硬件组件,以完美支持鸿蒙系统,涉及电路设计、传感器集成、电源管理等。
  • 物联网(IoT)开发工程师:基于鸿蒙系统开发物联网设备的软件栈,包括协议栈、设备互联互通、云平台接口对接等。
  • 驱动开发工程师:专注于鸿蒙系统下各类硬件设备驱动的开发与维护,确保设备与系统的高效通信。
  • 鸿蒙开发架构师:负责鸿蒙系统应用及系统架构设计,优化系统性能,解决关键技术难题,指导团队进行高效开发。
  • 安全工程师:负责鸿蒙系统及其设备的安全架构设计、安全模块开发、漏洞检测与修复,保障系统安全。
  • 测试工程师:负责鸿蒙设备的软件和硬件测试,包括功能测试、性能测试、稳定性测试等,确保产品质量。

招聘鸿蒙设备开发人才的公司主要有:

  • 华为技术有限公司:作为鸿蒙系统的开发者,华为是招聘此类人才的主要公司之一,提供从操作系统开发到应用开发的广泛岗位。
  • 京东集团:也在积极招募鸿蒙开发人才,特别是在软件应用的架构设计与开发领域。
  • 其他科技公司与初创企业:鉴于鸿蒙系统在物联网领域的潜力,许多专注于智能家居、智能穿戴、工业物联网等领域的公司也开始招聘鸿蒙设备开发人才,以快速布局鸿蒙生态。

此外,许多第三方应用开发商、解决方案提供商、硬件制造商以及与华为有合作关系的公司都在寻求具备鸿蒙系统开发能力的人才,以适应市场对鸿蒙设备和应用的快速增长需求。

鸿蒙设备开发的未来趋势

鸿蒙系统在物联网、智能家居、智能穿戴设备等领域的广泛应用,以及华为和合作企业对鸿蒙系统定制化、硬件适配等工作的推进,可以推测鸿蒙设备开发人才未来也将面临较大需求。鸿蒙设备开发即南向开发人才,如驱动开发工程师、系统定制工程师等,在构建鸿蒙生态的底层基础设施中扮演了非常关键的角色。能够开发兼容鸿蒙系统的新型智能设备或优化现有设备使其更好地融入鸿蒙生态的开发者,将处于技术和市场需求的交汇点。

随着鸿蒙生态的不断壮大,未来设备开发将更加注重跨设备的融合体验和智能化场景的构建。物联网、智能家居、智能穿戴设备、工业物联网等领域将是鸿蒙设备开发的重要方向,同时也将推动边缘计算、AI集成等先进技术的应用。

08 常见问题

OpenHarmony与HarmonyOS的区别?

OpenHarmony 是一个开源项目,它是鸿蒙操作系统的基础版本,提供了一个全面的、基于微内核的分布式操作系统框架。OpenHarmony 主要包含操作系统的最基础部分,任何个人或组织都可以基于 OpenHarmony 进行二次开发和创新,类似于 Android。

HarmonyOS,则是华为基于 OpenHarmony 开源项目进一步开发的面向不同设备的商业化操作系统。它包含了 OpenHarmony 的所有基础能力,并加入了华为自研的HMS服务、UI 框架、系统应用以及一系列优化和增强功能,为用户提供完整的、经过严格测试和优化的商业级操作系统体验。HarmonyOS 主要应用于华为的各种智能设备,包括手机、平板、智能穿戴设备、智慧屏等,旨在实现不同设备之间的无缝协同,同时也向第三方合作伙伴的设备开放。

LiteOS与OpenHarmony的关系?

LiteOS 是华为开发的一款轻量级实时操作系统,特别适合物联网(IoT)设备,强调低功耗、快速启动和小体积。在 OpenHarmony 中,LiteOS 被用作其中一个可选的内核之一,尤其是在资源受限的设备上,如微控制器单元(MCU)等。这意味着 OpenHarmony 在设计时考虑到了不同应用场景的需求,可以根据设备的硬件能力选择使用 LiteOS 或 Linux 作为中央内核,以达到最佳的系统性能和资源利用效率。

因此,LiteOS 与 OpenHarmony 是一种组件与平台的关系,LiteOS 作为组件之一集成在 OpenHarmony 中,为特定类型的物联网设备提供运行时支持。而 OpenHarmony 则是一个更大的生态系统,它不仅包含了 LiteOS,还包含了更多系统服务和框架层内容,以及支持多种设备和场景的应用开发能力。

OpenHarmony里的LiteOS是否为完整版LiteOS?

OpenHarmony中的LiteOS实际上并不是指一个“完整版”的LiteOS,而是根据OpenHarmony的需求和架构进行定制和集成的LiteOS内核版本。OpenHarmony会根据系统类型(如标准系统、小型系统等)和目标设备的需求,对LiteOS进行相应的功能裁剪和优化,使其更适合于特定的硬件平台和应用场景。因此,OpenHarmony中的LiteOS更像是LiteOS的一个定制版或增强版,这种定制化使得LiteOS在OpenHarmony中能够更好地服务于物联网设备,同时保持系统的轻量化和高效性。

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

    关注

    2900

    文章

    43911

    浏览量

    369597
  • 开发板
    +关注

    关注

    25

    文章

    4859

    浏览量

    96944
  • OpenHarmony
    +关注

    关注

    25

    文章

    3626

    浏览量

    16018
收藏 人收藏

    评论

    相关推荐

    【书籍评测活动NO.47】HarmonyOS NEXT启程:零基础构建纯血鸿蒙应用

    。 《HarmonyOS NEXT启程:零基础构建纯血鸿蒙应用》 的出现恰恰能够解决这一难题。 本书为开发者提供了基础进阶的全面指导,
    发表于 10-14 14:36

    入门?毕设?竞赛?项目练手?STM32/嵌入式/联网学习,有这几款开发板就够了!

    针对STM32单片机、嵌入式Linux、联网初学者,我们精心梳理了入门项目进阶”完整学习
    的头像 发表于 10-10 16:31 209次阅读
    <b class='flag-5'>入门</b>?毕设?竞赛?<b class='flag-5'>项目</b>练手?STM32/嵌入式/<b class='flag-5'>物</b><b class='flag-5'>联网</b>学习,有这几款<b class='flag-5'>开发</b>板就够了!

    【全新课程资料】正点原子《基于GD32 ARM32单片机项目实战入门》培训课程资料上线!

    软件使用、模块基础驱动和多个实战项目等等!全面讲解基础实战应用的全套内容,让大家学以致用! 基础部分:
    发表于 09-24 18:06

    【全新课程资料】正点原子《ESP32基础及项目实战入门》培训课程资料上线!

    您逐步实现功能,提高编程能力 四、适合群体 本课程会基础入门过渡到项目实战,层层递进,因此非常适合以下人群学习: (1)在校学生 (2)刚入职场的新晋工程师 (3)想转岗ESP32
    发表于 09-24 17:59

    【全新课程资料】正点原子《ESP32联网项目实战》培训课程资料上线!

    ,解决ESP32联网项目入门难的问题; 2、综合应用基础知识,提高项目实战能力,解决眼高手低的
    发表于 09-24 17:05

    【免费分享】OpenHarmony鸿蒙联网开发板资料包一网打尽,附教程/视频/项目/源码...

    开始,快速掌握鸿蒙设备及物联网开发技能。后台私信小雯老师,回复“鸿蒙”即可领取!一、资料内容
    的头像 发表于 09-14 14:09 310次阅读
    【免费分享】OpenHarmony<b class='flag-5'>鸿蒙</b><b class='flag-5'>物</b><b class='flag-5'>联网</b><b class='flag-5'>开发</b>板资料包一网打尽,附教程/视频/<b class='flag-5'>项目</b>/源码...

    新书推荐 | TSMaster开发入门精通

    书名:TSMaster开发入门精通书号:9787302667193作者:杨金升刘矗刘功申定价:99.80元《CANoe开发
    的头像 发表于 08-30 12:37 282次阅读
    新书推荐 | TSMaster<b class='flag-5'>开发</b><b class='flag-5'>从</b><b class='flag-5'>入门</b><b class='flag-5'>到</b>精通

    鸿蒙的1万个理由,北京中关村现大幅鸿蒙海报

    的 『点赞和评论』,才是我创造的动力。 关注小编,同时可以期待后续文章ing?,不定期分享原创知识。 更多鸿蒙最新技术知识点,请关注作者博客:鸿蒙实战经验分享:鸿蒙基础
    发表于 05-08 20:31

    零基础小白适不适合鸿蒙开发

    在互联网不断发展以及万互联时代的开启过程中,鸿蒙操作系统的出现无疑是技术领域的一次重大突破。鸿蒙操作
    的头像 发表于 03-04 17:50 1800次阅读
    <b class='flag-5'>零基</b>础小白适不适合<b class='flag-5'>学</b><b class='flag-5'>鸿蒙</b><b class='flag-5'>开发</b>?

    鸿蒙实战项目开发:【短信服务】

    、OpenHarmony 多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发鸿蒙项目实战等等)鸿蒙(Harmon
    发表于 03-03 21:29

    盘点那些硬件+项目学习套件:STM32U5单片机开发板及入门常见问题解答

    非常丰富的基础教学视频及七大综合项目案例,可以学习鸿蒙系统设备开发鸿蒙
    发表于 02-19 16:59

    盘点那些硬件+项目学习套件:Hi3861鸿蒙开发板及入门常见问题解答

    ,一个是鸿蒙应用开发,一个是鸿蒙设备开发。我们的Hi3861鸿蒙
    发表于 02-01 16:55

    盘点那些硬件+项目学习套件:STM32MP157 Linux开发板及入门常见问题解答

    、资源扩展板等丰富的扩展模块,可拓展联网、人工智能等相关技术学习,还可以拓展丰富的项目实战,非常贴合企业当下开发需求,是一款嵌入式Linu
    发表于 02-01 14:25

    零基入门 Hyperlynx 仿真教程

    电子发烧友网站提供《零基入门 Hyperlynx 仿真教程.pdf》资料免费下载
    发表于 12-22 10:49 28次下载

    javaweb入门实战

    JavaWeb是一门使用Java语言开发Web应用程序的技术,它广泛应用于各种网站和在线应用程序的开发。对于想要学习和使用JavaWeb技术的开发者来说,
    的头像 发表于 12-03 11:44 1448次阅读