新闻中心

EEPW首页 > 消费电子 > 设计应用 > 基于S3C4480X控制的蓝牙音频网关设计与实现

基于S3C4480X控制的蓝牙音频网关设计与实现

作者: 时间:2010-08-11 来源:网络 收藏

2.1 模块ROKl01008的结构特点
本系统选用Ericsson公司的ROKl0l008模块,该模块集成度高,功耗小,可提供高至接口HCI层的功能,并具有UART、I2C和PCMCIA三种主机接口,可方便地与主机进行语音和数据的传输。ROKl0l008支持蓝牙规范v1.OB,其接收器的最大输入电平为+13 dBm,动态范围较广,能确保发送器可靠的通信,其输出功率可达Class2,UART最大数据流为460 kbps。同时ROKl01008可支持语音和数据传输功能,能够点对点的连接。

本文引用地址:https://www.eepw.com.cn/article/166649.htm


ROKl01008模块的组成如图3所示。该模块内部带有无线收发器、基带器、闪存、电源管理和时钟五个模块。其中无线收发模块由蓝牙收发器和天线组成。其功能是为和终端设备提供无线通道。基带控制器可完成频率的合成,同时完成基带模块的数据比特信号到无线电信号的转换过滤,并将无线电信号以一定的功率和跳频频率发送出去。ROKOl008的工作频段在2.4 GHz~2.5 GHz ISM之间,有79个信道,每个信道l MHz。
2.2 蓝牙硬件结构
蓝牙的硬件包括蓝牙芯片和编/解码器(CODEC)。嵌入式蓝牙音频网关电路主要用于提供音频输入/输出接口,并建立音频连接。图4为蓝牙音频网关的硬件电路。蓝牙模块电压为+3.3 V。利用蓝牙模块的UART与单片机S3C44BOX的UART进行相互连接。可构成通信通道。而S3C44BOX也可与PC机通过UART接口进行通信并互操作。CODEC负责音频的输入输出。

3 蓝牙音频网关的软件
蓝牙音频网关的主要Bluestack协议栈来完成,音频网关软件分为三层机构,即BlueStack协议栈、AG客户机程序和连接管理器。
BlueStack是剑桥咨询有限公司的蓝牙协议软件栈,可用C语言。它遵循蓝牙特殊兴趣小组提出的分层模型,可支持逻辑链路控制并适配协议上使用串口仿真协议或二进制电话控制协议,并将其作为传输协议的规范层。BlueStack协议栈可实现Bluetooth的所有功能。
整个BlueStack的协议栈实现采用消息驱动,层与层之间使用消息队列传递。在嵌入式蓝牙音频网关应用程序中,一般会涉及两大类消息:CM消息和BlueStack消息。CM消息可在客户机和连接管理器之间进行传递,而BlueStack消息则在BlueStack协议栈之间传递。BlueStack原语类型有DM PRIM、RFC_PRIM、SDP_PRIM 及L2CAP_PRIM四种,在AG应用中,一般会用到前三种。BlueStack消息格式为DM (RFC、SDC或SDS)_原语_扩展名。
AG应用中通常会定义两个任务,一个是CM任务,任务号与队列号为O;另一个是AG任务,任务号与队列号为1。AG客户机将所要传递给CM的消息提交给队列l,CM则将要传递给AG的消息提交给队列0。
应用程序应为ARM与蓝牙之间提供通信接口,主要是在主机间建立两个L2CAP信道(控制信道与数据信道)。初始化时,蓝牙模块应被唤醒,并进行写数据操作(队列形式),然后通过请求建立连接。当AG客户机发出请求信号时,如果CM有回应,说明可以建立连接。数据收发过程中,数据要进行封装/解封、分类等操作。图5所示为蓝牙数据收发过程的软件流程图。

4 结束语
S3C44BOX内核的功能强大,并可实现操作系统的内嵌,因而可通过单片机系统构建嵌入式操作系统平台。本文在ARM平台的基础上,了一种S3C44BOX的蓝牙音频网关。经测试,该网关可实现蓝牙耳机的接入,并成功实现配对与语音数据传输。蓝牙耳机与音频网关在进行相互操作前,需要建立配对连接,也就是说,这种连接是要通过蓝牙鉴权和绑定来实现的。而这种关系一旦建立,之后就不用再执行此操作了。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭