BES2300X,BES2500X——框架解析(一)

2023-10-11 09:59

本文主要是介绍BES2300X,BES2500X——框架解析(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

基于BES2300系列芯片的TWS框架解析(一)

引言

BES2300X,BES2500X系列博文请点击这里

本文是BES2300X,BES2500X系列博文框架部分
目前国内市场,BES的TWS方案风生水起,写一下两年来做BES方案的心得

框图

针对BES2300系列芯片(I,Y,Z)的1402/1302内核架构如下图

bestws框图

一,应用层

主要内容是UI,面对生产测试以及终端用户
1,按键,指示灯,NTC,电量管理,出入盒控制,佩戴检测,充电管理等功能,直接与系统层沟通,配合硬件资源外设,完成对应功能。
2,低延时,快速配对,在线语音助手,蓝牙配对连接,音乐,通话(包括通话降噪等音频算法)等功能,通过蓝牙协议层和可选的音频数据处理,由系统层调度,主要占用RAM/FLASH资源,完成对应功能
3,离线语音助手,提示音,linein输入(头戴/或高音质需求)等离线音频功能,通过音频数据处理模块,由系统层调度,主要占用RAM/FLASH资源,完成对应功能。

二,协议与音频信号处理层

1,协议的主要内容是蓝牙协议,主要包括底层的HCI,L2CAP和上层的A2DP,HFP,AVRCP,SPP等具体服务。
2,音频信号处理的主要内容包括audioflinger,audiodecode/audioencode (aac,sbc,scelable,ldac,aptx,scalable,lc3等),audioprocess(软件EQ,AEC,ENC等)

三,系统层

BES使用的是RTX操作系统,主要负责管控系统资源,协调任务调度等

四,硬件层

   主要负责对上面所有功能提供支持

主要注意事项:
1,ram大小
2,Flash大小
3,Mips需求
4,IO管脚以及通信管脚的复用分配
5,外围电路,外围IC,天线等等
6,功耗
7,其他。

本文原创,转载请注明出处

这篇关于BES2300X,BES2500X——框架解析(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/187253

相关文章

IDEA与JDK、Maven安装配置完整步骤解析

《IDEA与JDK、Maven安装配置完整步骤解析》:本文主要介绍如何安装和配置IDE(IntelliJIDEA),包括IDE的安装步骤、JDK的下载与配置、Maven的安装与配置,以及如何在I... 目录1. IDE安装步骤2.配置操作步骤3. JDK配置下载JDK配置JDK环境变量4. Maven配置下

SpringBoot集成图片验证码框架easy-captcha的详细过程

《SpringBoot集成图片验证码框架easy-captcha的详细过程》本文介绍了如何将Easy-Captcha框架集成到SpringBoot项目中,实现图片验证码功能,Easy-Captcha是... 目录SpringBoot集成图片验证码框架easy-captcha一、引言二、依赖三、代码1. Ea

Python中配置文件的全面解析与使用

《Python中配置文件的全面解析与使用》在Python开发中,配置文件扮演着举足轻重的角色,它们允许开发者在不修改代码的情况下调整应用程序的行为,下面我们就来看看常见Python配置文件格式的使用吧... 目录一、INI配置文件二、YAML配置文件三、jsON配置文件四、TOML配置文件五、XML配置文件

Gin框架中的GET和POST表单处理的实现

《Gin框架中的GET和POST表单处理的实现》Gin框架提供了简单而强大的机制来处理GET和POST表单提交的数据,通过c.Query、c.PostForm、c.Bind和c.Request.For... 目录一、GET表单处理二、POST表单处理1. 使用c.PostForm获取表单字段:2. 绑定到结

Spring中@Lazy注解的使用技巧与实例解析

《Spring中@Lazy注解的使用技巧与实例解析》@Lazy注解在Spring框架中用于延迟Bean的初始化,优化应用启动性能,它不仅适用于@Bean和@Component,还可以用于注入点,通过将... 目录一、@Lazy注解的作用(一)延迟Bean的初始化(二)与@Autowired结合使用二、实例解

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

在Rust中要用Struct和Enum组织数据的原因解析

《在Rust中要用Struct和Enum组织数据的原因解析》在Rust中,Struct和Enum是组织数据的核心工具,Struct用于将相关字段封装为单一实体,便于管理和扩展,Enum用于明确定义所有... 目录为什么在Rust中要用Struct和Enum组织数据?一、使用struct组织数据:将相关字段绑

使用Java实现一个解析CURL脚本小工具

《使用Java实现一个解析CURL脚本小工具》文章介绍了如何使用Java实现一个解析CURL脚本的工具,该工具可以将CURL脚本中的Header解析为KVMap结构,获取URL路径、请求类型,解析UR... 目录使用示例实现原理具体实现CurlParserUtilCurlEntityICurlHandler