ch592f学习

  • ble基本组成 att是原始数据键值对,gatt是给原始数据加以修饰device service characteristic

gap 管理设备名字 是否可见 是否可链接 广播管理

|

CH592 Device -gatt

├── 温湿度 Service -gatt

│ │

│ ├── 温度 Characteristic Temp_Read/NotifyCallback()

│ │ ├── Read

│ │ └── Notify

│ │

│ └── 湿度 Characteristic -gatt

│ ├── Read -gatt

│ └── Notify -gatt

└── OTA Service

└── OTA Characteristic

├── Write

└── Notify

实际对应

ATT Table

Handle1

Handle2

Handle3

Handle4

...

  • 代码解析
cpp 复制代码
// Simple GATT Profile Callbacks

static OTAProfileCBs_t Peripheral_OTA_IAPProfileCBs = {
    OTA_IAPReadDataComplete, // Charactersitic value change callback
    OTA_IAPWriteData
};

OTAProfile_AddService(GATT_ALL_SERVICES);

 //  Register callback with OTAGATTprofile
OTAProfile_RegisterAppCBs(&Peripheral_OTA_IAPProfileCBs);
  • 理解

开机

OTAProfile_AddService()

创建

BLE Device

└── OTA Service

└── OTA Characteristic

OTAProfile_RegisterAppCBs()

给Characteristic绑定事件回调处理

Write

OTA_IAPWriteData()

Notify完成

OTA_IAPReadDataComplete()

  • 实际运行

手机发送数据

Write

OTA Characteristic

OTA_IAPWriteData()

Rec_OTA_IAP_DataDeal()

CMD_IAP_INFO

CMD_IAP_ERASE

CMD_IAP_PROM

...

设备回数据

OTA_IAP_SendData()

Notify

OTA Characteristic

手机

发送结束

OTA_IAPReadDataComplete()

相关推荐
星火跨境XINGHUOS9 小时前
独立站搭建后去哪里学运营?全链路学习路径拆解
学习
统计学小王子9 小时前
《数学少年-从正负号到几何原本》(第三章:“进退加减,循规而行“)--3.3 奶茶店流水账
学习·初中数学科普·数学科普
05664610 小时前
RAG 向量检索:从“查字“到“查意“
数据库·人工智能·学习·oracle
却道天凉_好个秋10 小时前
音视频学习(一百零二):全彩夜视
学习·音视频·全彩夜视
声网10 小时前
Agent-VUI 设计:写在语音智能体的「ChatGPT 时刻」前夜|Voice Agent 学习笔记
笔记·学习·chatgpt
05664610 小时前
agent学习Day23——文件上传与 Embedding 语义检索
python·学习·embedding
小白说大模型10 小时前
【MYSQL】MYSQL学习的一大重点:索引(下)- B+树
b树·学习·mysql
却道天凉_好个秋10 小时前
音视频学习(一百零一):IR-Cut
学习·音视频·ir-cut
森诺Alyson10 小时前
前沿技术借鉴研讨-2026.8.6(影响中国育龄妇女生育偏好的因素/分孕周血压与不良妊娠结局的风险)
论文阅读·经验分享·学习·论文笔记
若无情我 纸小铭11 小时前
Nginx学习笔记(二) Nginx--connection&request
笔记·学习·nginx