我们若想设计一套完善的蓝牙 (Bluetooth) 系统,就必须充分掌握其中的技术知识,例如协议堆栈、射频设计及系统集成等方面的专门知识。LMX9820 芯片的面世令蓝牙系统的设计工作变得更为容易。以采用微控制器并设有通用异步收发器 (UART) 的定标器、恒温器及仪表为例来说,这类电子设备目前都可无需在软件方面作出任何修改便能轻易添加点对点蓝牙通信的功能。

  蓝牙(Bluetooth)是一种什么技术?

  蓝牙技术是一种无线通信技术标准,原意是用来取代不同长度的电缆,例如长 Class 3支持1 米/ 3.3 英尺无线距离, Class 2 支持 10 米/33 英尺的无线距离。由于第一类电缆用于较长距离的数据传送,因此蓝牙无线通信若要覆盖如此大的范围,其耗电便会远比短距离传送为多,因此便携式电子产品通常都不会采用蓝牙无线通信系统进行长距离的信号传送。

  蓝牙技术以 2.4 GHz 的频带操作,可为 625µs的短信息包提供一个稳定的传输环境,而且可以利用跳频避免信号受到干扰。此外,由于蓝牙技术设有高斯最小移位键控 (GMSK) 调制功能,因此有助降低系统成本。

何谓蓝牙堆栈?

  执行通信协议规定所必要的软件一般称为堆栈或蓝牙协议堆栈。堆栈这个词含有堆合一起的意思,因此按照开放系统互连 (OSI) 网络模式组装一起的模块式或层级式软件便称为堆栈。堆栈有时称为驱动程序,可用于符合 WiFi 及通用串行总线 (USB) 标准的系统。蓝牙技术一如通用串行总线,特别为不同种类的设备分别设有特定的接口。例如,符合通用串行总线标准的键盘和滑鼠、打印机以及音响系统都有特定的驱动程序,而蓝牙也设有特定的概要文件如人机界面设备 (HID)、基本打印概要文件 (BPP) 以及先进音频分配概要文件 (AADP)。

  数据链路必须获得以下几个最基本的概要文件为其提供支持:

  • 一般应用概要文件 (GAP)
  • 介绍服务应用概要文件 (SDAP)
  • 串行端口概要文件 (SPP)

  这些概要文件可以用来连接上文所列的人机界面、打印机及音响系统等设备所预载的应用程序。更先进的数据传送及音响系统软件也可利用串行端口概要文件作为驱动程序,但两者之间必须有软件作为接口以及采用公用的数据帧。

图1 典型的接口电路图

Simply Blue可以精简蓝牙系统的设计

  即使蓝牙系统内置了堆栈及概要文件,串行端口概要文件 (SPP) 与其它软件的基本连系仍有待建立,换言之,要待有关指令全部完成交换后,数据链路才可视为正式建立。换言之,原有系统的软件必须作出修改,以致整个工程项目的施工时间会被耽误,对于内置只读存储器的设备来说,这方面的时间延误尤其显著。

  幸好另外还有一个更为容易的方法可为蓝牙系统编写应用程序。以 LMX9820 为例来说,由于这款芯片已预载了 NRE 以及免缴版税的全面嵌入式蓝牙堆栈 (如 L2CAP、RFComm 及 SDP) 与概要文件 (如 GAP、SDAP 及 SPP),因此客户可以专注于设计工作,无需为投资什么软件而分心。LMX9820 设有透明模式,可以通过预置的通电功能启动系统,传送原始数据。换言之,任何设有通用异步收发器 (UART) 的电子产品都可与任何蓝牙装置如个人数字助理 (PDA) 或笔记本计算机连通。现有产品如设有红外线数字信号连接 (IrDA) 端口的打印机及诊断设备都可利用蓝牙技术进行无线数据传送。

  天线的信号接收能力:示例一

  图1的电路图显示我们其实很容易便能为电子产品添加蓝牙通信功能。图中的电路只需采用极少的独立式电源供应器及去耦电容器,但即使如此,我们设计时也须抱持审慎的态度,因为多噪音的电源供应器可以影响射频系统的收发能力。图中的 12 MHz 石英振荡器或时钟负责为系统功能计时。较新的 LMX9820A 芯片可以提供 32 kHz 的时钟频率以供选择,以便系统可以自动选用节能模式操作。

图2 Simply Blue 协议堆栈

LMX9820 芯片的通用异步收发器能以高达 921.6 kbps 的速度操作,并可另外配置 ISEL1 及 ISEL2 管脚,以便将速度调低至 9600 bps 及 115.2 kbps 等较低的速度,也可利用通用异步收发器设定其它速度,例如 38.4 kbps (初始速度则设定为 921.6 kbps)。对于操作速度低于 115.2 kbps 的系统来说,最理想的做法是设立硬件交接机制,但这并非必要。数据链路若直接与微控制器连接一起,可令数据传送速度提高至 921.6 kbps,理论上空气接口的速度可高达 708 kbps (按规格应高达 721 kbps)。产品编号为 BT-TXA-KT1-0-01 的 Simply Blue 评价套件因为受到装设在接口电路板上及大部分个人计算机内的 RS-232 电平转换器集成电路所限制,以致速度无法超过 230.4 kbps。

  如何让电子产品充分利用Simply Blue技术

  透明模式

  LMX9820 芯片已预先设定在启动后会自动采用从属配置,然后转用只会传送原始有效载荷数据的透明模式。由于 LMX9820 芯片采用这样的设计,因此可以自动与个人数字助理或便携式计算机等设备连通,以免干扰原有设备的主处理器的运作。

  命令模式

  蓝牙系统只要发出 ASCII‘中断’("break") 命令,便可进入命令模式,以便内置蓝牙通信系统的电子产品可以添加更先进的功能,满足个别产品的特殊要求。正如图 2 所显示,这种方法需要更多方面的配合,因为产品需要通过应用编程接口 (API) 将相关的命令传送到 LMX9820 芯片,但这个方法的优点是可以提供透明模式所无法提供的功能特色。为了方便使用及确保数据安全,系统设计工程师可为个别客户预先设定局部命名、管脚代码及链路键等参数。若采用命令模式,LMX9820 芯片能够利用一点至多点的节点操作,以便同时连通高达三具不同的电子装置。

石英振荡器

  蓝牙系统必须采用 20 ppm 的石英振荡器或时钟 (若石英振荡器或时钟已老化,15 ppm 也足够),因为这两种计时工具的优劣会直接影响射频系统的性能。工程师必须依照石英振荡器厂商就有关电容负载所定的有关规定,以及将 LMX9820 芯片的管脚电容一并计算在内。若采用较新型号的 LMX9820ASM 芯片,旧型号产品如LMX9820SB 芯片原本采用的电容器可能因为输入电容稍有不同以致必须更换,以确保电容器可以配合石英振荡器运作。

  天线

  天线效率及模式可以大大影响电子产品的接收范围及接收能力。天线的增益越高,其接收范围也越广,但由于便携式电子产品具有高度的定向性,以致这些产品必须互相瞄准对方,因此广阔的接收范围对这类便携式电子产品并不适用,也正因如此,大部分便携式产品都采用单向的设计,以确保性能稳定可靠。为了确保天线能充分发挥其性能,我们必须加设另一相匹配的电线,其线迹宽度及电路板厚度必须有足够的误差容限,以方便生产。有关接地层及布局规格的资料,可以查阅相关厂商的数据表及应用技术参考资料。

如何解决Bluetooth系统设计的棘手问题相关推荐

  1. 张逸解构DDD:软件的核心是为用户解决领域相关的问题

    软件的核心是其为用户解决领域相关的问题的能力.所有其他特性,不管有多么重要,都要服务于这个基本目的.--EricEvans,<领域驱动设计> 应对软件复杂度,许多顶尖的软件设计人员与开发人 ...

  2. 你所不知道的SQL Server数据库启动过程,以及启动不起来的各种问题的分析及解决技巧(转)...

    目前SQL Server数据库作为微软一款优秀的RDBMS,其本身启动的时候是很少出问题的,我们在平时用的时候,很少关注起启动过程,或者很少了解其底层运行过程,大部分的过程只关注其内部的表.存储过程. ...

  3. android grideview 图片png透明,Android完美解决GridView异步加载图片和加载大量图片时出现Out Of Memory问题...

    众所周知,我们在使用GridView或者ListView时,通常会遇到两个棘手的问题: 1.每个Item获取的数据所用的时间太长会导致程序长时间黑屏,更甚会导致程序ANR,也就是Application ...

  4. 计算机输入代码0怎么能输入,电脑蓝屏0xv0000098错误代码怎么回事_电脑蓝屏0xv0000098错误代码的解决方法...

    电脑蓝屏故障是一种非常普遍的现象,想必大家都遇到过,此故障解决起来也比较棘手.很多使用win10系统的小伙伴在开机遇到了蓝屏0xv0000098错误代码,明明一切都正常的,到底是哪里出现问题?现在就来 ...

  5. 无法对数据库'XXX' 执行删除,因为它正用于复制的解决方

    困扰二天的问题终于得以解决,貌似一个棘手的问题只要知道方法也似乎变得异常简单,记录此次的解决方法,避免遗忘. 无法对 数据库'UDS' 执行 删除,因为它正用于复制. (.Net SqlClient ...

  6. WIN7系统忘记密码怎么办?忘记开机密码的解决方法

    一.忘记了Win7开机密码 1.开机到欢迎界面时,出现输入用户名密码的提示框,按Ctrl+Alt+Delete,跳出帐号窗口,输入用户名:administrator,回车即可. 2.如果这个admin ...

  7. linux firefox严重卡顿,火狐浏览器卡顿怎么办 卡顿解决方法一览

    Firefox火狐浏览器也是小编感觉非常好用的浏览器,极少出现卡顿的情况,但遇上卡顿的情况也是比较难以解决的,因为造成卡顿的原因比较多,所以解决起来也比较棘手,但是根据Firefox火狐浏览器官网发布 ...

  8. 基于FPGA的实时图像边缘检测系统设计(上)

    今天给大侠带来基于FPGA的实时图像边缘检测系统设计,由于篇幅较长,分三篇.今天带来第一篇,上篇,话不多说,上货. 导读 随着科学技术的高速发展,FPGA在系统结构上为数字图像处理带来了新的契机.图像 ...

  9. 系分考试论文实例12篇

            3月4日 -3月7日加入组员:        LEO,蒋彪,草籽,Albert,狮子头,小狐狸的樱桃,春林 压力使多得推荐 [2008-3-7] 出处:来自08上半年系统分析师QQ群( ...

最新文章

  1. (0023)iOS 开发之Mac上MySQL服务的卸载
  2. Lock和synchronized比较详解
  3. Windows7系统自带的备份与还原功能使用介绍
  4. 简单概述 .NET Framework 各版本区别
  5. 工业解密:百度地图背后的路线时长预估模型!
  6. 将科学计数法的数值转化为字符
  7. 期货市场技术分析01_理论基础
  8. 软硬一体打天下,英特尔在 AI 上做了些什么?
  9. codeforces 580C Kefa and Park(DFS)
  10. 缺陷分析之缺陷预防的过程
  11. windows下cmd批量复制文件
  12. 手机计算机里面的符号代表什么意思,计算器上的符号各代表什么意思?
  13. 修改服务器的返回数据,使用charles 修改服务器返回数据
  14. 详解Python中get函数的用法(附代码)
  15. ios xcode 给ipa包签名
  16. 警惕,新增1本,被剔除1本,最新12月SCIE SSCI期刊目录更新
  17. 通用技术课件_优化—让我们做得更好 | 高中通用技术优质课展示
  18. 从新手运气到幸存者偏差
  19. 软件工程(2018)第一次作业
  20. Qt 实现带阴影 无边框的QMessageBox

热门文章

  1. 006_url-pattern配置
  2. mybatis plus 多表查询_Mybatis 多表查询之一对多
  3. Android开发工具:Git,Github,GitBook
  4. mysql怎么实现事务序列化_MySQL 架构 - 事务处理
  5. maya绑定控制器在大纲里是灰色的_3dsmax绑定转maya ADV插件
  6. 虚拟主机1服务器,虚拟主机1服务器
  7. php 注册回调函数,PHP回调函数
  8. c语言程序连接后扩展名为,C语言程序经过编译、连接后生成的可执行文件的扩展名是...
  9. php扩展 zval_copy_ctor,zend api扩展的php对象的autoload工具
  10. 自动化监控--手动添加itme监控项详解