您的位置 首页 嵌入式

手机蓝牙操控的调光调色的LED灯的规划

1引言飞利浦在AppleStore出售最新的高科技Hue系列LED灯,并且只会交由苹果出售。Hue系列将是完全可有自定义的,并且通过一个灯泡内红蓝绿

1.导言
飞利浦在AppleStore出售最新的高科技Hue系列LED灯,而且只会交由苹果出售。Hue系列将是彻底可有自界说的,而且经过一个灯泡内红蓝绿三原色的LED能够混合出1600万种色彩的灯火。整个进程彻底由iPhone上的App来进行操控。然后引发了智能灯控开展的新考虑,国内相关人士也纷繁进行研讨。考虑到Hue是选用WiFi无线操控,而国内WiFi并未遍及,本研讨选用更遍及的蓝牙技能,选用手机蓝牙与单片机通讯产生可调占空比PWM波信号操控LED驱动电路完成LED的调光和DIY调色。
2.脉冲宽制(PWM)调光技能
PWM调光是一种运用简略的数字脉冲,重复开关LED驱动器的调光技能。运用者的体系只需要供给宽、窄不同的数字式脉冲,即可简略地完成改动输出电流,然后调理LED的亮度。PWM调光的长处在于调光规模大,只需带宽满足,任何模仿值都能够运用PWM进行编码,PWM调光能够在准确操控LED的亮度的一起,也确保LED发光的色度。
2.1 脉冲宽制(PWM)调光原理
运用人眼睛视觉慵懒,按固定频率操作占空比完成LED亮度调理,只需调光比即PWM波频率大于200Hz人眼就不会感觉到LED的闪耀。详细调光完成,经过操控LED的亮灭时刻,然后操控LED亮度,从电力学来看便是操控必定周期内电流的有用值。这种办法在改动电流有用值巨细的一起不改动电压和电流的巨细,这样就确保了LED的发光色度,这是模仿调光和可控硅调光无法完成的。
2.2 占空比
占空比是指高电平在一个周期之内所占的时刻比率。方波的占空比为50%,占空比为0.5,阐明正电平所占时刻为0.5个周期。
Ts为脉冲周期
Tw为脉冲宽度
占空比τ=Tw/Ts×100.
占空比的解说能够概括为如下几种:
1)在一串抱负的脉冲序列中(如方波),正脉冲的持续时刻与脉冲总周期的比值。
2)在一段接连作业时刻内脉冲占用的时刻与总时刻的比值。
3)在周期型的现象中,现象产生的时刻与总时刻的比。
也便是电路开释能量的有用时刻与总开释时刻的比。
2.3 调光比
调光比则是按下面的办法核算:
Foper=作业频率
Fpwm=调光频率
调光比率=Foper/Fpwm
其实也便是调光的最低有用占空比,比方Foper=100khz;Fpwm=200Hz,则调光比为:
100k/200=500.
3.蓝牙模块组成
3.1 蓝牙技能根底
蓝牙的创始人是瑞典爱立信公司,蓝牙技能是一种无线数据与语音通讯的敞开性全球规范,它以低成本的近间隔无线衔接为根底,为固定与移动设备通讯环境树立一个特别衔接。手机之间经过蓝牙完成数据同享已成为常理,将手机变身为遥控器为人们的日子带来无限便利。
蓝牙技能由三部分组成,包括蓝牙无线电技能、蓝牙协议栈和蓝牙互操作性。
3.1.1 蓝牙无线电技能
蓝牙无线电作业在全球通用的2 . 4 G H zISM(即工业、科学、医学)频段,支撑全双工传输,运用IEEE802.15协议。蓝牙设备即连即用,抗搅扰才能强、运用便利[2]
3.1.2 蓝牙协议栈
蓝牙协议栈包括一个软件栈和一个硬件栈。蓝牙硬件协议栈由蓝牙硬件供给,蓝牙软件协议栈由软件完成。蓝牙软件协议栈供给Java蓝牙API给程序敞开人员运用。
3.1.3 蓝牙互操作性
蓝牙互操作性包括三方面内容:①通用拜访Profile界说了设备管理功能性;②服务发现运用Profiles界说了服务发现方面的内容;③串口Profiles界说了互操作设备和模仿串口电缆的才能3.2 HC-O6蓝牙模块
BC04外置8M Flash,带EDR模块HC-06为民用级,兼容HC-04工业级。其间,HC-06模块的TX管脚跟STC15F204EA单片机的P3.0管脚相接,RX管脚跟P3.1接。HC-06模块接纳手机端发来的数据,然后在经过串口TR,TX管脚与单片机通讯。
蓝牙2.0带EDR,2Mbps-3Mbps调准则,内置2.4GHz天线,外置8Mbit FLASH,低电压3.3V作业(3.1V~4.2V)配对时30~40MA动摇,配对完毕通讯8MA,可选PIO操控规范HCI端口(UART orUSB),数字2.4GHz无线收发射,CSRBC04蓝牙芯片技能,自适应跳频技能,蓝牙Class 2功率等级,作业温度为-25至+75,协波搅扰为2.4MHz,发射功率3dBm,有用操控间隔为10m.

4.手机APP规划
4.1 蓝牙衔接相关程序规划
首要,初始化本地蓝牙设备,树立LocalDevice类,包括取得本地设备实例、蓝牙称号、设置发现形式、取得发现署理。创立public int BTS_Init()类函数,完成蓝牙初始化判别,寻觅默许蓝牙设备,翻开蓝牙。
发动蓝牙设备查找,创立public voidBTS_StartScan()类函数,开端寻觅从机蓝牙设备,注册搜索函数,创立public int BTS_ConnectToDevice(String DeviceAddress)类函数,完成衔接到一个指定的蓝牙设备。
创立public int BTS_SendDates(Stringbuffer)类函数完成字符串发送到已衔接好的蓝牙设备上,创立public int BTS_Finish()类函数完毕蓝牙通讯,最终创立接纳ACTION_FOUND播送的BroadcastReceiver privatefinal BroadcastReceiver mReceiver=newBroadcastReceiver()。
4.2 操控信号相关程序规划
首要创立一个用于操控信号的类publicclass PwmcontrolActivity extends Activity{},里边包括创立界面的类函数public voidonCreate(BundlesavedIn stan ceState){},发送操控信号类函数public void onStop TrackingTouch(SeekBar seekBar){}.
创立类class InitThread extends Thread{},完成资源加载线程,里边创立用于四路信号之间转化的public InitThread(PwmcontrolActivity act){}类函数,完成与蓝牙程序接口的public void run()线程体,用于软件退出的类函数public booleanonKeyDown(int keyCo de,KeyEvent event)。
5.单片机操控信号规划
5.1 硬件电路规划
体系框图如图1所示,本硬件电路选用STC15F204EA单片机为主控器,CH-06蓝牙模块的TXD与单片机11管脚P3.0衔接,RXD与P3.1相连,完成蓝牙串口通讯衔接,从P1.0,P1.1,P1.2,P1.3四个口输出四路可调占空比的PWM信号,选用一个L298芯片将单片机操控信号和LED电源驱动阻隔,避免了单片机带负载才能弱的缺陷,以完成驱动大功率LED.


图1 体系框图

5.2 程序规划
主函数流程图如图2所示,界说完相关变量和相关函数声明后,规划串口通讯函数,设置定时器1中止,中止函数为占空比操控函数,然后规划数据接纳函数,当串口服务函数接纳到数据时,将数据发送到数据接纳函数,然后将接受到的字符数据经过字符转型函数进行字符的转型,然后经过标志iCommdType判别操控哪一路信号,当无标志信号来时,一向循环查看,查看到相应的标志信号,然后履行占空比调理函数蓝牙模块与单片机之间的通讯运用模仿串口完成的,串口为规范装备:波特率9600,编写一个串口初始化函数void UART_INIT(),初始化相关标志,和寄存器,然后编写中止接纳函数void tm0()interrupt 1 using 1,接纳串口发来的数据。设定定时器1中止并编写中止服务函数void tm1()interrupt 3 using1,完成P W M的占空比操控。编写数据接纳函数char GetUartData(),将中止接纳函数里接纳到的数据发送这儿,等候接纳数据函数void WaitForChars(unsigned chariCount,char *Dest)经过调用数据接纳函数char GetUartData(),将手机发送来的数据装载到界说好的变量数组,然后经过字符转型函数unsigned int GetCmdType(char*Commd),将字符型数据转成数字,经过标志判别,要操控哪一路PWM波,然后将相应的数据传到操控占空比的中止服务函数,改动其占空比的输出。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/233010.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部