位置:51电子网 » 技术资料 » 通信网络

蓝牙接口系统软件设计

发布时间:2008/12/17 0:00:00 访问次数:597

  整个系统的软件有3种设计方法,根据不同的应用场合和系统的复杂程序采用不同的设计方法。一般情况 下,简单的系统可以采用常规的软件设计方法;较为复杂的系统可以采用dsp仿真软件cos提供的dsp/bios 设计方法,dspibios是ti公司专门为dsp设计的嵌人式软件设计方法;最为复杂的系统需要采用嵌人式操作 系统进行软件设计,目前0map5912支持的操作系统包括wince、linux、nucleus以及vxworks等,可以根据 需要选择不同的操作系统。本文系统着重于介绍系统的蓝牙接口实现,可以采用常规的软件设计方法,其 实现最为简单方便。

  系统的软件结构如图1所示。软件结构中的初始化模块包括0map59l0系统、键盘液晶、数据和语音通信、 flash和pc读写以及蓝牙模块的初始化。在初始化过程中设置键盘扫描时间、语音采样频率、显示状态等各 种参数。整个系统初始化之后,程序进人监控模块,监控模块随时判断各个模块的状态,并进人相应的处理程序。数据通信模块控制omap5910和蓝牙模块的数 据接口;语音通信模块控制0map5910和音频ad/da的接口;蓝牙接口收发控制omap5910和蓝牙模块的信号收 发;flash读写模块控制omap5910对其片外flash的读写,必要时可以将某些重要数据存储到flash中,此外 omap591 0的上电引导程序也存储在flash中;键盘和显示模块控制系统的人机接口;pc通信模块控制系统 和pc机的连接。

  图1 系统软件结构图

  由于0map5910具有c55系列dsp核,一些数字信号处理算法可以很容易地实现。对于语音信号,可以进行滤 波以提高语音质量;如果传输音乐信号,可以加人音乐处理算法,例如混响、镶边、削峰等多种处理;可 以将语音压缩后传输到pc机,或者解压后播放各种格式的语音信号。使得系统的应用范围更加广泛和实用 。

  设计蓝牙设备收发器的软仵关键是基于蓝牙模块的软件驱动技术。软件驱动包括硬件链路管理器驱动程序 、主机控制接口(hoi)驱动程序、电源模式管理和电源控制以及其他高层驱动程序。

  其中硬件链路管理器驱动程序与物理固件直接相连,提供usb/rs232或其他接口的驱动功能。链路管理器 驱动程序实现了链路管理协议(lmp),负责处理底层链路控制与蓝牙基带接口,该固件支持点对点和点对 多点的通信。

  hoi驱动程序根据hoi命令的各种数据及参数格式,对hoi事件数据包进行处理。hoi为主机提供了访问微处 理器、链路管理器以及硬件状态和控制寄存器的各种命令接口。主机通过hoi驱动程序提供一系列命令控制 蓝牙接口,蓝牙固件的hoi收到命令后,会产生事件返回给主机,用来指示接口的当前状态变化。主机和 hci之间共有以下3种类型数据。

  (1)hal命令包。从主机发向蓝牙的hoi。

  (2)hal事件包。从蓝牙的hoi发向主机。

  (3)hoi数据包。可以从蓝牙的hoi发向主机,也可以从主机发向蓝牙的hal。包括扩展同步连接导向数据 和非实时的异步无连接数据。

  电源模式管理可以对电源设定3种模式,分别为hold(保持)、sniff(唤醒)和park(休息)模式。电源 控制提供了将电源设定为休眠状态的方法,以便最大程度地降低系统功耗。

  高层驱动程序则实现嵌入蓝牙模块的外设的驱动功能。

  dsp和蓝牙接口的软件结构分为3个层次。

  (1)系统的应用程序。

  (2)为蓝牙设备开发的设备驱动程序,包括蓝牙的高层协议(rfcomm和l2cap等)。

  (3)蓝牙基带部分协议:这部分协议已经固化在蓝牙模块中。

  在本系统中,由于采用蓝牙接口模块,其中基带和链接管理协议(link manager protocol,lmp)部分由蓝牙模块实现。用户只需要在dsp即可。

  蓝牙软件使用bluestack编程,完成初始化、连接等功能。蓝牙软件程序流程如图1所示。

  初始化设备包括对指示灯、调试信息以及系统内定时器的初始化。蓝牙内部有一小块称为ps的存储区,是掉电不丢失数据的,蓝牙程序就是将对方地址记录在这一存储区里,每次启动时都对该存储区的蓝牙地址对应的设备建立连接。在初始化完成之后,程序还需要向底层发送消以便使蓝牙程序进入消息循环。消息处理函数是整个程序的核心,所有功能的打开、连接等都由此来完成,其操作均严格依照蓝牙协议的rfcomm层进行。在整个系统中要重点考虑的是数据传输的速率问题。由于当蓝牙工作在1类发射功率(100mw)时,通信距离可扩展到100m,速率限制了蓝牙在宽带网络中的应用。蓝牙点对点传输时对称的最大有效速率为42316kbit/s,不对称最大有效速率为721kbit/s,反向为5716kbit/s。

  omap5912通过异步串口向brf6100发送hci命令,brf6100收到命令后,由固化在其rom的蓝牙协议固件处理,并将向下传递到lm层,lm层负责链路的建立、加密和设置权

  整个系统的软件有3种设计方法,根据不同的应用场合和系统的复杂程序采用不同的设计方法。一般情况 下,简单的系统可以采用常规的软件设计方法;较为复杂的系统可以采用dsp仿真软件cos提供的dsp/bios 设计方法,dspibios是ti公司专门为dsp设计的嵌人式软件设计方法;最为复杂的系统需要采用嵌人式操作 系统进行软件设计,目前0map5912支持的操作系统包括wince、linux、nucleus以及vxworks等,可以根据 需要选择不同的操作系统。本文系统着重于介绍系统的蓝牙接口实现,可以采用常规的软件设计方法,其 实现最为简单方便。

  系统的软件结构如图1所示。软件结构中的初始化模块包括0map59l0系统、键盘液晶、数据和语音通信、 flash和pc读写以及蓝牙模块的初始化。在初始化过程中设置键盘扫描时间、语音采样频率、显示状态等各 种参数。整个系统初始化之后,程序进人监控模块,监控模块随时判断各个模块的状态,并进人相应的处理程序。数据通信模块控制omap5910和蓝牙模块的数 据接口;语音通信模块控制0map5910和音频ad/da的接口;蓝牙接口收发控制omap5910和蓝牙模块的信号收 发;flash读写模块控制omap5910对其片外flash的读写,必要时可以将某些重要数据存储到flash中,此外 omap591 0的上电引导程序也存储在flash中;键盘和显示模块控制系统的人机接口;pc通信模块控制系统 和pc机的连接。

  图1 系统软件结构图

  由于0map5910具有c55系列dsp核,一些数字信号处理算法可以很容易地实现。对于语音信号,可以进行滤 波以提高语音质量;如果传输音乐信号,可以加人音乐处理算法,例如混响、镶边、削峰等多种处理;可 以将语音压缩后传输到pc机,或者解压后播放各种格式的语音信号。使得系统的应用范围更加广泛和实用 。

  设计蓝牙设备收发器的软仵关键是基于蓝牙模块的软件驱动技术。软件驱动包括硬件链路管理器驱动程序 、主机控制接口(hoi)驱动程序、电源模式管理和电源控制以及其他高层驱动程序。

  其中硬件链路管理器驱动程序与物理固件直接相连,提供usb/rs232或其他接口的驱动功能。链路管理器 驱动程序实现了链路管理协议(lmp),负责处理底层链路控制与蓝牙基带接口,该固件支持点对点和点对 多点的通信。

  hoi驱动程序根据hoi命令的各种数据及参数格式,对hoi事件数据包进行处理。hoi为主机提供了访问微处 理器、链路管理器以及硬件状态和控制寄存器的各种命令接口。主机通过hoi驱动程序提供一系列命令控制 蓝牙接口,蓝牙固件的hoi收到命令后,会产生事件返回给主机,用来指示接口的当前状态变化。主机和 hci之间共有以下3种类型数据。

  (1)hal命令包。从主机发向蓝牙的hoi。

  (2)hal事件包。从蓝牙的hoi发向主机。

  (3)hoi数据包。可以从蓝牙的hoi发向主机,也可以从主机发向蓝牙的hal。包括扩展同步连接导向数据 和非实时的异步无连接数据。

  电源模式管理可以对电源设定3种模式,分别为hold(保持)、sniff(唤醒)和park(休息)模式。电源 控制提供了将电源设定为休眠状态的方法,以便最大程度地降低系统功耗。

  高层驱动程序则实现嵌入蓝牙模块的外设的驱动功能。

  dsp和蓝牙接口的软件结构分为3个层次。

  (1)系统的应用程序。

  (2)为蓝牙设备开发的设备驱动程序,包括蓝牙的高层协议(rfcomm和l2cap等)。

  (3)蓝牙基带部分协议:这部分协议已经固化在蓝牙模块中。

  在本系统中,由于采用蓝牙接口模块,其中基带和链接管理协议(link manager protocol,lmp)部分由蓝牙模块实现。用户只需要在dsp即可。

  蓝牙软件使用bluestack编程,完成初始化、连接等功能。蓝牙软件程序流程如图1所示。

  初始化设备包括对指示灯、调试信息以及系统内定时器的初始化。蓝牙内部有一小块称为ps的存储区,是掉电不丢失数据的,蓝牙程序就是将对方地址记录在这一存储区里,每次启动时都对该存储区的蓝牙地址对应的设备建立连接。在初始化完成之后,程序还需要向底层发送消以便使蓝牙程序进入消息循环。消息处理函数是整个程序的核心,所有功能的打开、连接等都由此来完成,其操作均严格依照蓝牙协议的rfcomm层进行。在整个系统中要重点考虑的是数据传输的速率问题。由于当蓝牙工作在1类发射功率(100mw)时,通信距离可扩展到100m,速率限制了蓝牙在宽带网络中的应用。蓝牙点对点传输时对称的最大有效速率为42316kbit/s,不对称最大有效速率为721kbit/s,反向为5716kbit/s。

  omap5912通过异步串口向brf6100发送hci命令,brf6100收到命令后,由固化在其rom的蓝牙协议固件处理,并将向下传递到lm层,lm层负责链路的建立、加密和设置权

相关IC型号

热门点击

 

推荐技术资料

耳机的焊接
    整机电路简单,用洞洞板搭线比较方便。EM8621实际采... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!