首页 业界资讯 解决方案 微处理器与DSP 消费电子设计 测试与测量 电源技术 计算机与外设 可编程器件 模拟设计专区 嵌入式系统 通信与网络
→ 当前位置:照明设计网-电子专栏>嵌入式系统>正文

蓝牙无线耳机设计及VxWorks移植方法的研究

照明设计网-电子专栏 5iLight.COM 发布时间:2007-08-20

  蓝牙耳机是一种无线语音传输技术,是基于耳机在无线技术方面的延伸。它是相配于蓝牙技术而进入多媒体个人区域网络的。随着蓝牙技术的日趋完善和蓝牙产品市场占有率逐渐提升,蓝牙耳机在技术上也将不断得到改进,使之成为个人多媒体区域网络的主要配套产品。蓝牙耳机的应用范围除了手机以外,PDA、无绳电话应用、汽车免提工具、电话终端等,也是蓝牙耳机发挥技术优势的应用领域。本文设计的蓝牙耳机支持蓝牙规范1.2版本,传输距离达10 m,传输速率达723.2 kb/s,并且具有低功耗和(几乎)无辐射等技术优点和优势。

  1 蓝牙技术

  蓝牙作为一种低成本、短距离的无线连接技术标准,是由Ericsson、IBM、Intel、Nokia和Toshiba五家公司共同倡导的一种全球无线技术标准,是一种无线数据与语音通信的开放性全球规范。它以低成本的短距离无线连接为基础,为固定设备与移动设备通信环境建立一个特别连接。其实质是建立通用的无线空中接口及其控制软件的公开标准,实现设备问的电缆替代。

  蓝牙技术规范包括协议和应用规范两个部分。协议定义了各功能元素各自的工作方式,整个蓝牙协议体系结构分为4层,即核心协议层、线缆替代协议层、电话控制协议层和采纳的其他协议层;应用规范则阐述了为了实现一个特定的应用模型,各层协议间的运转协同机制。较典型的应用规范有拨号网络、耳机(headset)、局域网访问和文件传输等。蓝牙耳机的协议栈原理如图1所示。

蓝牙耳机的协议栈原理

蓝牙耳机电路原理框图

  2 硬件设计

  硬件电路信号处理与控制部分采用Zeevo公司的基于ARM7的音频处理器ZV4301。ZV4301处理器是在一个单芯片收发器上加入一个集成RF、数字信号处理、通信处理和运算及控制处理功能的48 MHz APM7微处理器,片外扩展闪存,以实现需要技术和高度最佳化的音频处理。

  编解码芯片采用飞利浦公司的UDAl380音频芯片。UDAl380是一颗专为便携式产品所设计的单芯片立体声音频编解码器,可以提供立即可用的先进音频功能。这颗音频编解码器具有24位数据路径、多重时钟支持、DC偏移消除、支持多重数据格式以及数字静音检测等集成功能。本设计中,UDAl380利用与微控器接口作音控处理.并利用L3接口来控制音量。

  3 I2S总线

  本设计在硬件电路上使用基于I2S总线的音频系统体系结构。I2S(Inter-IC Sound bus)是飞利浦公司提出的串行数字音频总线协议。

  I2S总线只处理声音数据,其他信号(如控制信号)必须单独传输。为了使芯片的引脚尽可能少,I2S只使用了三根串行总线。这三根线分别是:提供分时复用功能的数据线(SD)、字段选择线(声道选择WS)、时钟信号线(SCK)。

  此设计中采用电源统一供电,ZV4301作为主设备,UDAl380作为从设备。ZV4301使用3个通用I/O口来模拟I2S总线。其读写I2S总线的数据主要包括以下几个函数;

  word_selection(); //字选择函数
serial_clock(); //时钟信号函数
serial_data(); // 串行数据函数
shift_register(); //寄存器移位函数

I2S总线读写时序

  4 软件设计

  VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统。良好的持续发展能力、支持多种硬件环境、高性能的内核以及友好的用户开发环境,使之成为所有独立于处理器实时系统中最具特色的操作系统。

  在该设计中,软件协议全部下载到蓝牙设备内核处理器的外置闪存中,操作通过人机接口控制。基于VxWorks的软件编写工作主要包括:BSP包的改动、程序的编写和操作系统的裁减。由于VxWorks的高度灵活性,可以很容易地对这一操作系统进行定制或作适当开发,来满足系统的实际应用需要。BSP包的改动指根据目标硬件实际配置修改系统的配置参数宏(MAC-RO),主要修改config.h、makefile.h、bspname.h文件。

  程序编写函数主要包括以下7个。

  (1)系统引导函数

  VxWorks操作系统在一些板级系统初始化后自动执行tUsrRoot()函数,以完成初始化。

  tUsrRoot()
…… //必要初始化程序
vInitializeLmp(); //LMP初始化完成
vInitializeL2cap(); //L2CAP初始化完成
vInitializeSdp(); //SDP初始化完成
vInitializeRf(); //RFCOMM初始化完成
vInitializeHA(); //HeadsetApplication初始化完成
exit(); //退出

  (2)系统初始化函数(以L2CAP为例)

 

  typedet
{MSG_IDSdpToL2cap;
MSG_ID L2capToSdp;
MSG_ID RfToL2cap;
MSG_ID L2capToRf;
MSG_lD HAToSdp;
MSG_ID SdpToHA;
MSG_ID HAToRf;
MSG_ID RfToHA;
}MSG_QUEUE_ID//定义消息队列1D结构体类型
MSG_QUEUE_ID MsgQueueld; //定义全局消息队列ID结构体,用于存放每个消息队列的ID
vInitlalizeL2caD();//L2CAP初始化,包括初始化全局变量、创建定时器、创建消息
//队列、创建并启动任务

  (3)LMP软件设计

  基带程序运行在蓝牙芯片的信号处理单元中,而LMP程序运行在蓝牙芯片的微处理器中,它们通过邮箱来交换信息。只要任何一方向邮箱发送了信息,邮箱就会产生中断信号,另外一方可以在中断服务程序中进行信息读取和处理。其处理函数为;

  vLmpDealFromBB()
//处理来自BaseBand层的消息以建立连接,对来自BaseBand层
//的操作码 决定接受与否,并进行鉴权、加密、处理或断开等操作

共2页: 上一页 1 [2] 下一页
上一篇:基于蓝牙技术新标准 Bluetooth 2.1+EDR解读   下一篇:基于采用分而治之的方法设计嵌入式系统

收藏】 【评论】 【推荐】 【关闭


相关文章
·基于采用分而治之的方法设计嵌入式系统
·双Nios II的红外图像实时Otsu局部递归分割
·DSP Builder的DDS设计及其FPGA实现的探讨
·讨论多核与多执行绪的嵌入式系统解决方案
·测量嵌入式产品实时性能的讨论
·基于嵌入式系统实时性问题
·研究嵌入式高分辨率VGA国像显示的方法
·验证扩大ARM SoC的覆盖缩短仿真时间
·基于中国Linux标准战略与战术的思考
·基于嵌入式系统中“软外设”的研究
发表评论
密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。)
阅读排行
·隔离端子的抗干扰和应用选
·基于Small RTOS51中一个典
·达芬奇数字媒体片上系统的
·DCS控制器中采用ARM处理器
· 基于ARM-Linux和CDMA的远
· 基于单片机的嵌入式SNMP
· 利用MCU实现超长的电池使
· 面向嵌入式系统的I2C总线
· CISC和RISC微控制器
· μC/OS—II的嵌入式串口
专题教程
·基于GPS_GPRS定位定向导航
·基于DLP光显电视的简介
·浅谈智能吸尘器的开发与设
·革命性音响技术之关注
·AA类音频耳机放大器的研
·GPS芯片介绍
·基于蓝牙多媒体可视移动终
·推动IP网络革新的QUICC En
·智能手机操作系统现状剖析
·正在前行的FlexRay
最新文章
·基于采用分而治之的方法设
·双Nios II的红外图像实时O
·DSP Builder的DDS设计及其
·讨论多核与多执行绪的嵌入
·测量嵌入式产品实时性能的
·基于嵌入式系统实时性问题
·研究嵌入式高分辨率VGA国
·验证扩大ARM SoC的覆盖缩
·基于中国Linux标准战略与
·基于嵌入式系统中“软外设
·多核与多线程技术的区别
·利用嵌入式软件设计SoC
·基于双核CPU Intel与AMD多
·低价位开发板——究竟能有
·如何监控和保护Linux下进

首页 - 加入收藏 - 联系我们 -照明设计
照明设计网电子专栏 5ilight.Com 版权所有
Copyright (c); 2007 - 2010 All rights reserved