恒玄BES调试笔记-BES2500如何区分左右耳

TWS区分左右耳常见的两种方式:gpio的高低电平、蓝牙地址的奇偶性和flash中写标志位。

方式各不相同,对于实现方式(软件和硬件)和生产管控,各有优劣!

办法一:gpio的高低电平

#define TWS_SIDE_ROLE_PIN							(HAL_IOMUX_PIN_P2_5)	

const struct HAL_IOMUX_PIN_FUNCTION_MAP app_tws_side_role_cfg = {
    TWS_SIDE_ROLE_PIN, HAL_IOMUX_FUNC_AS_GPIO, HAL_IOMUX_PIN_VOLTAGE_MEM, HAL_IOMUX_PIN_PULLUP_ENABLE,
};
/**0:left;1:right*/
uint32_t app_tws_get_earside(void)
{
    return hal_gpio_pin_get_val(app_tws_side_role_cfg.pin);
}

办法二:蓝牙地址的奇偶性

首次开机获取蓝牙地址,判定最后一位奇偶性,写到flash中保存。

蓝牙地址获取方式可参照:BES2500蓝牙地址和蓝牙名称api

办法三:工厂生产时直接通过工具写到flash中,保留标志位。

版权声明:本文为CSDN博主「leezs0614」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liu_xinglfz/article/details/122750164

生成海报
点赞 0

leezs0614

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

RT-Thread Studio移植LAN8720A驱动

RTT网络协议栈驱动移植(霸天虎) 1、新建工程 ​ 工程路径不含中文路径名,工程名用纯英文不含任何符号。 2、用CubeMx配置板子外设 2.1、配置时钟 ​ 按照自己板子配置相应时钟。

ESP8266 无限重启踩坑

最近做了一个电子墨水屏万年历,在移植屏幕代码时遇到了esp8266无限软复位的问题,如果你的串口打印是以下图片所示,那么恭喜你问题解决了。 造成软复位的原因是因为,程序里有死循环&#xf

Renode应用:在RISC-V核上运行FreeRTOS

本篇记录通过Renode在RISC-V核上运行FreeRTOS demo的情况。本来不准备写这一篇,但是发现近期工作学习密度实在太大,上周工作的中间结果这周竟然完全想不起来了,不得不又花了一些时间从头摸