华为IOT物联网平台--LiteOS和LiteOS SDK基础介绍

简介

Huawei LiteOS是华为面向物联网领域开发的一个基于实时内核的轻量级操做系统。本项目属于华为物联网操做系统Huawei LiteOS源码,现有基础内核支持任务管理、内存管理、时间管理、通讯机制、中断管理、队列管理、事件管理、定时器等操做系统基础组件,更好地支持低功耗场景,支持tickless机制,支持定时器对齐。git

同时(经过LiteOS SDK)提供端云协同能力,集成了LwM2M、CoAP、mbedtls、LwIP全套IoT互联协议栈,且在LwM2M的基础上,提供了AgentTiny模块,用户只需关注自身的应用,而没必要关注LwM2M实现细节,直接使用AgentTiny封装的接口便可简单快速实现与云平台安全可靠的链接。github

Huawei LiteOS自开源社区发布以来,围绕NB-IoT物联网市场从技术、生态、解决方案、商用支持等多维度使能合做伙伴,构建开源的物联网生态,目前已经聚合了30+ MCU和解决方案合做伙伴,共同推出一批开源开发套件和行业解决方案,帮助众多行业客户快速的推出物联网终端和服务,客户涵盖抄表、停车、路灯、环保、共享单车、物流等众多行业,为开发者提供 “一站式” 完整软件平台,有效下降开发门槛、缩短开发周期。安全

 

LiteOS的内核和SDK

LiteOS Kernel

LiteOS Kernel是Huawei LiteOS 操做系统基础内核,包括任务管理、内存管理、时间管理、通讯机制、中断管理、队列管理、事件管理、定时器等操做系统基础组件,能够单独运行。网络

  • 高实时性,高稳定性
  • 超小内核,基础内核体积能够裁剪至不到10K
  • 低功耗
  • 支持功能静态裁剪

LiteOS SDK

LiteOS SDK 是 Huawei LiteOS 软件开发工具包(Software Development Kit),包括端云互通组件,FOTA,JS引擎、传感器框架等内容(由于LiteOS SDK预集成了Agent Tiny,见下图)。架构

下图是SDK的架构图框架

LiteOS SDK针对“单模组、单MCU”和“外置MCU+模组”两种应用场景,提供了不一样的软件架构,见下面两个图。less

 

 

对于外置MCU+模组的场景,LiteOS SDK端云互通组件还提供了AT 命令适配层,用于对AT命令作解析。这是两种模式不同的地方。外置MCU是整个设备的主MCU,负责与周围传感器对接;芯片和模组这部分主要是提供云端联网能力,好比外置的NB-IOT模组。工具

LiteOS SDK支持NB-IoT、2/3/4G、有线网络等。开发工具

 

LiteOS支持的硬件

LiteOS开源项目目前支持 ARM Cortex-M0,Cortex-M3,Cortex-M4,Cortex-M7 等芯片架构,适配了30多种开发板,其中包括ST、NXP、GD、MIDMOTION、SILICON、ATMEL等主流厂商的开发板(来自华为官方)。spa

ST

  • STM32L053R8Tx
  • STM32F103RB
  • STM32F411RE
  • STM32F412ZG
  • STM32F429ZI
  • STM32F429IG
  • STM32L476RG
  • STM32F746ZG

NXP

  • LPC824
  • LPC54110
  • FRDM-KW41Z
  • FRDM_KL26Z

小结

华为的LiteOS系统尽管是开源的,但只是开源了内核的一部分(无可厚非),并且他们的一些开发文档存在不全和错误,好比温湿度传感器的例子只有标题没有内容。毕竟目前华为的LiteOS还主要是面向合做伙伴,而非广大开发者。

另外须要注意,华为的LiteOS分为了两部分,分别是LiteOS Kernel和LiteOS SDK,前者是设备控制端,后者是负责云端通信协议