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

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

3天内不再提示

涂鸦Wi-Fi和BLE SoC开发幻彩灯带

嵌入式单片机MCU开发 来源:嵌入式单片机MCU开发 作者:嵌入式单片机MCU开 2022-11-29 14:11 次阅读

引言

随着物联网应用技术的发展,人们的生活融入着越来越多网络化、数字化的行为方式。物联网应用技术的一个重要分支便是智能家居,这一分支对于改善人们的生活水平至关重要。近些年来,消费者对家居的舒适性、便捷性有了一定的要求。针对现阶段己有的智能家居系统成本高、功耗大、集成度低等缺陷,分析并选取合适的平台、传感器和无线组网方式,设计了一款成本低、功耗低、集成度高的智能家居系统,该系统具有较好的应用和参考价值。 本系统采用涂鸦智能涂鸦模组二次开发版本,综合涂鸦Wi-Fi&BLE通信组网技术,以及传感器的应用技术,实现家居环境的智能联网,下图为涂鸦智能的Wi-Fi&BLE SoC NANO主控板(BK7231N)。

在这里插入图片描述在这里插入图片描述

涂鸦模组二次开发产品

本章节介绍涂鸦模组二次开发方案项目流程,涂鸦IoT平台为客户提供一站式物联网解决方案,涵盖设备智能化、云服务、App 软件开发、运营维护等各方面,助力各行业客户实现研发端、生产端、销售端、运营端全产业互联网化。 当您确定好产品需求后,需要将产品具体化到IoT平台上,便于您管理产品并拥有产品运营能力。

产品开发流程

涂鸦模组二次开发方案开发周期短、成本低,您在IoT工作台上配置完成后,模块即会携带完整的控制程序,免去外置MCU及繁琐的程序开发,助您快速实现产品智能化,创建项目,标准类目选择“照明”,选择“幻彩灯带”。

在这里插入图片描述

选择开发方案,根据下图指示选择“自定义方案”,这里我们是对涂鸦模组进行二次开发,所以选择“自定义方案”。

在这里插入图片描述

按照自己将要开发的产品和模组填写产品名称,选择对应的通信协议,配置完成后点击“创建产品”。 这里准备使用CBU模组开发一个可以幻彩灯带的产品。CBU模组是一款Wi-Fi&Bluetooth LE双模模组,选择的通信协议是“WiFi-蓝牙”。

在这里插入图片描述

根据产品想要实现的功能,选择对应的功能点,选择完成后点击“确认”。 如果有些你需要的功能点在标准功能点里面没有,可以在标准功能点选择完成后,自定义你需要的功能点。(标准功能点可以在公版面板上很好的显示和操作。如果选择了自定义功能点,可能无法在面板上显示和操作)。

在这里插入图片描述

在设备交互中选择自己喜欢的APP界面,也可以自己进行定义。

在这里插入图片描述

点击“硬件开发”,选择“TuyaOS”,选择“CBU Wi-Fi&Bluetooth 模组”(如果你使用的是其他模组,选择对应的模组即可)。

在这里插入图片描述

箭头①指向的“新增自定义固件”是指上传你已经开发好的产品固件(如何开发将会在后面的内容进行讲解)。 点击箭头②指向的“ty_iot_light_app_sdk_bk7231n”下载该模组的SDK。

在这里插入图片描述

应用场景

涂鸦三明治 Wi-Fi&BLE SoC NANO主控板(BK7231N)采用上海博通开发的高性价比的 Wi-Fi &BLE 双模芯片 BK7231N。开发板包含 Wi-Fi 芯片BK7231N、按键、LED 指示灯、 I/O 接口电源USB转串口芯片等。 I/O 口及各接口功能定义如下所示:

在这里插入图片描述

1:MICROUSB(CN1) :即是 5V DC 输入口,也扩展了 2 个串口功能。 2:拨码开关(S1): 拨码切到 ON 方向导通,通断 USB 转串口芯片的双串口和芯片串口之间的链路。 3: 指示灯(D3):3.3V 电源指示灯。 4:按键(S2):通过 P9 检测,初始化高电平,按下为低电平。 5:指示灯(D2):通过 P16 控制,低电平点亮。 6:按键(RST):复位按键,按下后芯片复位。

原理图及PCB

涂鸦三明治 Wi-Fi&BLE SoC NANO 主控板(BK7231N)的原理图如下所示:

在这里插入图片描述

涂鸦三明治 Wi-Fi&BLE SoC NANO 主控板(BK7231N) 的 PCB 如下图,顶层:

在这里插入图片描述

底层:

在这里插入图片描述

Wi-Fi&BLE SoC NANO主控板(BK7231N)接口说明

涂鸦三明治 Wi-Fi&BLE NANO 主控板(BK7231N)内置 USB 转串口芯片,单路 USB 口可扩展出 2 个串口。可通过拨码开关(S1)切换模组的两路串口是否连接到 USB 转串口芯片上。拨码开关引脚说明如下表所示。

image.png

拨码切到 ON 方向导通,通断 USB 转串口芯片的双串口和芯片串口之间的链路。 芯片 UART 引脚用于与MCU通信或普通 I/O 口使用时,需将相应的拨码位置拨到断开的位置,即数字字母方向。 电脑 COM 口与 USB 芯片串口和芯片 BK7231N 对应关系。

在这里插入图片描述

通常情况下A是用来下载程序用的,B是用来打印日志的

image.png

烧录授权接线方式

在这里插入图片描述

将拨码开关(S2)的 1、2 路都拨至 ON 方向,BK7231N 的串口 UART1 与上位机链路导通。 注意:若出现“获取RF标志位失败”的情况,可在授权阶段,将串口2的RXD引脚(P01引脚)和GND短接。

环境搭建

环境搭建请参考涂鸦智能配置说明: https://developer.tuya.com/cn/docs/iot/Module-SDK-development_tutorial?id=Kauqptzv5yo8a

从涂鸦 IoT 开发平台下载 SDK 进行验证

在涂鸦IoT 开发平台上成功创建自定义开发的产品后,在硬件开发中选择 TuyaOS,即可下载该模组的 SDK。**此前需联系涂鸦工作人员开通白名单授权,联系方式放在文末。

** 在这里插入图片描述

将下载好的 SDK 复制到 Windows 和 Ubuntu 的共享文件夹中,在 Ubuntu 虚拟机中输入下列命令进行编译:

cd /home/share/samba/
tar -xzvf *.tar.gz     #注意:该命令会将当前目录下所有后缀名为.tar.gz的文件进行解压,建议将*.tar.gz改为你实际要解压的文件的完整名字
cd ty_iot_light_app_sdk_bk7231n_0.1.1
sh build_app.sh ./apps/xh0623_demo_pixel_light_ty xh0623_demo_pixel_light_ty  1.0.0

执行成功如下所示: 在这里插入图片描述

模组二次开发流程

启动流程介绍

在开始开发前,需要了解 SDK 的初始化流程。这里需要重点关注四个函数pre_app_init()、pre_device_init()、app_init()和device_init()。启动流程如下图所示。

在这里插入图片描述

修改代码

产品PID定义

可以根据下面的提示填写产品的 PID 信息,也可以不对代码进行任何更改,跳过该步骤直接进入下一步编译生成固件。 将apps下的include/light_system目录下的light_system.h中的PRODUCT_KEY修改为您创建得到的 PID,FIRMWARE_KEY是固件key,可以填NULL。

在这里插入图片描述

灯珠数量定义

在/home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1/app/xh0623_demo_pixel_light_ty/include/src/light_system/light_init.c中可以进行修改。

在这里插入图片描述

灯带长度定义

在/home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1/app/xh0623_demo_pixel_light_ty/include/src/light_upload/light_upload.c中可以进行修改,其中DPID_LED_NUM是灯珠数量,DPID_LED_LENGTH是灯带长度,单位为厘米。

在这里插入图片描述

编译和生成产物介绍

在 Ubuntu 终端中将路径切换到有 build_app.sh 的路径下,输入下列命令进行编译。 例:我这里处于home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1路径下,开始执行下列命令。

sh build_app.sh ./apps/xh0623_demo_pixel_light_ty xh0623_demo_pixel_light_ty  1.0.0
命令 含义
sh build_app.sh 命令执行 build_app.sh 脚本。
./apps/tuya_demo_light_pwm 编译的工程所在的路径。
tuya_demo_light_pwm 固件名称,固件标识名,必须要和工程文件夹名称一致。
1.0.0 软件版本号。

执行后如下所示。

在这里插入图片描述

生成产物

编译完成后,将生成的固件按照不同版本放在所编译的工程目录 output 文件夹内。 例:如果我们编译的是 apps 文件夹中的 xh0623_demo_pixel_light_ty工程,编译版本为1.0.0,那么生成的固件将会放在 apps/xh0623_demo_pixel_light_ty/output/1.0.0 中。

在这里插入图片描述

编译后的产物如上图所示,这里主要关注的xh0623_demo_pixel_light_ty_QIO_1.0.0.bin、xh0623_demo_pixel_light_ty_UA_1.0.0.bin和xh0623_demo_pixel_light_ty_UG_1.0.0.bin这三个文件。

文件名 功能
xh_bk7231n_light1_io_xx_QIO_1.0.0.bin 生产区固件:boot+用户区固件+检测固件。
xh_bk7231n_light1_io_xx_UA_1.0.0.bin 用户区固件
xh_bk7231n_light1_io_xx_UG_1.0.0.bin 升级固件

上传固件

自定义开发固件如果不上传到云平台,直接将 UA 文件烧录到已授权的模组中,会导致配网一直无法成功。 进入涂鸦 IoT 平台,在开发的产品中找到“硬件开发”,按照下图指示点击“新增自定义固件”,填写相关固件信息。 “固件标识名”必须和您编译时的 apps 下的工程文件夹的名称一致。 如果固件标识名填写为 wifi_one_light,上传的固件应为 SDK 包中 apps 目录下的 wifi_one_light 文件夹中编译所生成的固件。 “Flash 大小”为 16Mbit 也就是 2M 大小。不同模组的 flash 大小可以在涂鸦文档中心 中查看相关模组的 flash 大小。 1byte(字节) = 8bit(位)。 16Mbit / 8 = 2M。 相关信息填写完成后(没有被②的框框圈到使用默认设置即可),点击“上传固件”,进入“上传固件“步骤。

在这里插入图片描述

“固件版本”需要和编译时输入的版本号对应一致。“生产固件”上传包含 QIO 的 bin 文件,“用户区”上传包含 UA的bin 文件,“升级固件”上传包含 UG 的 bin 文件。运行模式选择 QIO。点击保存。 注意:该顺序不一定固定,在后续固件管理中就不是按照“生产固件”,“用户区固件”和“升级固件”的顺序来排序,所以一定要看清楚是什么类型的固件在进行上传。

在这里插入图片描述

点击“进行固件上架”。

在这里插入图片描述

选择“不限范围”,点击“确认上架”。 注意:这里选择不限范围是为了方便个人开发。如果是公司将要量产的产品,请严格限定固件的使用范围。

在这里插入图片描述

烧录授权

通过涂鸦 IoT 开发平台涂鸦模组二次开发方案成功生成固件,或使用自定义开发方案生成固件并上传到涂鸦 IoT 开发平台后,下一步需要对模组进行烧录授权。 本文将详细讲解 3 种不同的烧录授权方式: 自定义开发烧录授权:适用于发布阶段,使用自定义开发方式创建的产品。 三明治开发板方式烧录授权:仅适用于涂鸦三明治开发板的烧录授权。 使用原厂工具烧录:适用于开发阶段。方案的特点是授权一次,重复烧录。

烧录准备工作

烧录授权所需工具如下:

  1. PMS 账号
  2. CBU Nano开发板或涂鸦WiFi模组+usb转UART串口工具
  3. 云模组烧录授权工具
  4. 原厂烧录工具

PMS 账号

PMS账号申请网址:

https://pms.tuya.com/login

PMS是涂鸦智慧生产管理系统,一个轻量化的生产管理系统,助力中小微生产企业实现降本、提质、增效和减存,完成数字化转型。 登录涂鸦PMS系统。登录成功后,依次点击知识库管理->软件下载->生产解决方案开始下载「生产解决方案」。

在这里插入图片描述

安装过程中,程序安装的位置可以根据自身需求进行设置,建议不要有中文路径,避免出现一些意想不到的问题。 安装完成后,启动「生产解决方案」,登录的账号和密码与涂鸦PMS系统(涂鸦智造)的账号和密码一样。 由于是开发CBU Wi-Fi & Bluetooth 模组,故选择生产测试->云模组即可。

在这里插入图片描述

选择文件->设置,进行烧录设置,授权波特率最好设置在9600。

在这里插入图片描述

授权设置

点击产品->三明治开发板->绑定开发板进行绑定。

在这里插入图片描述

一般情况下,开发板背部都有一张标签,上面附带了ID和密码。

在这里插入图片描述

点击申请新的授权码,即可选择需要添加的产品。

在这里插入图片描述

使用云模组烧录授权平台烧录

设置完毕之后将授权码输入到生产凭证中,选择烧录模式。

在这里插入图片描述

点击运行,在对开发板进行复位就可以进行下载。

在这里插入图片描述

原厂工具烧录UA文件

使用该方法只能烧录应用区固件,无法给模组进行授权操作。可以使用该方法给已经授权过的模组进行烧录,避免每次更新代码生成固件后都要上传到涂鸦loT平台使用「云模组烧录授权平台」工具进行烧录授权。 下降链接如下:

https://images.tuyacn.com/smart/shiliu_zone/SOC_Develop/tools/bk_writer_gui_V1.6.3.rar

使用此方法只能烧录应用区固件,无法给模组进行授权操作。可以使用该方法给已经授权过的模组进行烧录,避免每次更新代码生成固件后都要上传到涂鸦 IoT 开发平台使用云模组工具进行烧录授权。 按照下图步骤,在箭头 ① 所指向的烧录对象中,根据实际烧录的模组选择对应的芯片型号,可在文档中心查看相关模组规格书,确认模组使用的芯片型号。 单击箭头 ② 指向的浏览按钮,选择成功编译生成的包含了 UA 字样的 bin 文件(该文件就是应用区固件,这里选择的固件就是wifi_one_light)。 在箭头 ③ 和箭头 ④ 指向的起始地址中填入0x00011000,操作长度中填入0x00119000。 在箭头 ⑤ 指向的位置选择正确的烧录串口,将箭头 ⑥ 指向的通讯波特率调整为最高,可以加快烧录速度。 单击箭头 ⑦ 指向的烧录,给模组通断电或复位模组使模组重启,开始烧录。烧录完成后,更改后的代码就成功烧录到模组中。你可以不再使用云模组工具对该模组再次进行授权操作。 烧录设置如下所示。

在这里插入图片描述

烧录完成如下所示。

在这里插入图片描述

涂鸦APP

可以在涂鸦手机APP中对模组进行添加。 一般情况下可以自动识别出来。

在这里插入图片描述

若没有识别,点击照明,灯带进行添加。

在这里插入图片描述

若APP无法搜索到模组,需要对模组进行重置,查看原理图可以知道P9管脚对应用户按键。

在这里插入图片描述

查看/home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1/app/xh0623_demo_pixel_light_ty/include/src/light_button/light_button_init.c下有个按键配置代码,可以看到对按键点击4次可以进入复位模式。

在这里插入图片描述

幻彩灯带功能介绍

涂抹功能

用户可以根据自己的喜好给灯带进行设置,配置为自己喜欢的颜色组合,例如配置为蓝绿红。

在这里插入图片描述

实际配置如下所示。

在这里插入图片描述

还有丰富的色卡组合。

在这里插入图片描述

场景设置

用户可以根据自己的喜好定义场景。

在这里插入图片描述

例如设置为海上焰火,效果如下所示。

在这里插入图片描述

音乐律动

音乐律动分为本地模式和APP模式,在本地模式下有摇滚、爵士、古典、滚动、能量、频频。 以爵士为例,设置之后可以选择灵敏度来改变灯带频率。

在这里插入图片描述

实际演示如下所示。

在这里插入图片描述

在APP模式下,灯光根据手机麦克风采集到的音乐随之律动。 如设置为音乐律动,显示如下所示。

在这里插入图片描述

其他功能

用户可以给幻彩灯带进行设置,指定打开时间。 同时也可以定义灯带的长度。

在这里插入图片描述

审核编辑:汤梓红

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

    关注

    38

    文章

    4088

    浏览量

    217744
  • wi-fi
    +关注

    关注

    14

    文章

    2093

    浏览量

    124222
  • BLE
    BLE
    +关注

    关注

    12

    文章

    648

    浏览量

    59293
  • 涂鸦智能
    +关注

    关注

    7

    文章

    195

    浏览量

    19439
收藏 人收藏

    评论

    相关推荐

    涂鸦Wi-FiBLE SoC开发彩灯(3)----产品创建与SDK进行验证

    使用涂鸦Wi-Fi模组和涂鸦Wi-Fi&Bluetooth LE双模模组进行产品开发主要有二次开发
    的头像 发表于 11-29 17:29 1610次阅读
    <b class='flag-5'>涂鸦</b><b class='flag-5'>Wi-Fi</b>和<b class='flag-5'>BLE</b> <b class='flag-5'>SoC</b><b class='flag-5'>开发</b><b class='flag-5'>幻</b><b class='flag-5'>彩灯</b><b class='flag-5'>带</b>(3)----产品创建与SDK进行验证

    涂鸦T2-U开发板试用体验】涂鸦T2-U开发板初体验

    今天刚收到涂鸦T2-U开发板,先给朋友做个开发板简单介绍; 涂鸦 T2-U 开发板,是专为帮助开发
    发表于 12-22 10:59

    涂鸦T2-U开发板试用体验】嵌入式linux开发涂鸦T2-U

    物联网开发神器--TuyaOS) ct),拥有电量统计芯片驱动、照明驱动、彩灯芯片驱动等功能,开发者可按需选用。 它能通过
    发表于 12-22 11:21

    DT-BL10 Wi-FiBLE共存模块是什么

    ,RF和蓝牙。它还提供了一堆可配置的GPIO,这些GPIO被配置为数字外设,用于不同的应用和控制用途。DT-BL10 WiFi模块使用BL602作为Wi-FiBLE共存SOC芯片。DT-BL10 WiFi模块集
    发表于 02-10 07:57

    涂鸦三明治 Wi-Fi&amp;BLE SoC NANO 主控板免费试用

    涂鸦三明治 Wi-Fi&amp;BLE SoC NANO 主控板(WBRU)是方便开发者快速实现各种智能硬件产品原型的一款
    发表于 03-21 18:09

    涂鸦三明治 Wi-Fi&amp;BLE SoC NANO 主控板试用体验】零代码开发流程

    感谢给予试用机会,我拿到的开发板是Wi-Fi&BLE SoC NANO主控板(BK7231N),此开发板的信息在官方网站查询,
    发表于 05-08 02:00

    涂鸦三明治 Wi-Fi&amp;BLE SoC NANO 主控板试用体验】彩灯

    上篇报告把使用涂鸦Wi-Fi&BLE SoC NANO主控板(BK7231N)零代码开发流程走通,现在再尝试一下
    发表于 05-08 16:21

    涂鸦智能物联网设备解决方案合辑(一)

    景 : 家电 Wi-Fi & Bluetooth LE 彩灯智能化方案 方案概述: WiFi & BLE RGB
    发表于 06-28 16:54

    【新品体验】涂鸦 T2-U 开发板免费试用

    涂鸦 T2-U 开发板,是专为帮助开发者快速开发出智能硬件而生的一款开发板。它的主控采用低功耗嵌入式 W
    发表于 09-18 10:31

    Dialog推出首款Wi-Fi + BLE组合模块

    Wi-Fi + BLE组合模块是结合了两个复杂协议栈的可靠固件解决方案,消除了通常因一个设计中有两个2.4 GHz无线电共存而导致的问题。BLE使Wi-Fi配置更加容易,为终端用户极
    的头像 发表于 05-29 10:31 3710次阅读

    通过BLE实现Wi-Fi配置

    将外部BLE设备连接到WFI32E Curiosity板,并通过BLE配置WFI32E Curiosity板的Wi-Fi,使Curiosity板能以Wi-Fi通信。 观看视频,了解如
    发表于 05-17 11:08 10次下载

    涂鸦Wi-FiBLE SoC开发彩灯(2)----环境搭建与测试

    TuyaOS Wi-Fi SDK 需要在 Linux 环境下进行编译。现在主要介绍涂鸦 Wi-FiWi-Fi & Bluetooth LE 系列模组二次
    的头像 发表于 11-29 16:18 1025次阅读
    <b class='flag-5'>涂鸦</b><b class='flag-5'>Wi-Fi</b>和<b class='flag-5'>BLE</b> <b class='flag-5'>SoC</b><b class='flag-5'>开发</b><b class='flag-5'>幻</b><b class='flag-5'>彩灯</b><b class='flag-5'>带</b>(2)----环境搭建与测试

    涂鸦Wi-FiBLE SoC开发彩灯(4)----开发SDK

    涂鸦三明治 Wi-Fi&BLE SoC NANO主控板(BK7231N)采用上海博通开发的高性价比的 W
    的头像 发表于 11-30 09:38 1081次阅读
    <b class='flag-5'>涂鸦</b><b class='flag-5'>Wi-Fi</b>和<b class='flag-5'>BLE</b> <b class='flag-5'>SoC</b><b class='flag-5'>开发</b><b class='flag-5'>幻</b><b class='flag-5'>彩灯</b><b class='flag-5'>带</b>(4)----<b class='flag-5'>开发</b>SDK

    涂鸦Wi-FiBLE SoC开发彩灯(5)----烧录授权

    PMS是涂鸦智慧生产管理系统,一个轻量化的生产管理系统,助力中小微生产企业实现降本、提质、增效和减存,完成数字化转型。
    的头像 发表于 11-30 09:42 1337次阅读
    <b class='flag-5'>涂鸦</b><b class='flag-5'>Wi-Fi</b>和<b class='flag-5'>BLE</b> <b class='flag-5'>SoC</b><b class='flag-5'>开发</b><b class='flag-5'>幻</b><b class='flag-5'>彩灯</b><b class='flag-5'>带</b>(5)----烧录授权

    涂鸦Wi-FiBLE SoC开发彩灯(6)----彩灯功能演示

    可以在涂鸦手机APP中对模组进行添加。 一般情况下可以自动识别出来。
    的头像 发表于 11-30 09:45 1161次阅读
    <b class='flag-5'>涂鸦</b><b class='flag-5'>Wi-Fi</b>和<b class='flag-5'>BLE</b> <b class='flag-5'>SoC</b><b class='flag-5'>开发</b><b class='flag-5'>幻</b><b class='flag-5'>彩灯</b><b class='flag-5'>带</b>(6)----<b class='flag-5'>幻</b><b class='flag-5'>彩灯</b><b class='flag-5'>带</b>功能演示