tuyaos开发教程-嵌入式开发套件

三明治开发社区 三明治开发社区     2022-11-13     626

关键词:

0. 前言

​ 智能时代的到来,让物与人的关系、物与物的关系更加密切。但是物联网行业种类复杂、接入环节冗长、设备规模以及数据量庞大等,都成为了物联网发展的难点。为此,涂鸦推出了一系列应用于IoT 领域的开发套件, 降低了开发者进入物联网领域的技术门槛。该开发套件主要包括 TuyaOS 操作系统TuyaOS EasyGO 开发资料包以及 Tuya Wind IDE 集成开发环境

1. TuyaOS

1.1. 简介

​ TuyaOS 是一种面向全连接、全场景的分布式跨平台操作系统。TuyaOS 操作系统是基于 RTOS、Linux、Non-OS 等内核设计的、应用于 IoT 领域。开发者只需专注于自身业务的创新及开发,并且一次开发、多端部署、全球可用、安全合规。

1.2. 核心竞争力

  • 跨平台: 满足开发者对不同芯片平台、 系统、 连接协议的开发需求。
  • 低代码: 提供丰富的业务子系统,可快速开发不同类型的产品。
  • 多场景: 满足物联网领域的全场景产品开发需求。
  • 高可裁剪性: 采用分层,可插拔组件设计,支持按需裁剪。
  • 互联互通: 自研高效的软总线和物模型,支持不同通讯协议的设备互联互通。
  • 安全合规: 提供多等级的全链路安全能力,满足全球合规要求。
  • 生态多样: 支持多种第三方生态互联互通:Amazon 、 Google 、 Apple,Matter 等。
  • 技术创新: 提供多种涂鸦自研技术:Tuya FFC、Tuya Galaxy Link 、 Tuya IHU、 Tuya U-RTC、 Tuya Flash Provisioning 。

1.3. 系统框架

​ TuyaOS 整体架构采用分层、可插拔组件的方式设计,可根据芯片资源及应用场景自由裁剪,生成符合要求的开发框架。基于 TuyaOS 丰富的开发组件,开发人员能够从不同的芯片平台、系统、连接协议及应用软件等碎片化开发体验中得到解放。

图1 TuyaOS 系统框架图

​ 整个系统框架从下到上总共分为五层:

  • **Kernel Layer ( TKL ) :**采用接口最小依赖原则设计和定义,以 TuyaOS API 的方式输出,为上层软件提供稳定可靠、无差别的运行环境。

  • **Abstraction Layer ( TAL ) :**分别对系统服务、连接协议、多媒体及安全能力进行统一抽象, 提供简单、标准的服务调用方法。

  • **Libraries Layer:**提供和具体业务实现无关的中间件软件。

  • **Services:**以面向特定开发场景业务子系统的形式对应用开发提供服务。

  • **Application:**开发者根据应用场景实现对应的应用功能。

2. TuyaOS EasyGo

2.1. 简介

​ TuyaOS EasyGo 是基于 TuyaOS 能力生成的一系列开发资料的统称。TuyaOS EasyGo 面向所有开发者,可帮助开发者快速开发 IoT 产品。

2.2. 组成

图2 TuyaOS EasyGo系统组成图
  • **开发框架:**由类型开发包及开发平台构成。

    • **类型开发包:**是 TuyaOS 业务子系统及底层能力面向特定应用场景生成的一系列满足高、中、低资源要求的开发包。

    • **开发平台:**由 TuyaOS API 在某芯片平台上的具体实现及管理工具构成,为类型开发包提供无差别的运行环境,给开发者提供统一的开发体验。

    图3 EasyGo 提供的开发框架

    Tuya EasyGo 提供了面向各个业务场景的类型开发包和覆盖了多种芯片的开发平台,开发者可根据自身的需求来选择合适框架。

  • **产品开发包:**基于特定开发框架面向某个垂直的产品领域提供的低代码产品开发资料,使开发者能在该领域快速开发应用产品。

2.3. 管理流程

​ TuyaOS EasyGo 由涂鸦内部工程师开发维护,主要流程分为开发,管理,发布三大部分。

图4 EasyGo 开发管理流程
  • **开发:**不同的产品开发包和开发框架会由不同的专业研发团队进行开发迭代。
  • **管理:**每一个提测的版本都需经过严格的各项检测并生成详细的测试报告。
  • **发布:**测试后的版本还需经过多方位评审通过后,才可发布。

​ 通过严谨的开发流程,严苛的工程实施,涂鸦全方位地保障了每一个环节,涂鸦与芯片原厂,智能设备生产厂商一起动态共建开发者生态。

2.4. 资料申请

​ 开发者可以联系涂鸦 BD 人员走内部申请流程,等待审批通过开发者就会获得权限,即可在 Tuya Wind IDE 中获取开发资料。

图5 资料申请流程图

3. Tuya Wind IDE

3.1. 简介

​ Tuya Wind IDE 是面向基于 TuyaOS EasyGo 的开发者提供的一站式集成开发环境。

  • TuyaOS EasyGo 的所有资料都会发布在 Tuya Wind IDE 上,基于 Tuya Wind IDE, 涂鸦可统一管理、分发及更新这些开发资料。
  • 开发者可通过 Tuya IoT 账号登录 Tuya Wind IDE 获取相应的开发资料包,并进行产品开发。
  • Tuya Wind IDE 以 Visual Studio Code 插件形式发布,支持中英双语。
  • Tuya Wind IDE 旨在为开发者提供在不同主机,不同开发工具下, 一致的开发体验。

3.2. 使用流程

图6 基于 Tuya Wind IDE 的开发流程图

​ 基于 Tuya Wind IDE 的开发流程主要分为以下几步:

  1. 安装 Tuya Wind IDE
  2. 登录 Tuya Wind IDE
  3. 下载开发框架
  4. 创建应用工程
  5. 编写调试产品功能
  6. 测试、发布产品

嵌入式开发套件

0.前言​智能时代的到来,让物与人的关系、物与物的关系更加密切。但是物联网行业种类复杂、接入环节冗长、设备规模以及数据量庞大等,都成为了物联网发展的难点。为此,涂鸦推出了一系列应用于IoT领域的开... 查看详情

tuyaos开发教程-环境框架

1.背景​TuyaEasyGo提供了面向各个业务场景的类型开发包和覆盖了多种芯片的开发平台。​TuyaWindIDE是面向基于TuyaOSEasyGo的开发者提供的一站式集成开发环境。TuyaWindIDE以VisualStudioCode插件形式发布,支持中英双语,通过涂鸦... 查看详情

tuyaos开发教程-准备安装环境(代码片段)

不同的开发框架开发环境会有所不同,目前TuyaOS共有两种开发方式,一种是Windows主机+Linux虚拟机的开发方式,一种是纯Windows下的开发方式,本章节会详细介绍两种开发方式的环境搭建过程。1.Windows主机+Linux... 查看详情

tuyaos开发教程-安装visualstudiocode

目前,TuyaWindIDE以插件的形式发布在VisualStudioCode中。本文档详细介绍VisualStudioCode的安装过程。下载VisualStudioCode进入VisualStudioCode官网,单击DownloadforWindows右侧的向下箭头,选择合适的版本,下载安装包。安装VisualS... 查看详情

tuyaos开发教程-环境框架

1.背景​TuyaEasyGo提供了面向各个业务场景的类型开发包和覆盖了多种芯片的开发平台。​TuyaWindIDE是面向基于TuyaOSEasyGo的开发者提供的一站式集成开发环境。TuyaWindIDE以VisualStudioCode插件形式发布,支持中英双语,通过涂鸦... 查看详情

tuyaos开发教程-准备安装环境(代码片段)

不同的开发框架开发环境会有所不同,目前TuyaOS共有两种开发方式,一种是Windows主机+Linux虚拟机的开发方式,一种是纯Windows下的开发方式,本章节会详细介绍两种开发方式的环境搭建过程。1.Windows主机+Linux... 查看详情

tuyaos开发教程-安装visualstudiocode

目前,TuyaWindIDE以插件的形式发布在VisualStudioCode中。本文档详细介绍VisualStudioCode的安装过程。下载VisualStudioCode进入VisualStudioCode官网,单击DownloadforWindows右侧的向下箭头,选择合适的版本,下载安装包。安装VisualS... 查看详情

什么是嵌入式开发?嵌入式软件开发入门教程

嵌入式系统发展到今天,对应于各种微处理器的硬件平台一般都是通用的、固定的、成熟的,这就大大减少了由硬件系统引入错误的机会。此外,由于嵌入式操作系统屏蔽了底层硬件的复杂性,使得开发者通过操作系统提供的API... 查看详情

小蜜蜂老师主讲基于stm32cubemx的嵌入式开发基础教程

基于STM32CubeMX的嵌入式开发基础教程广东职业技术学院/小蜜蜂笔记网 欧浩源【第01单元】:STM32CubeMX的安装与快速入门教案资源链接,视频教程链接。【第02单元】:STM32的GPIO开发基础教案资源链接,视频教程链接。【第03单... 查看详情

资源下载分享个嵌入式开发的入门教程(包含视频)

基于ARMA17的嵌入式开发的入门开发教程,有兴趣的朋友可下载或者在线观看开发教程:http://wiki.t-firefly.com 视频教程:https://pan.baidu.com/s/1bnGpt4j#list/path=%2F 教程文档:http://www.t-firefly.com/zh/firenow/firefly_rk3288/download/  查看详情

开源物联网框架serversuperio3.0正式发布(c#),附加:二次开发套件和教程。

...以一套设备驱动,跨平台挂载运行,降低人力成本,提高开发效率。3.增加二次开发套件:支持控制台和UI界面两种方式。4.增加配置工具:参数配置、设备驱动挂载、视图挂载、服务实例的挂载。5.修复BUG,优化代码。SSIO的特点... 查看详情

nios嵌入式处理器的特性说明

...。开发套件Altera及其合作伙伴提供了大量应用了NiosII系列嵌入式处理器的开发板套件。系统级设计流程Altera的SOPCBuilder工具提供了快速搭建SOPC系统的能力,这种架构可以是包含一个或几个CPU,提供存储器接口,外围设备和系统互... 查看详情

想要学习嵌入式开发选择教程哪家好?

想要学习嵌入式开发选择教程哪家好?其实首先你要好好了解嵌入式,其实嵌入式工程师需要掌握的内容非常广泛,主要包括嵌入式软件、嵌入式硬件、以及相关行业、产品的专业知识。作为嵌入式初学者,我们不可能,也没有... 查看详情

嵌入式4412开发板学习教程uboot教程之uboot基础概念和框架

【4412开发板教程】Uboot教程之uboot基础概念和框架正在学习uboot,教程讲解的很详细,先上个笔记,视频上传到网盘后再补上......知识点:1.操作系统分层的概念    Windows:bios→内核模式→用户模式→用户程序 &nb... 查看详情

jetty使用教程(四:21-22)—jetty开发指南

二十一、嵌入式开发21.1Jetty嵌入式开发HelloWorld  本章节将提供一些教程,通过JettyAPI快速开发嵌入式代码21.1.1下载Jetty的jar包  Jetty目前已经把所有功能分解成小的jar包,用户可以根据需要选择合适的jar包,来实现需要的功... 查看详情

[学习开发板怎么选]迅为4412开发板帮你入门嵌入式

  丰富选配模块 入门视频教程(购买后提供完整版高清教程)部分视频观看地址:【视频教程】iTOP-4412开发板之学习方法--致初学者http://v.youku.com/v_show/id_XNzQ5MDA4NzM2.html【视频教程】三星Exynos4412处理器开发要点http://v.y... 查看详情

stm32全链路开发实战教程专栏总目录

...、开发环境相关二、STM32裸机开发STM32CubeMX系列教程玩转嵌入式屏幕显示嵌入式开源小组件的使用mbedtls开源安全库DW1000UWB芯片开发笔记LVGL学习笔记三、项目经验积累四、RTOS开发1.RTOS内功修炼记(内核剖析)2.TencentOS-tiny3.L... 查看详情

嵌入式linux与物联网进阶之路四:嵌入式驱动开发思路

...章开始,将会发挥它最大的价值,藉由它来带领我们进入嵌入式linux驱动开发的大门。想必大家在玩linux类型的板子之前应该或多或少的都尝试过其他类型的板载系统的开发,诸如裸跑C语言程序的51单片机;基于Arduino开发套件的E... 查看详情