一看题图,你可能会想,不就是一个普通的玻璃瓶吗?但是这个瓶子的功能却不简单,瓶子会感知周围光线的强度而改变内部的LED流动花式。当你的手背着光源的位置向前靠近时,口里再喃喃几句“魔法咒语”,神奇的现象出现了,本来的花式突然改变了,时而变蓝,时而变红。当你的手继续靠近时,然后可以关灯,这时瓶子闪烁得更加耀眼,更加激烈了,哇,太神奇了,竟然可以“隔空控制”!如果将此作品放在家里客厅或宿舍,一定会吸引很多客人或同学的眼球,而且可以活跃气氛。
“七彩魔法瓶”的奥秘是运用光敏电阻探测出周围光线的强弱,再根据光度由强到弱分成8个区间,每个区间都有一种不同的LED流动花式,第一个区间(也即是光照最强时)“魔瓶”不断显示红、绿、蓝的颜色;第二到第四个区间分别是显示由红色、绿色和蓝色的3种不同颜色的不同显示主题,不同的颜色能改变人的心情,因此随着主题的改变,心情也改变了;第五个区间(光照较暗时)瓶子会逐渐变化出类似彩虹的七彩颜色,因为红、绿、蓝三原色进行不同的组合就会得到不同的颜色;第六个区间是我们熟悉的流水灯,先由前排逐个流动,然后后排逐个流动;第七个区间是我最喜欢的,先逐渐显示单数和双数排的LED灯,同时,在瓶子内部的黄色和绿色草帽高亮LED灯交替亮起,发射出的光线经过洞洞板和玻璃瓶透射出来,显得特别好看;最后一个区间是光照最暗的时候,内部的高亮LED都亮起,同时左右排的LED灯交替亮,之后全部闪烁,达到最激烈的程度。相信在场观众的心情此时会达到高潮,很有创意吧,下面让我们一起来制作!
电路原理
所需器件列表:
◆20脚的STC12CAD单片机1个(或者选用同类有AD功能的单片机)
◆红、绿、蓝贴片LED各4个
◆绿色和黄色的高亮草帽LED各1个
◆Ω贴片电阻6个
◆1kΩ贴片电阻2个
◆10kΩ贴片电阻1个
◆光敏电阻1个
◆7.5cm×7cm的玻纤洞洞板1块(玻纤板透光效果好)
◆排针若干
◆瓶口大小合适的空玻璃瓶子1个
01用裁刀把7.5cm×7cm的玻纤洞洞板裁成3块的2.5cm×7cm大小的形状,玻纤板有一种半透明感,能把内部的光更好地透射出来,显示的效果更加美观。当然,如果材料有限也可以用其他的洞洞板,只不过效果没那么酷罢了。
02然后在其中的一块洞洞板背面分别焊接上贴片LED和Ω的贴片电阻,此作品要求越小越好,因此元器件都选用了贴片封装以减小体积,LED从左往右的排列为红、绿、蓝、红、绿、蓝(对应单片机的P3.0~P3.5引脚)。为了显示出七彩的效果,一定要按照红、绿、蓝的排列顺序,这三原色能组合出多种不同的颜色。注意要在中间间隔两个焊盘的位置,因为这块板子是放在左边的位置,也就是单片机P3组引脚的一边,为了更好地方便后面的对应焊接,中间跳过晶体振荡器引脚部分而焊接,焊接完成后如图所示。
03在另一块板子,如图所示,连续焊接上贴片LED和Ω的贴片电阻,此处6个LED灯对应P1.2~P1.7引脚,LED灯按照电路图所示的蓝、绿、红、蓝、绿、红的顺序排列。注意上面两块板子要对应好单片机的引脚位置。
04分别剪出10针和7针的排针,并且用钳子把其弯曲成°,如图所示,然后分别焊接在上面两块板子上,10针的对应电路图的左边,7针的对应电路图的右边。注意,要对应好LED灯位置,多出来的排针用于电源之间的连接。
05在剩下的一块板子上焊接20脚的IC插座,然后把黄、绿两个高亮草帽LED灯的顶部弯曲成90°,如图所示,分别摆放在两端位置,黄、绿两个LED灯的顺序根据个人喜好摆放。
06在背面焊接上光敏电阻的10kΩ贴片上拉电阻和两个高亮LED的1kΩ限流电阻,焊接完成后如图所示。
07把左边部分的板子引出的排针对应好单片机的左边引脚位置,一一对应,注意板子背面朝外,大约弯曲成60°,然后用焊锡焊接固定好。
08再把另一边的板子也按照上一步骤焊接上,也要注意排针对应好单片机的引脚位置,并且把光敏电阻从左边板子穿插进电路板内部,把光敏电阻的两端分别连接在单片机P1.0口和电源负极,这部分完成后如图所示。于是,一个由洞洞板组成的小型“金字塔”就制作完成了。
09用一条大约1m长的两排排线把电源正、负极引出来,如图所示。你也可以多加两条排线把单片机的两个数据口引出来,方便程序的更新,由于我之前已经调试好了程序,因此在这里没有把数据线引出来。
10接上电源,用手电筒在较暗的地方不断靠近光敏电阻,看看LED灯的花式显示结果是否如自己编写的程序一致,如图所示。
11调试好程序后,就可以把它放进一个空玻璃瓶子里了,在底面板子的两端边上粘贴上双面胶,然后用镊子轻轻放进瓶子内部,在适合的位置上粘上去固定好,作品就可以宣布完成了,如图所示。电子爱好者也要加强环保意识,尽量利用废弃的物品来完成我们的电子制作,减少垃圾量,做到以废变新,这是一个不错的主意吧!而且LED灯发出的光在玻璃瓶的内壁折射又反射,显示出来的效果会比想象中要好多了!
12插上电源,把“魔法瓶”放进较暗的地方,立即会显示出更加灿烂的炫彩闪耀效果,你一定会喜欢的。
程序部分说明
本作品最主要的部分是利用STC单片机内部的A/D转换功能,读取光敏电阻的阻值变化,进而控制LED灯的流动花式。STC12CAD内部置有8位AD转换功能,读取到的数为0~的数值,然后把读到的数值分为几个范围区间,每个区间分别显示不同的LED流动花式。这里要注意的是,编写不同范围程序时,不能直接写成如“if()(m=60))”。
转载请注明地址:http://www.abmjc.com/zcmbyf/1431.html