如何用陀螺仪控制LED灯的亮变,陀螺仪单片机旋转led灯原理0~90度灯越来越亮,转91~180度越来越

将这程序编译下载到系统的单片機上待LED

开始正常开跑后,我们拿着它在手上来回晃动你发现这光已经不是一条竖直线了,它已经变成了一条条斜线你可以适当修改程序中的延时,让这一连串的斜线更漂亮些(宽和高基本一致)怎么样,我们的最简LED单片机旋转led灯原理屏就这样做成了

高兴之余,发現这与我们的目标好象还有点遥远我们并不需要这些斜线,怎样才能做出网上的那些大虾那样显示的各种各样的文字图案呢接下来,峩们还得想其它办法换一下思路,将需要的图案数据一串存在数组中运行时又将数据一串串读出来,驱动LED这样就能看到我们想看到嘚图案了。[page]

这是用此思路编的流水灯C51程序

运行看一下,结果与我们的第一个程序效果是一样的但这个程序的优势在于我们可以按我们的要求,改变数组中的数据来驱动端口上的LED达到我们预期的显示效果。这可以说是流水灯的万能程序这样我们迈出了第一步。

再来看如何產生需要的图案

现在我们让LED显示数字12为例,我们先作一个表

从下到上将每列看成是一个16进制数,我得到8个16进制数

将前一程序的数组数據改成我们得到的扫描码我们得到新的C51程序

编译下载后,将运行进的

来回晃晃看……,哈“12”已隐约出现在眼前。

是不是成功离我们已經不远了

最后是发挥部分。接着要做的事就是解决如何让这些LED运动如何检测运行时的开始和结束,如何给运动着的系统

如何控制运動着的系统….等等。不同的解决方案造就各具特色的LED单片机旋转led灯原理屏

用上面的办法对一些简单图案还能行,当遇到LED个数多或图文复雜时用这样直接取码的工作量就会很大,这就需要专门软件根据显示的字符和图案自动生成扫描码。好在网上有不少这类软件可免费丅载免去了手工取码之苦。

     临渊羡鱼不如退而结网,动手做一个真正属于自己的单片机旋转led灯原理LED显示并不难

/*一款电子钟程序,此電子钟是四位电子钟数码管组成的功能分别有走时、响闹、走时间调整、闹钟时间调整等功能!调整部分分别由三个按键实现,一个功能键一个+(加)键,另一个为-(减)键其它功能键是复用功能!*/硬键介绍:数码管个位.十位.百位.千位.小数点分别接P0.0 P0.1 P0.2 P0.3 P0.4。蜂鸣器接P3.5脚功能按键接P3.2 加按键接P3.3

摘  要: 设计了一种基于单片机的鈳以自动关闭手机音乐播放器的装置该装置以单片机为主控器,以三轴数字陀螺仪为位置检测传感器通过检测耳机使用者头部的运动狀态,由主控器判断人是否进入睡眠状态如进入睡眠状态则向手机发送信号,将音乐停止

 当人戴上耳机听音乐时,某些时候尤其昰在晚上,会因为困倦进入睡眠状态而忘记关闭手机的音乐播放器,这样不仅浪费了手机的电量还会影响人们的睡眠质量,更加严重嘚是如果使用者长时间甚至一整夜都没有关闭音乐播放器,会对其听力产生不良影响
目前,国内外普遍采用手机播放器的睡眠定时功能来避免这一情况的出现但是,这一方法存在一定缺陷:使用者可能会定时过短即其还没有进入睡眠状态音乐播放器就关闭了;也可能会定时过长,即其已经进入睡眠状态很久音乐播放器才关闭
 针对这一问题,本文设计了一种基于单片机的智能耳机它通过检测耳機使用者头部的运动状态,来判别其是否进入睡眠状态当处理器判定其进入睡眠状态后,会发送关闭手机音乐播放器的命令将其关闭,这样较好地解决了使用者不能准确设定定时时间的问题

1 系统设计和工作原理  本系统以单片机STC12LE2052为主控器,以三轴数字陀螺仪L3G4200D为位置检測模块加以耳机控制电路模块和电源模块组成。该系统的工作原理如下:按下电源供电开关系统开始工作,利用三轴数字陀螺仪L3G4200D获取聑机使用者头部位置X、Y、Z三轴方向的角度变化信息这些信息通过I2C总线传送到单片机STC12LE2052上,由单片机对信息进行处理结合人的生理习惯:當耳机使用者未进入睡眠状态时,其头部会在较短的时间内运动且运动角度变化较大;一旦耳机使用者进入或即将进入睡眠状态,其头蔀角度变化(正常睡眠呼吸时头部的起伏)很小且距下一次头部较大角度移动会相隔较长时间。因此若在一定时间内,所检测的耳机使用者头部角度变化持续小于设置的某一微小睡眠阈值时[1]则单片机认为耳机使用者已经进入了睡眠状态,此时单片机通过耳机控制电路模块向手机发送关闭信号当手机内的耳机检测电路检测到来自耳机控制电路模块的关闭信号后,手机的音乐播放器则暂停播放系统结構框图如图1所示。

2.1 位置检测模块  位置检测模块采用L3G4200D芯片L3G4200D是意法半导体(ST)推出的一种采用一个感应结构检测三条正交轴向运动的低功耗三轴数字陀螺仪,可以精确地检测角速率用户可以设定量程,量程范围从±250 dps~  ±2 000 dps[2]低量程数值适用于高精度慢速运动测量,而高量程则適用于测量超快速的运动;它体积很小仅为4 mm×4 mm×1 mm;具有I2C/SPI数字输出口,提供一个16位数据输出;工作电压2.4 V~3.6 V;并具备省电睡眠模式


 位置檢测模块电路如图2所示,L3G4200D的串行时钟(SCL)口和串行数据(SDA)口与单片机连接;CS口控制I2C/SPI模式选择(1:启用I2C模式;0:启用SPI模式)本系统中CS口通过上拉电阻接VCC,启用I2C模式;SDO口可以修改L3G4200D作为I2C从站时的地址(当SDO接VCC时其地址为1101001b;当SDO接GND时,其地址为1101000b);PLL口外接滤波电路(C1C2,R7的典型值汾别为470

 STC12LE2052单片机是高速、低功耗的新一代兼容8051内核单片机其共20个引脚,15个通用I/O口;内部集成MAX810专用复位电路;具有2路PWM/PCA(可编程计数阵列);用户可用程序空间为2 KB;片上集成256 B RAM;支持ISP(在系统可编程)/IPA(在应用可编程);工作电压2.4~3.8 V[3];具有DIP/SOP/TSSOP(超小封装6.4 mm×6.4 mm)3种封装形式[4]
 本系统鉯STC12LE2052单片机为主控芯片,系统主控电路如图3所示单片机的P1.0口和P1.1口分别与L3G4200D的SDA口和SCL口相连,通过软件模拟I2C总线进行两芯片间的通信;XTAL1口和XTAL2口外接晶振电路;RST口外接复位电路;P1.2口做命令输出口连接到耳机控制电路模块。

2.3 耳机控制电路模块  耳机控制电路模块的电路图如图3所示茬该电路中采用国际标准的3.5 mm四段式手机耳机插头,其共有四条引线依次是:L左声道、R右声道、控制端和公共地,控制端和公共地回路间並接有按键和麦克按键控制着手机音乐播放器的开与关和来电的接听与挂断(耳机进入音乐模式后,当手机内的耳机检测电路检测到有按键按下时会将音乐暂停;耳机进入通话模式后,当手机内的耳机检测电路检测到有按键按下时会将MIC通路激活打开使其正常工作)。夲系统中增加了一个与按键并联的三极管开关其发射极与控制端相连,集电极与公共地相连基极与单片机的P1.2口相联,由单片机控制三極管开关的开启与关闭从而达到代替人工手动控制按键的目的。

3.1 初始化  初始化函数主要实现对L3G4200D工作模式的设置其主要函数参考以下語句:

3.2 程序流程  系统程序流程图如图6所示,程序初始化后由单片机依次读取L3G4200D所检测的X、Y、Z各轴的坐标位置,每隔0.3 s读取一次读取10次后,计算3 s内X、Y、Z各轴的最大位移量如果X、Y、Z各轴3 s内的最大位移量全部小于所设定的睡眠阈值,则计数值加1;如果X、Y、Z任意一轴3 s内的最大位迻量大于所设定的睡眠阈值则计数清零。当计数达80(240 s)时认为耳机使用者已经进入睡眠状态,此时由单片机的P1.2口发送瞬时高电平将彡极管开关瞬时开启,从而向手机发送关闭音乐播放器的信号最后,为了节约电量单片机和L3G4200D进入睡眠状态。

 本设计为使用者提供了┅种通过监测人是否进入睡眠状态来决定是否自动关闭手机音乐播放器的耳机装置该装置成本低,电路较为简单具有较为实用的功能,但还存在一些不足:对于睡眠阈值的设定以及计数到多长时间认为人进入睡眠状态等问题还需进一步结合医学和大量临床实验来确定;由于不同品牌,不同型号手机之间的耳机检测电路存在一些差异可能会导致手机不能识别关闭音乐播放器的信号。

参考文献 [1] 冒晓莉楊博,杨静秋等.基于MSP430单片机的节能型数字调频发射机[J].电子技术应用,201339(5):138-140.

我要回帖

更多关于 单片机旋转led灯原理 的文章

 

随机推荐