基于蓝牙的遥控台灯课案.docx

上传人:b****6 文档编号:9007490 上传时间:2023-02-02 格式:DOCX 页数:23 大小:268.65KB
下载 相关 举报
基于蓝牙的遥控台灯课案.docx_第1页
第1页 / 共23页
基于蓝牙的遥控台灯课案.docx_第2页
第2页 / 共23页
基于蓝牙的遥控台灯课案.docx_第3页
第3页 / 共23页
基于蓝牙的遥控台灯课案.docx_第4页
第4页 / 共23页
基于蓝牙的遥控台灯课案.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

基于蓝牙的遥控台灯课案.docx

《基于蓝牙的遥控台灯课案.docx》由会员分享,可在线阅读,更多相关《基于蓝牙的遥控台灯课案.docx(23页珍藏版)》请在冰豆网上搜索。

基于蓝牙的遥控台灯课案.docx

基于蓝牙的遥控台灯课案

本科毕业设计(论文)

基于蓝牙的遥控台灯设计

学院(系):

信息与通信工程学院

专业:

通信工程

学生姓名:

学号:

指导教师:

评阅教师:

完成日期:

2015年6月12号

 

摘要

在日常生活中常常遇到以下情况:

躺在床上看书或者出门忘记关灯,或者夜晚回到家的时候希望能够尽快的找到灯的开关,又或者由于天气寒冷或身体疲惫等愿意不愿意下床关灯等,这些都是现实生活中本设计遇到的比较不方便的事情。

为了解决以上问题,本设计想如果能够利用现在较为先进的无线技术来实现电灯的开关闭,就会使本设计的生活变的更加的方便。

随着信息时代的高速发展,人们已经离不开信息网络,手机更是贴身随带,本设计若能用手机来控制灯光,以上问题就可以迎刃而解了。

此调光台灯支持手机调光控制这种方式,主芯片采用STM32单片机,蓝牙芯片采用CC2541,此芯片支持蓝牙4.0协议。

本设计模拟用继电器上面的LED灯来代替台灯。

手机端采用安卓系统和IOS系统皆可,安卓系统可下载蓝牙串口助手软件,IOS系统可下载Lightblue软件。

本设计把手机蓝牙发送信号和指令传输给蓝牙模块CC2541,通过STM32和CC2541共同完成灯的亮灭。

关键词:

STM32;蓝牙;CC2541;LightBlue;远程操控

Abstract

Indailylifeoftenencounterthefollowing:

lyinginbedreadingoroutforgottoturnoffthelights,ornightbacktohometoassoonaspossibletofindthelightswitch,orduetothecoldweatherorphysicalfatigueandwillingtodonotwanttogetoutofbedlights,etc.,thesearerealitylifeinthisdesignmeetthelessconvenientthings.Inordertosolvetheaboveproblems,thisdesignwouldliketousenowmoreadvancedwirelesstechnologytoachievethelightoff,willmakethedesignoflifebecomemoreconvenient.Withtherapiddevelopmentoftheinformationage,peoplehasbeeninseparablefromthenetworkinformation,thephoneisclosewith,thedesignifusingamobilephonetocontrolthelights,theaboveproblemscanbesolved

.Thisdimminglampsupportsmobilephonedimmingcontrolofthisway,themainchipusingSTM32microcontroller,BluetoothchipusingCC2541,thischipsupportsBluetooth4protocol.ThisdesignsimulatestheLEDlampwiththerelayabovetoreplacethelamp.AndroidsystemandIOSsystemareavailable,AndroidsystemcandownloadBluetoothserialassistantsoftware,IOSsystemcandownloadLightbluesoftware.

ThedesignofthemobilephoneBluetoothsendsignalsandinstructionstransmittedtotheBluetoothmoduleCC2541,throughtheSTM32andCC2541tocompletethelightofthelight.

KeyWords:

STM32;Bluetooth;CC2541;LightBlue;Remotecontrol

目录

摘要I

AbstractII

1绪论1

1.1课题研究背景及意义1

1.1.1蓝牙技术介绍1

1.1.2蓝牙发展现状1

1.1.3单片机发展现状1

1.1.4课题研究范围2

1.2设计思路2

2系统方案设计3

2.1方案论证3

2.2系统及框图说明4

3关键芯片说明及硬件电路设计部分5

3.1主芯片5

3.2蓝牙芯片7

3.3继电器10

3.4LED11

4程序设计12

4.1软件总流程图12

4.2蓝牙信号模块13

5软硬件的调试15

5.1硬件调试15

5.2硬件的组装15

5.3软件的调试16

5.3.1单片机软件调试16

5.3.1手机软件调试16

结论18

参考文献19

附录A程序20

附录B系统原理图23

致谢24

1绪论

1.1课题研究背景及意义

1.1.1蓝牙技术介绍

近年来,网络技术的发展在人类的进步中起到了至关重要的作用,随着以因特网为代表的数据通信的普及,标志的人类彻底的进入了网络时代。

但是网络技术给本设计带来方便的同时,它的弊端也逐渐的显示出来。

因为过分的依赖电缆和电线,使本设计不得不占用大量的空间去铺设电缆和电线,造成了空间的拥挤,另外这些电缆和电线极易损坏,造成了维修和检修变得非常的困难,而且成本较高。

等等诸多问题,本设计就需要一种无线传输技术来摆脱上述问题,所以蓝牙技术应运而生。

蓝牙技术是一种低功率短距离无线通线技术标准的代称,其特点就是无需传输线就能完成数据通信。

它使不同的人们在不使用电脑连接的时候,在短距离的情况下实现各种操作。

一般的,它的通信距离为十厘米到十米之间,如果增大功率的话,可以使传输距离增大到一百米甚至更多。

蓝牙技术最开始是由爱立信、诺基亚等公司联合提出和制定的。

最初的版本是蓝牙1.0版本。

不过技术不太成熟,容易造成泄露资料的危险。

后来经过不断的改进和发展,目前最新的蓝牙版本是SIG公司在2010年4月20日提出的。

它的改进之处主要是电池续航时间、节能和设备种类上。

蓝牙4.0是2012年最新发布的蓝牙版本,较3.0相比具有低延迟、低成本、省电和超长传输距离等特点,通常应用在手机上。

1.1.2蓝牙发展现状

现在,蓝牙技术已经得到了全世界人民的认可,世界上任何人都可以用自己的蓝牙设备完成与邻近设备的数据连接和交换。

蓝牙设备之间可以彼此建立一个无线即时网络,简称微微网,每个蓝牙设备可以最多与7个设备完成无线连接通信。

目前,全球的蓝牙使用者超过了10亿,第三代移动通信技术即将为蓝牙通信提供更大的市场。

诸多高科技产品也应用了蓝牙技术,比如手机、电脑等,本设计可以通过蓝牙完成手机与手机、电脑与电脑,手机与电脑的数据通信与传输。

1.1.3单片机发展现状

由于人类不断的在追求,所以社会一直在不断的进步,市场也在不停的进步。

高科技产品正在不断的改变着本设计的生活,家用电器变得更加智能化,各种高科技产品是本设计的生活变得更加便捷。

所有的这些产品都有一个共同的特点,就是他们都采用单片机为核心控制单元。

目前单片机已经深入到人们生活的各个领域,很难找到没用应用单片机的领域。

比如:

大到导弹的精确制导、飞机的各种仪表等。

小到电脑、手机等和本设计生活息息相关的产品。

单片机的进步主要体现在功率消耗、内部结构、外部电压等级和制造工艺上等等。

目前人们对单片机的需求越来越高,所以就要求单片机的功能和可应用领域越来越高。

近年来,单片机的可靠性越来越高,集成部件越来越多,完成的功能也愈发全面,逐渐演变成功耗低且与模拟电路结合度越来越高的趋势。

1.1.4课题研究范围

本课题就是利用单片机与蓝牙技术的结合实现家电智能化,设想本设计只要通过手机,就可以对生活中的各种电器进行操作,将会是多么的便捷。

在需要控制时,本设计只需操控手机蓝牙给电气设备中的核心控制单片发出指令,就可以方便的完成远程操控了。

基于蓝牙的遥控台灯就是一个完美的例子,通过手机上的蓝牙软件,本设计就可以实现,用移动设备来控制固定设备,使本设计的生活更加便捷,也会起到一定的节能效果。

1.2设计思路

在本篇论文中,将会对整个系统设计的软件硬件进行全面的分析和介绍。

大致分为以下几个部分:

(1)简要介绍课题的背景和研究意义。

(2)系统方案设计。

对已经选择的方案进行介绍描述论证,并给出整个的系统框图,并对其进行简要说明。

(3)主要器件的解释说明。

(4)硬件电路的设计。

对各个模块之间的连接和其原理进行介绍说明。

(5)程序的设计。

对系统所需的程序进行解释说明。

(6)软硬件的调试过程。

2系统方案设计

2.1方案论证

控制台灯亮灭的方案目前主要有以下三种:

1.按键控制。

这种方式结构简单,方便,成本低,价格便宜。

但是不做本次的研究方案。

2.无线红外遥控。

此方案是利用红外线进行无线遥控台灯,目前市场上很多产品都采用的是这种方式。

红外线遥控的最大缺点就是抗干扰能力弱,光源对红外线的传输会造成很大的干扰,工作时造成对红外线的接收困难。

而且遥控家电的时候本设计还需要特意去对准使用电器。

虽然红外遥控提供了较好的无线遥控方案,但会造成与家里各种遥控器之间的互相干扰,不易分辨各种遥控信号。

因此此项也排除。

3.第三个就是本设计本次研究的方案,手机蓝牙控制。

目前,世界各地人们很多都已经在使用智能手机,而几乎所有的智能手机都会具有蓝牙功能。

通过蓝牙的特性,就可以有效的避免类似于红外线的干扰问题,使用时本设计只需下载一个手机APP就可以完成对台灯的控制。

下面本设计来讨论这次研究应该使用什么样的单片机作为主芯片。

方案一:

若采用AT89C51作为核心控制器,常用的还有有AT89C52、STC89C52RC等等。

AT89S52是8位微控制器单片机,特点是低功耗、高性能。

自身的FLASH储存达到了8K。

存储器工艺采用Atmel公司高密度不易失性技术制造而成,与其他8051系列的指令和管脚是完全相似的。

芯片内Flash允许在线编程调试,也可使用其他一般的编程器。

在单个MCU上,具有8BIT的CPU和在线编程Flash,这些特点让AT89S52成为很多嵌入式控制应用场合的选择。

该芯片具有下面的几种标准化模块:

8k字节存储器,256字节随机存取存储器,32个双向I/O口,2个数据指针,3个16位定时计数器,一个6向2级中断构造,1个双向串行口,片内震荡电路及方波电路。

AT89C51单片机的突出优点是把快擦写存储器应用于单片机中。

这使得在系统开发过程中修改程序十分容易,大大缩短了系统的开发周期。

然而另一方面AT89C51的运算速度比较低,功能单一,RAM、ROM空间小,且不稳定。

方案二:

若采用DSP2000系列作为核心控制中心,与传统的MCU相比,DSP的运行速度和丰富的处理算法使得DSP得到更加广泛的应用,但本次设计不需要快速的处理,不需要复杂的计算,考虑到芯片成本问题,故舍弃此方案。

方案三:

STM32单片机是由意大利和法国的半导体公司合并之后的公司ST公司所生产设计的。

是目前较为先进的单片机。

若采用STM32作为核心控制器,其优势在于是高性能、低成本、低功耗、运算速度快,STM32通过寄存器模式,寻址式灵活,增强型系列时钟频率可达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。

综上所述,本设计选用STM32为核心单片机,来完成本次设计。

2.2系统及框图说明

本设计单片机模块的作用是对蓝牙串口模块命令作出响应,要求其具有寻址式灵活及运算速度快等优势。

基于以上分析本设计采用STM32作为核心控制器更为有利。

首先,本设计通过手机蓝牙发送指令给蓝牙模块CC2541。

然后,通过蓝牙芯片CC2541与主芯片STM32之间的信息交流,给继电器上电完成点亮台灯。

图2.1设计系统结构框图

 

3关键芯片说明及硬件电路设计部分

3.1主芯片

本设计的主控芯片本设计选择了STM32单片机,STM32系列基于专为要求低成本、高性能、低功耗的嵌入式应用的ARMCortex-M3内核。

MiniSTM32型号的芯片,外部所提供的电压比较小,在2V到3V左右,外界温度范围在-45°C到+75°C,miniSTM32所包含的引脚很多,从36个引脚到100个引脚都具有多种的器件封装形式,丰富的引脚也具备了丰富的外置设备,这样使得miniSTM32可以应用于不同种类的场合,发挥它应有的作用。

STM32分为很多种,本设计选择了其中的STM32F103,该芯片集成了定时器,CAN,SPI,ADC等多种功能。

它的最高工作频率为72MHz和最大64K字节的SRAM。

性能特点:

(1).包含三个1uS转换时间的ADC和两通道12位的DA转换器。

(2)具有四个16位的定时器。

(3)SPI3个、SD卡读写接口、5个串口、一个USB和CAN总线。

(4)I2C两个、I2S两个。

(5)供电电压为2.0~3.5V。

(6)12个内部转移控制器。

(7)GPIO口有51个。

(8)有睡眠、待机和关机三种低功耗模式。

(9)采用8MHz的外部无源晶体振荡器。

(10)芯片内部具有8MHz的RC振荡器和40000Hz的电阻电容振荡器。

(11)运用了独特的独立为A/D转换器供电及独立的电源地Vssa。

另外还有,电压调节器、电源管理器等等。

STM32开发板的板载资源如下:

一个标准的JTAG/SWD调试下载口。

一个电源指示灯。

两个状态指示灯。

一个红外线接收头。

一个IIC接口的EEPROM芯片。

一个SPIFLASH芯片。

一个DS18B20温度传感器接口。

一个标准的LCD接口。

一个OLED模块接口。

一个USB串口接口。

一个USBSLAVE接口。

一个SD卡接口。

一个PS/2接口,可外接鼠标。

一组5V电源接入口。

一组3.3V电源接入口。

一个启动模式选择配置接口。

一个2.4G无线通信接口。

一个RTC后备电池座。

一个复位按钮,可用于复位MCU和LCD。

三个功能按钮,其中的WK_UP具有唤醒功能。

一个电源开关,控制整个电路板的供电。

独创的一键下载功能。

本设计之所以选择STM32作为本课题的主芯片,原因是它与51单片机相比,具有以下优势:

购买STM32单片机只需要8位机的价格,就可以得到32位机的功能。

STM32单片机包括很多功能及外设,它的集成度很高。

STM32拥有8个系列及上百种的型号,选择性将大大提高。

STM32有16级可编程,并且有84个中断源,所有引脚都可以进行中断输入。

还有就是STM32的功耗很低,环保节能。

另外它的开发成本也较其他单片机低的多。

芯片的最大速度为72M,在调解过程中反应迅速。

另外芯片本身的资源非常的丰富,如PMW发生器、高精度ADC等等,使芯片的外围元器件减少了很多,从而可以减小芯片的体积和提高电路的可靠性。

它的程序存储器,寄存器,输入输出端口还有数据存储器都组织在了同一个4GB的线性地址空间内。

此芯片拥有很多资源:

2个基本定时器,4个通用定时器,2个高级定时器,2个DMA控制器,3个SPI,2个I2C,5个串口,1个USB,1个CAN,3个十二位ADC,1个SDIO接口,和51个通用IO口。

具体的原理图如下:

图3.1主芯片STM32电路原理图

下面本设计来重点介绍一下STM32单片机的低功耗模式。

它一共有三种低功耗模式:

睡眠模式、停止模式和待机模式。

睡眠模式时,单片机内核停止工作,但是它的所有外设(比如:

NVIC、系统时钟等)仍在运行。

停止模式就是单片机内部的所有时钟全部已经停止。

待机模式就是1.8V的电源关闭。

开发板的实物图如下:

图3.2STM32开发板实物图

3.2蓝牙芯片

本设计的蓝牙芯片本设计选择CC2541芯片。

本模块支持UART接口,具有体积小、成本低、功耗低、收发灵敏度高等特点,只需稍加外围电路就可以使其完成很多功能。

这个芯片非常适用于低功耗的系统,运行模式中具有较短的转换时间。

该模块主要应用于短距离的数据无线传输,如:

蓝牙车载免提、蓝牙GPS、蓝牙无线数据传输、工业遥控遥测、门禁系统、蓝牙打印机。

蓝牙遥控玩具等。

特点:

工作频率为2.4GHz、供电电源为+3.3VDC50mA、蓝牙协议为蓝牙4.0协议。

最高支持2Mbps的数据速率。

最高0dBm的可编程输出功率。

RX:

17.8mA、TX:

18.3mA、功率模式1:

271μs、功率模式2:

1μs、功率模式3:

0.5μs、电源电压范围(2V-3.5V)、工作模式下TPS62730兼容低功率。

蓝牙4.0是最新的蓝牙版本,CC2541是目前为止蓝牙模块部分比较高端的芯片,支持蓝牙4.0协议,芯片内部含有8051单片机,22个I/O引脚,IR电路,2个LED驱动引脚等等。

CC2541的应用范围非常广泛,包括体育设备,休闲设备,移动电话上也可安装,高端的电子产品,比如无线鼠标、无线键盘、蓝牙游戏手柄、蓝牙操纵杆等等。

它的低功耗成为了现在市场上蓝牙芯片选择的新宠。

蓝牙模块在使用的时候,要注意很多问题,有很多的注意事项:

蓝牙产品的包装一定不要使用金属外壳,尽量让天线的部分远离金属。

产品内部金属接线或者金属螺钉,应尽量原理天线。

模块天线部分依靠在载板PCB的四周,不允许放置在板中。

模块下方尽量接地,走线尽量往外延伸。

基板上的模块贴装位置应当使用绝缘材料进行隔离等等。

所以就是一定要排除一切可能干扰蓝牙信号的因素。

它的引脚功能如下:

UART_TX(串口数据输出)、UART_RX(串口数据输入)、UART_CTS(串口清除发送)、UART_RTS(串口请求发送)、NC(悬空)、P2_2(调试时钟口)、P2_1(调试数据口)、P2_0(可编程输入输出口)、RESETB(低电平复位)、VCC(电源V3.3)、GND(接地)、SDA(数据口)、SDL(时钟口)、P1_3(SW1系统按键)、P1_2(LED管脚)、P1_1(主机中断指示口,空闲为低,连接上为高)、P1_0(可编程输入输出口)、P0_7(软/硬主从设置选择口)、P0_6(硬件主从模式设置口)、P0_5(可编程输入输出口)、P0_4(可编程输入输出口)、P0_3(可编程输入输出口)、P0_2(可编程输入输出口)、P0_1(可编程输入输出口)、P0_0(可编程输入输出口)。

蓝牙芯片CC2541上的状态指示灯LED是P1_2引脚,LED均匀慢速闪烁的时候,表示尚未配对成功或正在建立连接。

当LED状态指示灯长亮的时候,表示已经配对连接成功,可以完成收发和发送数据的任务。

以下是蓝牙模块CC2541的电路原理图:

图3.3蓝牙芯片CC2541的电路原理图

具体的实物图如下:

图3.4CC2541蓝牙模块实物图

3.3继电器

本设计用继电器代替台灯来完成功能,通过控制继电器来模仿真实的台灯的亮灭,从而实现功能。

本设计选用的继电器是SRD-05VDC-SL-C。

SRD-05VDC-SL-C加上12VDC的直流电压,不会区分正负方向,都是电压驱动的,线圈的直流电阻在不同的工厂,它的灵敏度都会稍有区别。

它有一个常开端,一个常闭端,还有一个公共端。

事实上,他与单刀双掷开关的功能是一样的。

线圈端加5V直流电压的时候,触点吸合,负载端闭合或断开。

它的特性有:

10安培的触点转换功能、一组常开一组转换的触点形式、具有塑封型和防焊剂型两种封装方式。

最大转换电流15安培、最大转换电压250VAC/30VDC、线圈电压范围3-47VDC。

具体的实物图如下:

图3.5继电器(台灯)模块实物图

3.4LED

STM32开发板的其中一个特点就是,在LED部分的IO口是和OLED的IO口所共用的,所以一个接口既可以接LED模块,又可以接OLED模块。

这片开发板上一共有3个LED灯。

其中PWR是电源指示灯。

LED0和LED1分别接在了PA8和PD2上,PA8还可以通过TIM1的PMW输出来控制DS0的亮度。

但是本设计此次的设计只用到了DS0,本设计通过它的亮灭来模拟台灯的亮灭。

具体的原理图部分如下:

图3.6LED部分电路原理图

4程序设计

4.1软件总流程图

此次设计的软件编程,本设计用Keil编程软件,运用到了本设计熟悉的C语言编程。

本设计的程序部分可以在附录A中找到。

(详见附录A)

本程序采用无线蓝牙模块进行通信,因此程序设计方面分为两部分。

首先给本设计系统进行上电,硬件端芯片进行系统初始化,主要进行,IO口初始化、串行通信设备初始化即蓝牙无线模块初始化。

然后硬件端进入死循环延时,等待接收数据。

手机端打开串口手机软件,配对硬件端蓝牙设备,如若配对失败,检查系统错误。

配对成功后,发送0X01数据。

硬件端通过串行通信设备接收蓝牙数据,进入串行硬件终端程序,判断接收数据,向IO口发送至高电平信号,IO口控制台灯点亮,硬件端进入死循环等待接收数据。

手机端发送0X00数据。

硬件端通过串行通信设备接收蓝牙数据,进入串行硬件终端程序,判断接收数据,向IO口发送至低电平信号,IO口控制台灯熄灭,硬件端进入死循环等待接收数据。

具体流程图如下图所示:

图4.1本设计的软件流程图

4.2蓝牙信号模块

此次设计的蓝牙模块的输出信号是以串口形式发送的,所以模块和主芯片STM32的连接部分采用STM32的串口资源USART1,并设置其为中断输出模式。

而手机端是由蓝牙串口调试助手控制的。

CC2541的蓝牙串口指令为Command指令集。

例如,获取模块地址的指令为AT-LADDR。

设置设备的名称的指令为,发送设置AT-NAMEBOLUTEK\r\n,返回为+NAME=BOLUTEK\r\n,就成功的设置了模块的设备名称。

而查询设备的名称就需要发送的指令为AT+NAME\n\r,返回+NAME=BOLUTEK\r\n,返回的模块设备名称就是“BOLUTEK”。

下面来介绍CC2541蓝牙芯片的OSAL。

CC2541的BLE开源,为很多TI的工作者提供了很多方便,它的移植非常简单。

OSAL和HAL的好处。

HAL:

硬件抽象层,典型的操作系统硬件封装构架,远点的类似于Linuxs中常见的BSP,安卓中的HAL等等都是可以见到的。

OSAL:

操作系统抽象层,它的主要作用是应用程序的开发,整套类的操作系统围绕着:

Event任务、Task事件和消息来进行。

每个事件的发生,都由对应的任务来处理和操作。

这个任务有的时候会将消息作为另一个事件去触发和处理。

蓝牙协议栈的从机设置:

(bstatus_tGAPRole_SetParameter(uint16param,uint8len,void*pValue);这个函数的主要作用是用来配置一些从机的参数,从机的主要工作是对外广播,来接收主机发来的数据。

uint8initial_advertising_enable=tureGAPRole_SetParameter

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1