本节课主要介绍在应用开发前如何搭建开发环境,包括 SDK 获取、IDE 安装、烧录工具、调试工具等,同样以 BTU 模组为例,演示开发必备环境的准备过程。

一. SDK 获取

获取涂鸦蓝牙芯片 SDK 的前提是:您已经在 涂鸦 IoT 平台 上完成了产品创建。在【硬件开发】页面选择好云模组后,即可在下载资料中找到对应的 SDK,点击【下载】。

将下载的压缩包解压后,得到的 tuya-ble-sdk-demo-project-tlsr8253 就是 BTU 模组对应的 SDK。打开 SDK 可以看到 README 文件,其中 README_zh-CN.md 文件为中文版。按照 README 文件中的提示完成必要的操作,比如,某些芯片平台还需下载原厂 SDK。

二. 编译环境

完成应用开发后,需要对代码进行编译,生成用于烧录的可执行文件,即固件。因此需要安装合适的 IDE,各芯片平台开发所使用的 IDE 如下表所示,也可在芯片平台官网进行查找。

厂商 芯片平台 IDE
Telink TLSR825x Eclipse (IDE for TLSR8 Chips)
Nordic nRF52832 MDK-ARM Keil µVision
Phyplus PHY6222 MDK-ARM Keil µVision
Cypress PSoC63 PSoC Creator
Beken BK3431Q MDK-ARM Keil µVision
Freqchip FR8018H MDK-ARM Keil µVision

下面以 BTU 模组 为例介绍 IDE 准备过程。BTU 模组的芯片平台是 TelinkTLSR825x

  1. IDE 下载:在 Telink 官网下载 IDE for TLSR8 Chips,进入下载页面。

  2. IDE 安装:按照 readme.txt 文件提示完成 IDE 安装。(必须 以管理员身份运行、必须 安装在C盘

  3. 工程导入:按下图将 SDK 工程导入 IDE。

  4. 编译测试:对代码进行编译,确认可以正常编译。

三. 烧录环境

代码编译完成后,需对模组进行烧录授权,设备才能连接到云端。具体的烧录授权方法将在 第 4 课:烧录授权 中进行介绍,而在烧录授权之前,需要做如下准备:

  1. 申请一个 PMS 账号

    进入 涂鸦智慧生产管理 (PMS) 系统,点击下方的 免费注册 进入账号注册页面,完成注册后登录该账号。

  2. 下载并安装 生产解决方案 软件。

    该软件内包含了 涂鸦云模组烧录授权平台,可在 PMS 系统 中下载。

  3. 下载 芯片专用烧录软件 并安装。

    如果芯片平台有专用的烧录软件,一般可在芯片厂家的官网进行下载。比如 BTU 模组,需安装 Telink BDT。

  4. 准备安装了涂鸦蓝牙模组的 开发板 、芯片专用烧录器USB 转串口工具

    使用 涂鸦蓝牙模组 进行产品开发,首先当然是要准备用于产品功能调试的开发板,比如,涂鸦三明治蓝牙 SoC 主控板 (BTU)。一般在开发调试阶段,我们会使用原厂烧录工具进行固件烧录,所以如果芯片平台有专用的烧录器,需提前准备。同时,使用 涂鸦云模组烧录授权平台 进行烧录授权时会用到 USB 转串口工具。

  5. 将开发板 (模组) 与烧录工具进行连接。

    • 与烧录器连接

      开发板 (BTU模组) Telink 烧录器
      3V3 3V3
      SWS SWM
      GND GND
    • 与 USB 转串口工具连接

      开发板 (BTU模组) USB转串口工具
      3V3 3V3
      TXD RX
      RXD TX
      GND GND

四. 调试环境

在产品开发阶段可以通过查看 设备日志 来调试产品功能,设备日志包括 本地日志云端日志

1)本地日志

设备本地日志可通过 USB 转串口工具串口调试助手 进行查看,前提是代码中启用了日志功能,下载的 SDK 中的日志功能 默认关闭,可通过修改 TUYA_APP_LOG_ENABLETY_LOG_ENABLE 的值为 1 来打开。

/* custom_tuya_ble_config.h 日志代码片段开/关 */
#define TUYA_APP_LOG_ENABLE   1 /* 0-关闭,1-开启 *//* board.h 日志代码片段开/关(平台关联) */
#define TY_LOG_ENABLE         1 /* 0-关闭,1-开启 */

另外,每个产品的引脚分配情况可能不同,因此需要修改日志口配置。比如 TLSR825x 芯片平台,需修改telink_sdk\vendor\8258_module\app_config.h 文件。

/* 修改前 */
#define DEBUG_INFO_TX_PIN     GPIO_PC0
#define PC0_FUNC              AS_GPIO
#define PC0_INPUT_ENABLE      0
#define PC0_OUTPUT_ENABLE     1
#define PC0_DATA_OUT          1/* 修改后 */
#define DEBUG_INFO_TX_PIN     GPIO_PC3
#define PC3_FUNC              AS_GPIO
#define PC3_INPUT_ENABLE      0
#define PC3_OUTPUT_ENABLE     1
#define PC3_DATA_OUT          1

2)云端日志

设备联网成功后,可在 涂鸦 IoT 平台 中查看云端日志。通过左侧导航栏的【产品】-【设备】-【设备日志】进入设备日志界面,输入 设备 ID 搜索设备,即可查看该设备的云端日志。

设备 ID 可在 APP 端产品设备面板的 设备信息 中找到。

五. 补充说明

SDK 测试模式 默认打开,正式产品开发时需关闭,需修改 TUYA_BLE_SDK_TEST 的值为 0

/* tuya_ble_sdk_test.h */
#define TUYA_BLE_SDK_TEST   0   /* 0-关闭,1-开启 */

上一篇: 第 2 课:产品创建
下一篇: 第 4 课:烧录授权

涂鸦蓝牙SDK开发系列教程——3.环境搭建相关推荐

  1. 涂鸦Zigbee SDK开发系列教程——2.环境搭建

    本章节主要介绍如何搭建涂鸦 Zigbee ZSU 模组 SDK 开发环境. IAR安装 前往 IAR 官网下载 IAR Embedded Workbench IDE(IAR for Arm),下载安装 ...

  2. 涂鸦蓝牙SDK开发系列教程——6.固件升级

    涂鸦 IoT 平台提供 固件 OTA 升级 功能,以满足客户在产品发布后,仍可对已出货设备进行固件版本升级的需求,本节课将介绍不同开发方式下固件 OTA 升级的方法.涂鸦方案的 OTA 流程与交互协议 ...

  3. 涂鸦蓝牙SDK开发系列教程——1.快速入门

    本系列课程将介绍如何使用 涂鸦蓝牙模组及其 SDK 进行产品开发,帮助开发者更快掌握 涂鸦蓝牙模组.涂鸦蓝牙 SDK.涂鸦 IoT 平台.涂鸦三明治开发套件.涂鸦云模组烧录授权平台 等开发工具的使用方 ...

  4. 涂鸦蓝牙SDK开发系列教程——5.应用开发

    在前几节课中已经介绍了如何在 涂鸦 IoT 平台 上创建智能产品以及如何搭建涂鸦蓝牙模组的开发环境,在此基础上,本节课将继续以 BTU 模组为例,介绍如何使用 涂鸦蓝牙模组及其 SDK 开发一款温湿度 ...

  5. 涂鸦蓝牙SDK开发系列教程——2.产品创建

    要使用涂鸦蓝牙模组开发一款智能产品,首先要在 涂鸦 IoT 平台 上创建对应的产品.如果还没有涂鸦开发者账号,可以点此 链接 进行注册,企业用户可参考 企业认证流程 完成企业认证. 接下来以 使用 B ...

  6. 涂鸦蓝牙SDK开发系列教程——8.Board API 说明

    Board 层 API 是涂鸦抽象各芯片硬件外设,封装的一层标准接口.您可以调用这些 API 来使用相应外设,快速实现产品功能,也可以根据需要直接调用原厂外设接口. Board 层功能模块列表如下: ...

  7. 涂鸦 Wi-Fi SDK开发系列教程——1. SoC开发环境搭建

    SoC开发环境搭建 本章节主要介绍如何搭建涂鸦 Wi-Fi 和 Wi-Fi&Bluetooth LE 系列模组二次开发的编译环境.在 Windows 上使用 VirtualBox 虚拟机软件安 ...

  8. 涂鸦 Wi-Fi SDK开发系列教程——3. 快速上手

    本系列课程面向有嵌入式开发经验的同学,用来介绍如何在涂鸦的Wi-Fi系列模组和Wi-Fi&Bluetooth LE系列模组上进行二次开发. 上篇回顾:Wi-Fi模组二次开发--SoC开发环境搭 ...

  9. 涂鸦 Wi-Fi SDK开发系列教程——5.对模组二次开发

    上期精彩回顾:Wi-Fi模组二次开发课程--4.烧录授权 本章节旨在通过一个简单Demo,使开发者能够了解涂鸦SDK的启动流程,带领开发者基于涂鸦提供的SDK对模组进行二次开发. Demo功能介绍:硬 ...

最新文章

  1. Redis快的原因:线程切换 IO 内存 数据结构 VM机制
  2. 一个Java多线程练习的调试
  3. 开封机器人餐厅_百合汇主题酒店——开封首家机器人服务员餐厅
  4. 构思新巧的173dmba飞鸽
  5. ASP.NET WebForm echarts初试随笔
  6. JavaScript+Css实现的鼠标悬停时动态翻滚的紫色菜单导航
  7. OpenCV-python学习笔记(六)——梯度算子,边缘检测和轮廓提取
  8. 2019,国产手机生死存亡的一年
  9. Druid monitor中数据源只显示() property for user to setup(已解决)
  10. PC机中各类存储器的逻辑连接情况
  11. [转]如何:定义和处理 SOAP 标头
  12. Redis.conf 详解
  13. ajax上传文件 基于jquery form表单上传文件
  14. 微信小程序——云开发入门
  15. 前嗅教你大数据——史上最全代理IP服务商对比
  16. 《第五项修炼》读后感
  17. CSDN 社区大趴-北京站 圆满结束
  18. 双语矩阵论课程笔记(2)—— 【chapter 1】 Vector Spaces (Linear Spaces)
  19. CorelDRAW2022体验标准版
  20. 关键词优化外包陷阱,你中招了吗?

热门文章

  1. 香港数据中心供电,你知道多少?
  2. oracle去重差个数,Oracle基础(五):多表查询
  3. Carsim中几个轮胎速度,有关滑移率的设置
  4. springMVC 国际化 多语言
  5. Mysql存入emoji表情符号
  6. EF实体框架之CodeFirst二
  7. 对超宽输入范围DC/DC转换器的需求
  8. 一加8t和小米10pro哪个好?对比有什么区别?
  9. Permission
  10. html文件如何查看效果图,做PS时 如何查看原图,对比效果图?