蓝牙耳机BES2300P通过盒子获取/修改耳机状态信息

本文介绍如何通过盒子实现对蓝牙耳机BES2300P的状态信息获取和参数修改。在生产过程中,使用盒子转发耳机串口数据,自定义通信协议,并解析数据执行相应操作。接收到指令后,调用相应处理函数执行并回复。新增指令只需扩展枚举值和处理函数,便于系统扩展。
摘要由CSDN通过智能技术生成

需求:生产过程中需要对不同版本的耳机编号,修改部分参数,查询相关信息。
这需要用盒子转发耳机串口的信息(你不能每个耳机都飞线,用盒子是最好的),对于信息还需要自定义一份协议,同时耳机程序对收发的数据做出反应。

如何接收数据:

数据帧


typedef struct {
   
    uint8_t frame_head;
    uint8_t cmd;
    uint8_t data_len;    
    uint8_t *p_data;
    uint16_t crc16;
} box_frame;//收到的数据

自定义协议表示左右耳收发

typedef enum {
   
    BOX_FRAME_HEAD_RX_L = 0x10,
    BOX_FRAME_HEAD_RX_R = 0x11,
    BOX_FRAME_HEAD_TX_L = 0x30,
    BOX_FRAME_HEAD_TX_R = 0x31,
} box_frame_head;

直接用api取数据,分析数据头区分左右耳,核算CRC,然后转发给box_cmd_find_manage_handle去执行操作

static void box_manage_analyze_recv_data{
   
    uint8_t *p_data;
    uint16_t data_len;
    hal_box_rx_get(p_data ,data_len );
    if(p_data == NULL) {
   
        X2BM_TRACE(0, "data == NULL");
        return;
    }
    if(data_len == 0) {
   
        X2BM_TRACE(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值