创意小制作:有趣的激光竖琴

  在上海世博会的伊朗馆,我看到了一架没有琴弦的竖琴,那是众多参观者公认的伊朗馆里最有趣的展品!参观者只要伸手穿过那架通体黑色的竖琴,音调就会被“奏响”。没有琴弦怎么奏响?工作人员为我们揭示了秘密——他按了一下琴身上的“光”按键,14道红色的激光束就从琴的上端射出。他说,这是激光竖琴。我们用手指一“拨”激光束,竖琴就会发声,每一束光都有不同的音高。据说这个竖琴原本放在伊朗的科学馆里,主要是为了激起小朋友对音乐和科技的兴趣。

  这个激光竖琴也让我回想起了许多陈年旧事,很久前我就曾经和同学说过,我也能做一个激光竖琴,还和他打了赌,只是由于时间的问题一直没有完成。看了伊朗馆的激光竖琴,我决定制作它,当然是一款很简陋的激光竖琴。不过对于喜好DIY的朋友而言,也是一个不错的创意小制作。

 

  

 

  制作需要的材料(见附表)

 

  附表 使用AT89C2051方案的元件清单

 

 

  整体结构

 

  这个激光竖琴,用3个木块构成,并用螺丝和热熔胶固定成接近竖琴的形状。

  在上面的木块上安装5个3.0V激光管,并用热熔胶固定在下面的木块上。用0.8mm的钻头钻洞,并安装对应的5个光敏电阻,即组成基本的基座。然后,在合适的地方放置5号电池盒,也用热熔胶固定。最后,根据电源原理图,把对应的引线和插座连接,以方便后期的连接和升级。最后,再与电路板底座连接。底座的电路我先后做了两种,分别采用的是AT89C2051和ATMEGA8这两款单片机。当然,性能和效果也是不同的。由于材料有限,我只做了5根弦的作品。

  这次制作焊接非常简单,都是DIP的元器件,根据原理图使用绝缘套线,连接对应引脚即可。

  好了,你也可以享受神奇的无弦琴的乐趣了!

 

  

  采用51单片机的电路原理图

 

  

  采用AVR M8单片机的电路原理图

电路原理

 

  光敏电阻在室内光线下的阻值约20kΩ。当受到激光管照射时,它的电阻将小于1kΩ。于是,笔者用10kΩ的电阻和光敏电阻串联,进行分压。当有激光照射时,单片机读取光敏电阻的电压(3/11,约 0.27V),此时它的逻辑电平为0。当无激光照射时,单片机读取光敏电阻的电压,约(3/30)×20=2V,这时它的逻辑电平为1。

  这样,当我们遮挡激光的光线时,就能在电路中产生开关的效果。音符是如何产生的呢?人耳能听到的声音频率为20Hz~20kHz,竖琴音符频率当然也在这个范围。只是,不同的音符,有着自己固定的频率。通过51单片机自带的16位定时器就可以产生上述音频。例如竖琴的标准音la为440Hz。通过计算可知,它的半周期为1136μs。这样,只要在半周期时跳变引脚电平,就可以产生440Hz的方波了。再经过电声转换元件(蜂鸣器),就可以产生标准音la 了,其他音符也是这样产生的。

 

  

  51单片机底板

 

  

  AVR单片机底板

 

  

 

  激光竖琴的结构

  采用51单片机的电路使用了AT89C2051单片机,在P3.7引脚上连接发声元件,即无源蜂鸣器。通过三极管放大电流,使音乐更响亮。其余部分是51 单片机的最小系统。电路的电源用2节5号电池。大家可能会认为,这个音符没有音色啊。因此,我又对这个51单片机做的发声底座进行了改变,用M8单片机重新设计了发声的底座。使用新设计的M8单片机电路,我们可以将音色文件放到SD卡中,大家根据自己的喜好,放入喜欢的音符,如钢琴、二胡、吉他等。不过,音符需要自己用电脑事先录制,并保存为8位的WAV文件,文件名为D、R、M、F、S、L、X。程序会判断哪根激光被阻挡,播放相应的音符文件。声音通过 M8单片机的OC1A、OC1B产生。只要把音频输出的OCR1A、OCR1B和音响或耳机连接,就能听到响亮的音符了。

单片机

每天更新
单片机
各种知识,电子制作DIY,及
电子行业
最新资讯,关注我们,棒棒哒!

由此可知,要检查单片机串行通信接口的基本固件特性,可以使用式(2)进行判别;如果不能满足式(2),就表明单片机串行通信接口的固件特性有问题,会引起通信失效。

生成海报
点赞 0

Abin

我还没有学会写个人说明!

相关推荐

基于8051单片机实现电子时钟+数字秒表设计

概述 电子时钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显 示直观、无机械传动装置等优点,因而得到广泛应用。随着人们生活环境的不断改善和美化,在许

Esp8266多功能点阵时钟(开源)

原文地址 多功能点阵时钟 更新 点阵时钟立创PCB工程已经完成,开源地址为: ESP8266多功能点阵时钟 - PCB制作分享 简介 很早就了解ESP8266了,当时也用这个搞过一些小demo,一直也没有想

Arduino设置esp8266实现局域网通信

硬件准备 Arduino UNO主板Esp8266 01s面包板杜邦线若干 软件准备 Arduino IDE网络调试助手(PS端或手机均可,手机可在应用市场搜索网络调试精灵) 接线 Arduin