[评测分享]
【TL7218X开发板】六、实现多端遥控灯
#板卡评测
1121 人阅读
|
0 人回复
|
2025-03-11
TA的每日心情 | 擦汗 2025-2-28 11:10 |
|---|
签到天数: 2 天 连续签到: 1 天 [LV.1]初来乍到
秀才
- 积分
- 229
|
本帖最后由 dvacos 于 2025-3-21 16:56 编辑
书接上文,之前完成了蓝牙广播名修改、服务与特征修改、数据收发、PWM等功能,现在就把他组合起来,做一个蓝牙遥控灯。
1、数据接收 与 PWM修改
在之前蓝牙数据接收、打印处添加,修改PWM的API,在每次接收蓝牙数据时改动一次PWM大小,代码如下:
- int spp_onReceiveData(u16 connHandle, ble_rf_packet_att_write_t *p)
- {
- (void)connHandle;
- u8 len = p->l2capLen - 3;
- tlk_printf("len = %u \r\n",len);
- if (len > 0) {
- for(int i=0;i<len;i++){
- tlk_printf( "%02x ", *(i+(u8*)&(p->value)) );
- }
- }
- tlk_printf("\r\n");
- blc_gatt_pushHandleValueNotify(connHandle,notify_attHandle,&p->value,len);
- pwm_set_tcmp(PWM0_ID, p->value * 240);
- return 0;
- }
复制代码
蓝牙数据下发是0-100的百分比,但是PWM的API,不是接收百分比的,所以需要转化一下才可以设置为百分比的占空比。经过实验得知接收值要乘以240后就是百分比了。
2、硬件简介
调整LED亮度的方法总结起来有两种方式:调整电流、调整电压。
1、调整电压是通过占空比,PWM是频繁的开关,导致平均电压降低,从而调整亮度。
2、通过恒流源直接调整电流,直接控制亮度会更好。
下图的模块就是一个恒流源,可以通过PWM调整恒流源输出的大小。
硬件接线图
3、Web Ble网页蓝牙控制亮度
本次使用的上位机是Web Ble,一套代码可以在手机、平板、电脑上运行。
Web BLE(Web Bluetooth)是一种允许网页应用与蓝牙低功耗(BLE)设备进行交互的技术。以下是关于Web BLE的简单介绍:
基本概念
Web BLE通过Web Bluetooth API实现网页与BLE设备的通信。它基于GATT(Generic Attribute Profile)协议,其中网页应用作为GATT客户端,BLE设备作为GATT服务器。
主要功能
1. 设备发现:通过`navigator.bluetooth.requestDevice`方法,网页应用可以扫描并请求用户选择附近的BLE设备。
2. 服务与特征访问:连接后,应用可以访问设备的服务(Services)和特征(Characteristics),并进行读写操作。
3. 数据交互:支持读取、写入和监听设备数据的变化。
优势
跨平台:支持多种操作系统和主流浏览器(如Chrome、Edge)。
低功耗:基于BLE技术,适合物联网设备。
易用性:提供简单易用的API,降低开发难度。
4、视频演示
相关链接如下:
https://v.youku.com/video?spm=a2 ... =&playMode=pugv
直接嵌入的视频有些问题,只能点链接跳转观看了
5、总结
TL721X这个新的芯片资料太少了,只能参考以往其他芯片的文档来开发(但是由此可见标准化的SDK相当不错),没有什么好说的,希望官方马上、快速更新相关资料。
本次评测活动的文档都比较详细,希望可以为后来者参考,少踩点坑。
|
|
|
|
|
|
|
|
|