一、搭建环境
1.1 官方资料
TuyaOS
1.2 安装Visual Studio Code
官网下载:https://code.visualstudio.com
百度网盘:https://pan.baidu.com/s/1R62HT0PVmVzMwOXtCmIQwA 提取码:g9fb
1.3 安装Tuya Wind IDE
-
启动 Visual Studio Code 后,参考下图流程在插件市场搜索并安装 Tuya Wind IDE。
-
按下图箭头顺序所示,打开 Tuya Wind IDE 登录页面,登录的账号和密码为 涂鸦 IoT 开发平台 的账号和密码。
1.4 下载开发框架
登录后,选择 主页
> 新建开发框架
。
下载对应的 TuyaOS 开发框架。并且在对应的开发环境下使用。单击 完成
,可下载开发包。
1.5 安装Keil 5
官网下载:http://www2.keil.com/mdk5/
百度网盘:https://pan.baidu.com/s/1nDiNSWMnoGtSzFOLNCmFhw?pwd=add3 提取码: add3
1.6 安装nRF Connect桌面版
官网下载:https://www.nordicsemi.com/Products/Development-tools/nRF-Connect-for-Desktop
百度网盘:https://pan.baidu.com/s/1XNdNUb22dvWClNkqprCJ-A?pwd=mzbc 提取码: mzbc
1.7 安装Python 3.8.10
官网下载:https://www.python.org/downloads/
百度网盘:https://pan.baidu.com/s/1ObLDWz_eXo7TGsDYaRSidw?pwd=jp8b 提取码: jp8b
1.8 安装Nordic Device family pack 8.24.1
官网下载:https://images.tuyacn.com/rms-static/c4d7aae0-333e-11ec-88c2-69da1a70031e-1634910522510.pack?tyName=NordicSemiconductor.nRF_DeviceFamilyPack.8.24.1.pack
百度网盘:https://pan.baidu.com/s/1XHUFqTnaPEfpquUYjYBLHA 提取码:vgb2
二、编译
2.1 创建应用
展开左侧 software/TuyaOS/apps
目录,并在右键单击 apps
目录后选择 Create Project。
2.2 编译应用
注意:第一次编译必须使用 Visual Studio Code,脚本会自动构建编译环境,之后您可以打开 IAR 或者 Keil 等第三方开发工具进行调试。
-
展开左侧
software/TuyaOS/apps/xxx
目录,并在右键单击xxx
目录后选择 Build Project。如果路径选择不正确,会在右下角报错提示。
-
选择 Build Project 后,在跳出的文本框内输入编译固件的版本号(格式为 x.x.x)后,按回车键确认。其中需注意,蓝牙 Mesh 和 Beacon 相关应用版本格式为 x.x,其它应用版本格式为 x.x.x。
如果提示: 未检测到Python 3.8,此命令需要Python 3.8才能运行
请按照1.7 安装Python 3.8.10
或者右键 build_app.py
,选择在集成终端打开
按 S
保存配置,按 Exit
退出
执行编译脚本 build_app.py
,第一个参数“apps/xxx/”表示app所在的路径,“xxx”表示app名称,第三个参数“1.0.0”表示版本号。
.\build_app.py apps/tuyaos_demo_ble_peripheral tuyaos_demo_ble_peripheral 1.0.0
- 等待 IDE 终端开始自动下载工具链,下载完成后自动编译生成固件产物并告知固件产物路径。
选择Keil UV4.exe:
编译成功:
如果提示 缺少NordicSemiconductor.nRF_DeviceFamilyPack.8.24.1
请按照1.8 Nordic Device family pack 8.24.1
编译生成固件产物在 software\TuyaOS\_output
- tuyaos_demo_ble_peripheral_QIO_1.0.0.hex:QIO 是生产固件, 其中有 bootloader
- tuyaos_demo_ble_peripheral_UA_1.0.0.hex:UA 是用户区固件
- tuyaos_demo_ble_peripheral_UG_1.0.0.bin:UG 是全量升级固件
2.3 清除编译内容
.\build_app.py apps/tuyaos_demo_ble_peripheral tuyaos_demo_ble_peripheral 1.0.0 clean
三、烧录
3.1 脚本烧录(方式一)
- 在 Visual Studio Code 左侧目录栏的
software\TuyaOS\.log\hex\material
上,右键单击,选择 在文件资源管理器中显示:
- 双击
load_softdevice_bootloader_app.bat
脚本,即可进行涂鸦的固件烧录。
说明:此处烧录为全固件烧录,烧录后需要进行授权。
3.2 Keil烧录(方式二)
- 在 Visual Studio Code 左侧目录栏的
software\TuyaOS\.log
上,右键单击,选择 在文件资源管理器中显示:
- 双击
Demo.uvprojx
,点击Load
即可进行应用层的固件烧录。
说明:此处烧录为应用层固件烧录,不会覆盖已授权信息,但须先烧录一次全量固件。
3.3 nRF Connect桌面版烧录(方式三)
- 在 nRF Connect 中,选择 Programmer
-
选择设备
-
选择文件
说明:此处烧录为应用层固件烧录,不会覆盖已授权信息,但须先烧录一次全量固件。
3.4 查看调试信息
- 在开始菜单中搜索
J-Link RTT Viewer Vx.xx
(x.xx 版本号)并打开 - 在 Target device 中选择
NRF52832_XXAA
,确认无误单击 OK。
- 在 File 中选择 Connect,重启设备后看到打印信息
• 由 Leung 写于 2024 年 10 月 14 日
• 参考:Tuya Wind IDE