基于蓝牙模块的智能家居网络设计3832486.pdf

上传人:得****3 文档编号:83524262 上传时间:2023-03-31 格式:PDF 页数:36 大小:4.05MB
返回 下载 相关 举报
基于蓝牙模块的智能家居网络设计3832486.pdf_第1页
第1页 / 共36页
基于蓝牙模块的智能家居网络设计3832486.pdf_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《基于蓝牙模块的智能家居网络设计3832486.pdf》由会员分享,可在线阅读,更多相关《基于蓝牙模块的智能家居网络设计3832486.pdf(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 摘要 随着科学技术的发展和人们生活水平的提高,人们越来越注重自己生活环境的舒适、安全与便利。近年来兴起的智能家居系统满足了人们的这种需求,它有效地在家居环境中组建家庭信息网络,将各种家电产品结合成一个有机整体,对家电设备进行集中或异地的智能化控制与管理,并且能够与外界进行信息交流。蓝牙技术作为一种无线数据与语音通信的开放性全球规 X,可提供低功耗、短距离的无线空中接口,在各种固定与移动设备之间实现无线通信。在移动通信、无线数据采集、无线遥控与遥测、计算机网络及自动控制等多种领域,蓝牙技术都有着广泛的应用。应用设计的蓝牙软硬件接口,本文开发了一个基于蓝牙模块的智能家居控制系统,在该系统中,上位

2、机端通过 USB 控制蓝牙适配器,其发送的控制指令由下位机端蓝牙模块接收后传给单片机,并在单片机端编写了一个基本的蓝牙及模拟家电控制程序,从而实现了 PC 与模拟家电的无线控制功能。本文提供的蓝牙软硬件接口方案及数据传输模块,不仅可以用来进一步开发蓝牙高层协议,而且还可作为通用的接口函数和模块应用到多种无线场合。关键字:蓝牙技术;智能家居;蓝牙模块 ABSTRACT With the development of science and technology,and the improvement of peoples living standards,people are paying mo

3、re and more attention to thefortablity,safety and convenience of their living environment.The emergence of smart home system in recent years,just meets the needs of people.It effectively constitutes appliances into a home information network and makes all kinds of appliances bined into an organic wh

4、ole.It can intelligently control appliances locally or remotely,and exchange information with the outside world.As a globally open wireless data and speech munication specification Bluetooth technology can provide low-power、shortdistance wireless air interface and implement wireless munication betwe

5、en various fixed and mobile equipmentsBluetooth technology has a wide range of applications in mobile munications,wireless data collections,wireless remote control and sensing puternetwork and automatic control and other areas Usingthe bluetooth hardware and software interfacedesigned,This paper dev

6、eloped an smart home furnishing control system based on Bluetooth moduleIn the system,The PC side is controlled by USB bluetooth adapterIts control instruction is received by the lower end of Bluetooth module which sent it to the microcontroller.A basic bluetooth and home appliance control simulatio

7、n program was prepared in the MCU.So,the system can realize wireless control function of PC and simulation of electrical appliances.And then,data can be transmitted between the two partsAfter that,a further development which is file transmission is implemented Keywords:Bluetooth technology;smart hom

8、e;Bluetooth moudule 目录 前言 1 第一章绪论 2 1.1 课题研究背景 2 1.2 智能家居的发展状况2 1.3 未来智能家居的发展趋势3 1.4 研究的目的和意义3 1.5 课题研究的内容4 第二章蓝牙技术介绍5 2.1 蓝牙系统组成 5 2.2 蓝牙协议栈 6 2.3 蓝牙控制器接口(HCI)分析 6 2.3.1 HCI概述 6 2.3.2 HCI传输层 7 2.3.3 HCI分组格式 8 第三章设计方案及模块介绍10 3.1 蓝牙家居控制系统组成结构10 3.2 主要硬件模块介绍10 第四章系统硬件设计14 4.1 下位机模块设计 14 4.2PC 机与蓝牙模块的连

9、接 16 4.3 单片机与家用电器的连接 17 4.3 系统电源模块原理图 17 第五章系统软件设计 19 5.1 单片机端软件设计 19 5.2 PC 端软件设计 24 第六章系统测试与分析 29 结论 31 致谢 31 参考文献 31 附录 32 前言 随着科学技术的发展和人们生活水平的提高,人们越来越注重自己生活环境的舒适、安全与便利。近年来兴起的智能家居系统满足了人们的这种需求,它有效地在家居环境中组建家庭信息网络,将各种家电产品结合成一个有机整体,对家电设备进行集中或异地的智能化控制与管理,并且能够与外界进行信息交流。首先,在研究蓝牙 SPP 应用模型和我国家庭控制子网通信协议规 X

10、的基础上,经过比较当前各种家庭内部组网技术的优劣,选择了基于蓝牙协议的家庭控制子网的实现方案。该方案使用蓝牙 SPP 模型来承载通用设备控制协议,降低了家庭控制子网组网过程中的难度,符合实际应用场景。其次,研究并提出了智能家居系统实现过程中处于核心地位的智能家居控制器的软硬件设计方案。在硬件方面,选用 Samsung 公司具有较高性价比的 ARM9 芯片 S3C2410 作为其 CPU,完成了智能家居控制器的电源、显示、输入、存储以及无线蓝牙和 GPRS 的模块的电路设计;在软件方面,成功地将 U-boot、嵌入式 Linux 内核和蓝牙协议栈 BlueZ 移植到了智能家居控制器目标板上,并在

11、 Linux 内核中为系统各个硬件模块添加了相应的驱动程序。最后,对蓝牙模块进行了测试,实现了蓝牙的点对点通信,并且为系统开发了部分常用的界面。对研究工作做了总结,列出了所实现的研究成果以及有待实现的智能家居控制系统的功能。第一章绪论 1.1 课题研究背景 智能家居,或称智能住宅,在英文中常用 Smart Home、Intelligent home,与此含义相近的还有家庭自动化(Home Automation)、电子家庭(ElectronicHome、E-home)、数字家园(Digital family)、网络家居(Network Home),智能建筑(Intelligent Buildin

12、g)。智能家居是以住宅为平台,兼备建筑、网络通讯、信息家电、设备自动化,集系统、结构、服务、管理为一体的高效、舒适、安全、便利、环保的居住环境。智能家居是在家庭产品自动化、智能化的基础上,通过网络按拟人化的要求而实现的。智能家居可以定义为一个过程或者一个系统,利用先进的计算机技术、网络通讯技术、综合布线技术、无线技术、将与家居生活有关的各种子系统,有机地结合在一起。与普通家居相比,由原来的被动静止结构转变为具有能动智能的工具,提供全方位的信息交换功能,帮助家庭与外部保持信息交流畅通。智能家居强调人的主观能动性,要求重视人与居住环境的协调,能够随心所欲地控制室内居住环境。1.2 智能家居的发展状

13、况 智能家居从上世纪八十年代兴起于日本和欧美,九十年代末引入中国,目前美国有 7000 万家庭依靠智能家庭网络设备生活。近年来,以美国微软公司及摩托罗拉公司等为首的一批国际知名企业先后进入智能家庭网络的研究及开发领域,分辨开发了“梦幻之家”、“家庭主任”、“居所之门”等家庭智能设备,3 公司研发出家用无线网关等网络产品,并与 Microsoft 联手开发通用式即插即用的家庭网络系统。该系统方便地连接家电与网络,可以高速传输文字、语音、视听等咨询。这套产品也适用于小型办公室。国内厂商也在进行智能化家庭网络产品的研发和生产,一大批大型 IT 企业利用自身在资金与技术等方面的优势,在低端市场上已占据

14、了相当重要的地位。清华同方在智能化家庭网络领域与建设部智能化专家委员会共同设立了智能住宅开放实验室,还取得了著名综合布线厂商西蒙、百通全线产品在中国的总代理资格。德达创先科技集团先后开发了 LDM-2000,智能家居控制器、HomeNet 网络化综合管理系统,并开通了中国智能建筑服务网络提供智能化建筑的在线咨询与在线技术支持该已成为国内建筑化领域的权威。1.3 未来智能家居的发展趋势 如何使家居环境变得便利、舒适、人性化、智能化,真正提高人们的生活品质,才是智能家居系统的发展方向,其发展趋势主要有以下几个方面:(1)向个性化方向发展 人们可以根据自己的需要和喜好,选择不同的功能,智能家居发展将

15、不断满足人们要求个性化的需求。(2)向系统高度集成化方向发展 信息家电控制功能、呼叫对讲功能、自动化管理功能、安防监控功能、设备自检功能等多种功能将被集成在一起,统一调度,从而降低成本。随着科学技术的不断发展,系统的集成度将越来越高。(3)向网络化方向发展 网络化是计算机、通讯、电子和物联网等多种技术发展的必然趋势,也是智能家居智能化的一个重要体现。(4)向绿色环保方向发展 环保是全球的要求,智能家居如何利用现有技术减少功耗、降低对社区和家庭的环境污染,提高生活环境的质量,是智能化的一个重要目标。1.4 研究的目的和意义 随着经济的发展和后 PC、物联网时代的到来,人们对自身居住环境的要求在不

16、断地提高,智能化家居将逐渐成为中国家居市场的主流。目前,在 XX、XX、XX 等经济比较发达的地区都已经建立了一批智能型住宅小区,并且正飞速地向其他地区辐射。智能家居将大大改变人们的日常生活和工作方式,带动传统家电制造业、房屋智能化装修、社区信息服务、以及房地产业等相关产业的蓬勃发展。家居智能化、建筑信息化以及相关技术产品正在得到飞速地发展,智能化家居将很快将会走入人们的生活。建设部已将智能化住宅小区列为国家重点发展方向,智能化小区包括了智能家居的设计,智能家居建设是智能小区建设的一部分。目前,国家已经投入了大量的财力和人力在设计和开发符合中国国情的智能家居,因此嵌入式智能家居项目的应用前景非

17、常广阔的。但是,由于智能家居市场的发展还处于初级阶段,智能家居的中的信息设备之间的通信还不是很规 X。为此早在 2005 年,国家已经制定出了家庭网络系统体系结构及参考模型家庭控制子网通信协议规 X、家庭控制子网通信协议规 X等规 X 来推动和管理中国智能家居市场的健康地发展。智能家居控制器是智能家居的核心器件,人们只需一个控制器就可以控制家中的所有电器设备。本文主要研究了智能家居网络的组建,智能家居控制器的设计,这是智能家居实现过程中的重要内容,具有广泛的现实意义,为将来的智能家居提供了一种可行的设计方案。1.5 课题研究的内容 主要通过使各种各样的智能家电都遵守蓝牙协议构建家庭控制子网,在

18、完成智能家居控制器硬件与软件设计的基础上,将控制器应用到了网络化的智能家居系统中。课题研究主要内容具体如下:(1)通信协议的选择 分析家庭内部网络的体系结构,对当前智能家居组网协议进行研究和比较,选定了一个符合家庭内部组网具体要求的通信协议。(2)智能家居控制器硬件的设计 首先,根据对智能家居控制器的具体要求例如功耗、成本、体积等,为其选择一个性价比比较高的 CPU;然后,分别对其余各个功能模块进行硬件电路的设计与调试。(3)智能家居控制器软件的设计。给出软件流程框图,包括运行在单片机和 PC 机上程序,本论文中均采用 C 语言进行编写 第二章蓝牙技术介绍 2.1 蓝牙系统组成 典型的蓝牙系统

19、可分为 5 个单元,即无线射频单元、链路控制单元、链路管理单元、蓝牙协议软件单元和主机应用软件单元。(1)无线射频单元 蓝牙是以无线 LAN 的 IEEE80211 标准技术为基础的,使用 24GHz ISM 全球通自由波段。蓝牙天线属于微带天线,空中接口建立在天线电平为 0dBm 基础上,遵从FCC(Federal munications mission,美国联邦通信委员会)有关 OdBm电平的 ISM 频段的标准。由于采用扩频技术,发射功率可以达到 100mW。系统最大跳频速率为 1600跳秒,在 2402GHz 和 2480GHz 之间,采用 79 个间隔为 1MHz 的频点来实现【31

20、。系统设计通信距离为10cm10m,如增大发射功率,其距离可长达100m。(2)链路控制单元 蓝牙的链路控制单元,又称基带单元,包括 3 个集成芯片:连接控制器、基带处理器以及射频传输接收器,此外还使用了 35 个单独调谐元件。综述链路控制单元描述了基带链路控制器的数字信号处理规 X。基带链路控制器负责处理基带协议和其它一些低层常规协议。链路控制单元的主要功能包括:建立物理链路及网络连接,包括面向连 接 的 同 步 链 路 SCO(Synchronous Connection Oriented)链 路、异 步 链 路ACL(Asynchronous Connectionless)链路及匹克网;

21、差错控制;在物理层提供验证和加密,其中验证基于“请求响应”运算法则实现,为用户建立一个个人的信任域,而加密则用来保护连接中的个人信息。(3)链路管理单元 链路管理器 LM(Link Manager)软件模块设计了链路的数据设置、鉴权、链路硬件配置和其它一些协议。链路管理器能够发现其它蓝牙设备的链路管理器,并通过链路管理协议 LMP(Link Mallager Protoc01)建立通信联系。链路管理器提供诸如发送和接收数据、设备号请求、链路地址查询、建立连接、鉴权、链路模式协商和建立、设备模式的切换等功能。2.2 蓝牙协议栈 蓝牙协议栈体系结构为分层结构,具体如图 21 所示。图 2.1 蓝牙

22、协议栈体系结构 蓝牙技术规 X 的目的是使符合该规 X 的各种应用之间能够实现互操作 15J。互操 作的远端设备需要使用相同的协议栈,不同的应用需要不同的协议栈。并不是任何应用都必须使用全部协议,而是可以只使用其中的一层或多层。但是,所有的应用都要使用蓝牙技术规 X 中的数据链路层和物理层。2.3 蓝牙控制器接口(HCI)分析 2.3.1 HCI 概述 主机控制器接口(HCI)处于蓝牙协议栈的中间层,它提供了蓝牙主机访问蓝牙主机控制器的基带与链路控制器、链路管理器、状态寄存器等硬件的统一接口。蓝牙主机控制器(Bluctooth Host Controller)是蓝牙芯片的主要组成部分,其内部硬

23、件结构如图 22 所示。链路控制器提供了蓝牙基带功能以及物理层协议的硬件和软件实现;CPU 核提供了链路管理器和链路控制器的固件部分的运行环境,使得主机控制器可独立于主机进行查询和过滤呼叫请求。图 2.2 蓝牙主机控制器内部硬件结构图 硬件方面,主机控制器集成了无线电收发器、基带控制器、Flash 存储器等部分,其中基带控制器大多是以 ARM 为基础的芯片,通过接口控制无线电收发器,提供物理接H(USBUARTPCM 等)。蓝牙模块通过这些接口与主机上对应的接口相连接,构成蓝牙系统的硬件连接。HCI 就是基于这些物理接口定义相应的传输层实现主机与主机控制器间的数据交换。两个蓝牙设备通过 HCI

24、 层进行数据传输的过程如图 2.3 所示。图 2.3 蓝牙设备通过 HCI 层数据传输过程 2.3.2 HCI 传输层 HCI 传输层是指在蓝牙主机与主机控制器间相连的物理接口,它介于主机控制器驱动程序和主机控制器之间,主要目的是实现传输的透明性,即从蓝牙模块外看 HCI 看到的是 HCI 传输层,物理总线是屏蔽的,从而使得 HCI 固件能在不影响传输层的情况下升级。2.3.3 HCI 分组格式 HCI 提供了蓝牙主机与蓝牙主机控制器交换信息的接口,这些信息以分组的形式进行交互。主机可以向主机控制器发送 HCI 指令分组、ACL 数据分组和 SCO 数据分组;主机控制器可以向主机返回 HCI

25、事件分组、ACL 数据分组和 SCO 数据分组。如图 2.4 所示即为各 HCl 分组的流向示意图。图 2.4 HCl 分组流向示意(1)HCI 指令分组 HCI 指令分组用于从主机向主机控制器发送指令。HCI 指令分组的格式如表 2.1所示。表 2.1 HCI 指令分组格式 HCI 指令分组由操作码,参数长度和指令参数列表组成。(2)HCI 事件分组 主机向主机控制器发送指令分组以后,主机控制器就会返回相应的事件分组,其中携带有指令的执行情况以及相关联的信息。主机必须具有接收 255 字节的 HCI 事件分组的能力,其中还不包括 HCI 事件分组头。HCI 事件分组的格式如表 2.4 所示。

26、表 2.2 HCI 事件分组格式 HCI 事件分组由事件码、参数长度和事件参数列表组成事件码(Event Code)大小为1 字节,用于唯一地标识事件的类型,取值 X 围为 0 x00-0 xff。参数长度以字节度量。事件参数列表存放了与相对应的指令关联的返回事件参数,大小一般为 8 的倍数。(3)HCI 数据分组 HCI 数据分组用于在主机和主机控制器之间交换数据。HCI 数据分组分为 ACL 数据分组和 SCO 数据分组两类,各自有不同的格式,在此只讨论 ACL 数据分组格式。HCI ACL 数据分组用于在主机与主机控制器间进行异步链路的数据交换,它的分组格式如表 2.5 所示。表 2.3

27、 HCIACL 数据分组格式 第三章设计方案及模块介绍 3.1 蓝牙家居控制系统组成结构 基于蓝牙技术的智能家居系统,其硬件组成主要包括蓝牙模块、MCU、PC 及受控设备等组成。总体构成如图 3.1 所示。结构框图中前半部分为中心控制部分,主要由 PC机、蓝牙无线收发模块组成;后半部分为多个受控单元,主要由受控电器、单片机、蓝牙模块组成。在受控单元中,蓝牙模块和单片机之间通过串口输入 HCI 指令实行数据通信。其工作过程是:PC 机发送一条控制命令,通过串口发送给蓝牙模块,并由蓝牙模块发送出去,这条指令被多个蓝牙模块接收后由单片机进行识别,并作出相应的动作,最终完成对家电的控制。图 3.1.家

28、居控制系统总体设计框图 在本设计中作为通信部分的蓝牙模块均采用的是 ROK101008,单片机选用性价比较高的 C8051F120.3.2 主要硬件模块介绍 3.2.1 爱立信蓝牙模块 ROK 101 008 简介 爱立信 ROK 101008 是爱立信(Ericsson)公司出品的适用于短距离通信的无线基带模块,它集成度高、功耗小、完全兼容蓝牙 10B 协议规 X,可嵌入到任何需要蓝牙功能的设备中。它同时支持数据和语音的传输,输出功率满足 Class2 的要求。它提供有 UART、PCM 接口,可方便地实现与主机之间的通信。它在 UART 接口上的最高传输速率为 460Kbs,缺省波特率是

29、576Kbs,可支持的波特率为 300、600,900,1200、2400,4800,9600、19200,384001 57600,115200、230400,60800bits,并有一个128 字节的 FIFO 队列 111】。它采用压缩结构(3317X0365cm),金表层覆盖,外观图如图 3.2 所示。图 3.2 爱立信 ROK 101 008 蓝牙模块外观图 ROK 101008 的系统结构图如图 3.3 所示。处于模块底层的是无线层(Radio)和基带)县(Baseband),以硬件的形式存在;处于模块中上层的,是链路管理器(LM)和 HCI,以固件的形式存在。图 3.3 爱立信

30、ROK 101 008 蓝牙模块系统结构图 ROK 101008 由基带控制器(Baseband)、快闪式存储器(Flash Memory)、无线电收发器(PBA 313012)、电压调节器(Voltage Regulation)、13MHz 晶振(13MHz Crystal)共 5 部分组成,其内部结构框图如图 3.4 所示。图 3.4 爱立信 ROK 101 008 蓝牙模块内部结构框图 基带控$1J-器(Baseband):是一个以 ARM7 一 Thumb 为基础的的芯片,通过接口控制无线电收发器的运行。ROK 101 008 的基带控制器提供 UART 和 PCM 两种接口。快闪式存

31、储器 r(Flash Memory):闪存和基带控制器同时使用。无线电收发器(PBA 313012):PBA313 012 是短距离微波无线电收发器,其天线滤波器、RX 和 TX 不平衡变压器都集成在电路中,可作为嵌入式结构应用。电压调节器:(Voltage Regulation):Vcc 典型值是 33V,产生两个可调电压。13MHz 晶振(13MHz Crystal):晶振提供频率为 13MHz 的内置时钟。爱立信 ROK 101 008 蓝牙模块芯片详细的引脚封装如图 3.5 所示。图 3.5 爱立信监牙模块 ROK 101 008 芯片引脚封装图 引脚号排列按照从左向右依次为 A、B、

32、C、R、T,其中每个字母代表一列,每列又按从下到上依次为 1、2、3、4、5、6。常用的部分引脚的说明如表 3.1 所示:表 3.1 爱立信 ROK 101 008 蓝牙模块芯片部分引脚说明 3.2.2 蓝牙适配器模块 蓝牙适配器图片 蓝牙(Bluetooth)是无线网络传输技术的一种,原本是用来取代红外的。与红外技术相比,蓝牙无需对准就能传输数据,传输距离小于 10 米(红外的传输距离在几米以内)。而在信号放大器的帮助下,通讯距离甚至可达 100 米左右。蓝牙技术非常适合耗电量低的数码设备相互分享数据,如手机、掌上电脑等。蓝牙规 X 中广为应用的成熟版本为 1.1、2.0、3.0、4.0,带

33、宽约 1M-24Mbps(USB1.1 接口的带宽为 12Mbps,USB2.0接口的带宽为 480Mbps,局域网带宽为 10Mbps/100Mbps/1000Mbps,火线 IEEE1394 带宽为 400Mbps。所以说,蓝牙非常适合于传送小的文件(10MB 以下的图片、铃声、电子书、文稿等等),方便与速度兼得。目前最新版本是2.1+EDR 版本。第四章系统硬件设计 4.1 下位机模块设计 4.1.1 单片机 C8051F120 简介 微控制器(MCu)是蓝牙应用系统的核心,它的选择将直接影响到系统的性能。C8051F120 是 Cygnal 公司的一种与 8051 兼容的高速 SOC

34、单片机,它具有高速 CIP51内核、灵活的 IO 交叉开关、先进的时钟系统、JTAG 系统调试接口以及多源复位系统。它性能卓越,内核采用流水线结构,速度可达 100MIPS,比普通的 51 快 40 倍,而且在资源丰富、体积小、功耗低、集成度高且调试方便。下面列出了它的一些主要特性:高速、流水线结构的 8051 兼容的 CIP51 内核;真正 8 位 500ksps 的 ADC,带 PGA 和 8 通道模拟多路开关;2 周期的 1616 的乘法和累加引擎;8448(8K+256)字节的片内 RAM;可寻址 64K 字节地址空间的外部数据存储器接口;硬件实现的 SPI、SMBus12C 和两个

35、UART 串行接 El10l;5 个通用的 16 位定时器;具有 6 个捕捉比较模块的可编程计数器定时器阵列;FLASH 存储器具有在系统中重新编程能力,可用于非易失性数据存储,并允许现场更新固件;片内 JTAG 调试电路允许非侵入式(不占用片内资源)、全速、在系统测试;可在工业温度 XNI(45C 一+85。c)N 用 27V36V 的电压工作。C8051F120 为 100 脚 TQFP 封装。4.1.2 单片机与蓝牙模块的连接 单片机与蓝牙模块的硬件连接比较简单,其原理如图 4.1 所示:图 4.1 单片机 C8051F120 通过 UART 连接蓝牙模块示意图 图中的、分别标出了连接中

36、需要注意的 3 个地方。数据线和信号线 单片机 C8051F120 具有两个 UART,在此选用 UART0。在编程时候可通过交 叉开关设置,将 UART0 分配到两个管脚上,例如 P00(TXD)和 P0I(RXD),分别与蓝牙模块的 RXD(AS)和 TXD(B5)相连,用于传输控制信号。另外,单片机端需另外分配两个管脚,例如 P16 和 P17,分别作为流量控制信号 CTS 和 RTS,分别与蓝牙模块的 RTS(A6)和 CTS(B6)相连。若 CTS 为 1 则允许对方发送,若 CTS 为 0 则禁止对方发送。蓝牙模块电源线 蓝牙模块的电压管理器共有 3 个输入,分别是 Vcc(C6)

37、、Vcc_io(C4)和 ON(C2)。Vcc提供电源电压,典型值是 33V:Vet io 为 UART 提供一个独立的电源回路,可以与单片机逻辑接口相同,可以连接到 Vcc;ON 信号控制内部电压稳压器导通或关断。将 Vcc、Vcc io 和 ON 连接在一起使用时,不需要考虑蓝牙模块的加电顺序;否则,则要严格按照“GNDVetONVcc io”的顺序加电,断电时候顺序相反。在此处采用前者,将 Vet、Vcc io 和 ON 一起连接到 33V 的外部电源上。蓝牙模块天线 蓝牙模块 ANT 管脚连接到 50 欧的天线,天线的电压驻波比小于 2:1。在本课题的实验板的设计中,单片机和蓝牙模块是

38、焊接在一个 PCB 板上的。由于蓝牙模块采用平面封装,而且引脚很密集,要想直接焊接到 PCB 板上很困难,而且天线也很难焊接上去。因而自行设计了一个辅助电路板,先将蓝牙模块焊接到此辅助电路板上,然后将要用到的蓝牙模块的部分引脚引出来,通过插座将蓝牙模块连接到 PCB 板上,这样就使得蓝牙模块的装卸变得很方便。辅助电路板引出的管脚有 GND地线、VCC33V、数据收发线 RXD 和 TXD、流控线 RTS 和 CTS、使能信号线EN、复位信号线RESET,其中 BT EN即图 46 中的 ON 信号,实际应用中将它与 VCC 接在一起,其他的与单片机相连。图 4.2 所示。图 4.2 蓝牙模块

39、ROKl01 008 辅助电路板引出管脚图 4.2 PC 机与蓝牙模块的连接 PC 端硬件连接比较简单,将蓝牙 USB 适配器直接通过 USB 连接到 PC 上即可。如图 4.3 所示 图 4.3 PC 端硬件结构图 需要注意的是,插上适配器后,如果是在 XP 系统下,系统会自动装载蓝牙适配器驱动程序,因为在此是要开发自己的基于 HCI 层的应用程序,而自动安装的驱动程序是针对高级应用开发的,覆盖了 HCI 层,因此需要将其卸载,安装针对特定适配器的硬件驱动程序。此处使用的蓝牙 USB 适配器是 CSR Blue Core 04,安装 CSR USB Driver 1 18,安装成功后可在“设

40、备管理器 “通用串行总线控制器中查找到“CSR Blue Core Bluetooth,如图 4.3 所示。图 4.4 CSR Blue Core Bluetooth 安装成功示意图 4.3 单片机与家用电器的连接 家用电器控制模块其主要功能是根据接收系统中心控制模块的命令,以控制电视机开关为例,将控制电视机开关的单片机引脚设定为 p13,当该引脚为高电平时继电器吸合,电视开,当为低电平时继电器断开,电视机关。电路图如图 4.3 4.5 家电控制电路原理图 C8051F120 收到中心控制器发送的控制信号后 P1.3 引脚变为高电平,当光耦合器导通,呆滞继电器吸合,给信息插座通电,从而接通家用

41、电器。当有警情是 P1.4 和 P1.5变为高电平,单片机则通过 TXD 和 RXD 发送报警信号,当蓝牙模块输出到中心控制器。在上述电路中电阻 R1 的选择至关重要,他影响着 2N45 开通与关闭的性能。R1 较小时,可减小开关时间与开关损耗,R1 较大时则相反。一般根据产品手册上提供的数据作为参考,在参考值(48 欧姆)的 1 倍到 10 倍见选取,在这里选取 5 倍的参考值,即 240欧姆。4.3 系统电源模块原理图 C8051F120 微控制器的内核和 I/O 使用同一电源电压,只需单电源 3.3V 供电。图4.4 所示,输入 9V 直流电源,电感 L1 用于限制瞬态电流,经过 C1、

42、C2 滤波,然后通过SPX1117M-3.3 将电源稳压至 3.3V,其输出用了一个 4.7uf 的电容来改善瞬态响应和稳定性。当正确连接电源后,LED 发光作为电源工作指示灯.为了降低噪声和出错几率,我们用电感 L2、L3 将数字电源和模拟电源隔离。图 4.6 3.3V 供电原理图 系统中有些外围器件的工作电压为 5V,比如控制家电的部分,所以我们还需要 5V稳压电路,如图 4.5 所示,其工作原理是输入 9V 的直流电源,经 C8、C9 滤波,然后通过 LM78L05 将电源稳压至 5V.图 4.7 5V 供电原理图 SPX1117M 是 Sipex 公司生产的 LDO 芯片,其特点是输出

43、电流最大,输出电压高,稳定性好。其输出蒂娜 X 可达到 800MA,输出电压的精度在+-1%以内还具有电流限制和热保护功能,被广泛用于手持设备、数字家电和工控领域 第五章系统软件设计 系统的软件设计分为单片机端软件设计和PC 端软件设计两大块。5.1 单片机端软件设计 单片机端软件采用嵌入式 C 语言的编程,开发环境为 Keil,在本设计中只需完成蓝牙基本数据传输即可。此部分软件包括初始化、蓝牙交互、处理数据三个部分。初始化包括系统初始化和蓝牙初始化。系统初始化包括系统时钟初始化、管脚分配、串口初始化、定时器初始化等,蓝牙初始化是通过 UART 给蓝牙模块发送一系列初始化指令,蓝牙模块返回事件

44、,交互完成一系列的复位、鉴权、读地址等初始化操作。蓝牙交互就是初始化完成后,若本地蓝牙作从设备,则等待远端蓝牙设备的建链请求,如果接受请求,则继续等待建链成功,获得一个连接句柄,从而即可进行数据交换;若本地蓝牙作主设备,则进行一系列主动查询、建链、发送数据、断链等操作。处理数据就是将有效数据转存到相应位置等一系列后续操作。需要注意的是,在程序的主循环中,需要实时判断串口接收缓冲区是否有数据,有数据则调用 HCI 状态机进行处理。程序流程如图 51 所示。图 5.1 单片机端蓝牙基本数据传输模块程序流程图 系统时钟初始化用来设置和启动系统时钟。在这里采用外部 24M 外部振荡器提供系统时钟。首先

45、使能 24M 外部晶振并等待外部晶振就绪,然后利用 PLL 将其倍频为 96M 作为系统时钟。管脚分配用来将 UART0 的 TX 和 RX 分配到管脚 p0O 和 p01,并将 pO0设为输出模式、p0 1 设为输入模式。串口初始化调用单片机 UART 接 12 函数 uart_rest0、uart_init0 实现,其中 uart_initoqb 涉及具体单片机寄存器的操作包括设置 UART0 工作模式、设置定时器、设置波特率等。定时器初始化部分实现对定时器 1 初始化和启动,定时间隔为 lOms。在系统初始化完成之后,就需要开始对蓝牙设备进行操作。对蓝牙设备的操作需要构造一个蓝牙 HCI

46、 设备控制结构体 hci dev。蓝牙设备操作的复杂性造成此结构体也相对复杂,具体如图 5.2 所示:UART 控制结构体 uart dev 变量 ud,唯一的标识一个串口连接。蓝牙 HCI 设备信息结构体 hci dev info 变量 hdinfo,保存蓝牙地址、设备类型、缓冲区大小等。蓝牙 HCI 设备连接控制结构体 hci dev con 变量 hd con,保存连接状态、连接句柄、远端地址、时隙等。蓝牙 HCI 设备设置结构体 hci dev set变量 hd set,保存用户设置信息,包括扫描允许、连接超时、鉴权允许、查询参数等。蓝牙 HCI 设备标志位结构体 hcidev_fla

47、gs 变量 hd_flags,标识查询和连接状态。图 5.2 蓝牙 HCl 控制结构体 hcidev 数据结构图 因为此系统中只有一个单片机只与一个 UART0 相连的蓝牙模块,即蓝牙 HCI 设备是唯一的,因此此结构体应该定义为全局变量并且整个程序运行空间内只允许定义一个,为便于讨论,假设定义此变量为 hd,即:蓝牙初始化包括蓝牙 HCI 复位、蓝牙参数设定和蓝牙一系列初始化指令的发送。蓝牙HCI 复位主要完成对 hd 各项默认值的设置,包括将 hd hdinfo 中的 acl_ num 和 acl一 1en 全置 0,cmdnum 置 1,以防止蓝牙读缓冲区大小指令 ReadBufferS

48、ize 执行失败后得到未定义的值;将 hd hdcon 中的 constatus 的值赋为 NOT CONNECTED,将 con handle 的值设为1 等等;蓝牙参数设定通过对 hdhd set 相应参数直接赋值实现,可根据具体需要进行不同的设置;蓝牙初始化指令的发送是蓝牙设备初始化的关键。在此可调用蓝牙 HCI 指令接口完成。至于具体需要哪些指令来进行初始化,可根据需要增减,但有一些指令是必备的。在此提供两个初始化指令集合 initl 和 init2,其中 bt init necessary 为强制性、必备的指令集,bt_init_optional 是非强制性、可选的指令集,见表 51

49、。调用 HCI 指令接口函数时需要传入相应参数列表结构体,结构体各项的参数值从已设定的 hdhd set 中提取。各指令之间最好是加 25ms 的延时,在保证前一条指令执行成功后才发送下一条指令。指令包的流控由 hdhd infocmd num 控制。表 5.1 初始化指令集 在进入蓝牙基本数据传输实验项目之前,设置了一个标志位 bt role,用户可选择本地蓝牙的角色即是作为主设备还是从设备进入实验。不管是作为主设备还是从设备,蓝牙初始化部分是相同的。初始化完成以后,本地蓝牙作主设备时,首先要主动发起查询,查询到远端蓝牙设备之后,要主动发起连接,连接建立以后,数据可以在本地蓝牙和远端蓝牙之间

50、进行传输,既可由本地蓝牙发往远端蓝牙,也可由远端蓝牙发往本地蓝牙。本地蓝牙作从设备时,循环等待远端蓝牙的连接请求,收到连接请求事件以后,通知用户决定是否接受此次连接请求。若接受,则发送 HCI Accept _Connection,若拒绝,则发送HCI_reject_connection_request。单片机端和 PC 端之间的蓝牙连接建立完成后,就可以在两者之间进行数据的传输了。由于单片机端不支持数据输入,因而本系统采用PC 端录入数据,向单片机端发送,单片机端接收到数据后。这就涉及到数据的检测和处理。HCI 状态机在检测到 ACL 数据分组到来后经过一系列的处理,将实际所传数据存储在一个

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁