物联网无线通信 智能照明评估实验
本次实验目的是熟悉APT USART连接ZWave无线模块,MCU接收ZWave无线模块输出的照明控制信号(1byte) 0x00 = off, 1-100 = 亮度,开启BT定时器产生100us中断,软件模拟一个PWM功能实现0-100% LED亮度控制。使用ZWave PC 主机下发命令,ZWave 模块收到命令处理并且发亮度数据到APT 单片机。详细如下:
1. 先了解一下BT定时器特性:
(资料图片仅供参考)
2.另外对Z-Wave通信作一些简介:
目前,ZWave 协议是当今市场上最成熟、最普遍的智能家居生态系统的基础。ZWave 生态系统已部署超过 1 亿个可互操作设备。
本次实验使用868mhz 频率(欧洲),模块是成熟的软件与硬件,为快速连接USART 进行实验,只是使用了TX(模块)与MCU (TX)相连。
3. 硬件上做一些连接:
将zwave 模块 TX输出的信号连接到PA1.10脚:
4. 实验基于DEMO APT_CSI_110x_v1.1.0_20220920例子程序实现:
(1) 先设置对应的IO
(2) 使能bt_timer_demo();
(3) 初始化 bt_timer inti 为100 ,为了定时器产生100uS中断:
(4) 在bt 中断里添加led模拟调光的用户程序,
使用依据Zwave_LED_duty 变量内容,改变PB0电平状态,达到亮度控制与OFF。
(5) USART资源设置,由于使用了PB0.2 作为led控制, 使用PA19,PA110, 作为USART TX , RX 的IO, USART 的RX 处于查询模式,当收到一个数据时,赋予ZWAVE_LED_duty变量。
小结: 使用APT MCU USART内部资源,快速功能实现,了解代码的结构与使用方法,为下一级复杂的应用评估作准备。
实验场景:
视频如下: