[评测分享]
【TL7218X开发板】六、实现多端遥控灯
#板卡评测
 
1122 人阅读
|
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相当不错),没有什么好说的,希望官方马上、快速更新相关资料。 
本次评测活动的文档都比较详细,希望可以为后来者参考,少踩点坑。 
 
 |   
 
  
  
  
 
 
 | 
| 
 | 
| 
 | 
| 
 | 
 |