2649
需用时 05:17
糖果盒里的管风琴和架子鼓
/gkimage/b2/sr/f9/b2srf9.png
DIYer:AndyGadget
制作时间:3天
制作难度:★★★★☆
GEEK指数:★★★★☆

编译来源



1   简介-Tic Tac糖果盒里的微型管风琴和架子鼓

/gkimage/w1/z0/3h/w1z03h.png/gkimage/ag/bq/9w/agbq9w.png
  • 左边这样的大盒子没有挑战性,我要把全部电路集成到右边的小糖果盒里。
/gkimage/j6/pv/vu/j6pvvu.png
  • 打开这个盖子露出编程接口。

这个小盒子能够让你在几小时里专注于编写自己的乐曲。你能够改变曲子的节奏,在五声音阶和布鲁斯风格之间切换,又或者演奏出多种多样的打击乐。烧写一个不同的程序它就会自行编写自己的乐曲旋律(糖果音乐盒),或者同时奏响一打乐器(糖果盒曲调器)。

另外一个很酷的功能是不需要电源开关,它在需要的时候会自行休眠。不说那些伟大的音乐家,即使我们这样没有丝毫音乐天才的人也可以用它作出听起来很不错的乐曲。

看看演示视频,然后听听示例MP3来了解这个小小的设备到底能做到些什么。

演示视频:


实例MP3:

Percussion.mp3 (220 KB)

MoreBlues.mp3 (295 KB)

MinorPentatonic.mp3 (260 KB)

BluesScale.mp3 (189 KB)

GoodBlues.mp3 (170 KB)

FastBlues.mp3 (120 KB)

BeatBox New.mp3 (990 KB)

Hungarian.mp3 (247 KB)

Arabic.mp3 (228 KB)

Chromatic.mp3 (237 KB)


2   零件和工具

/gkimage/pk/o0/zi/pko0zi.png

零件:

○ 一个PICAxe 08M 单片机
○ 两个10K电阻(1/4或1/8w功率)
○ 1个330欧电阻
○ 1个22K电阻
○ 1个560K电阻
○ 1个红色LED
○ 1个10K线性双路滑动电位器(60mm长)
○ 2个1N4148或类似的小型二极管
○ 1个0.1uF的电容(10V以上)
○ 1个28毫米x4毫米紧凑型压电扬声器
○ 1个PX28A 6V电池(4LR44 PX28A A544 L1325都行)
○ 1个立体声3.5mm的插孔
○ 1个插头(2.5或3.5mm,单声道或立体声不限)
○ 1块面包板(至少有22×12个通孔,我用的是长条状铜箔的)
○ 1个弹簧(可以从自动笔里拆出)
○ 1盒TicTacs糖
○ 连接导线
○ 装饰物

工具:

● 基本的工作用品
● 焊接设备

零件大多从网上购买。自行给单片机编程的话,你需要:

程序编辑器

购买芯片和编程器

如果手头有编程器(这意味着你是个有经验的单片机玩家),那么这个项目剩下的部分都很简单。


3   制作电路板

/gkimage/q1/y9/ty/q1y9ty.png/gkimage/y6/n6/ox/y6n6ox.png/gkimage/in/m9/vh/inm9vh.png/gkimage/52/4p/kj/524pkj.png/gkimage/d3/p5/ce/d3p5ce.png/gkimage/2h/mx/hp/2hmxhp.png

用美工刀裁切电路板,然后用钳子小心地折断。我不小心弄断了电路板的一条“腿”,所以后来用铜引脚代替它连到电池上。

参考实物图,可以用铲刀,5mm钻头或者美工刀刻断不需要的铜带。确保切断处没有不必要的连接。

先安排编程座和连接线,最后再放上电阻,二极管和芯片。一般来说我会用IC插座,但是这里空间不够。剪掉背后高出的引脚减小电路板的高度,这个很重要!焊接集成块的时候要小心,尽量快速焊接,充分冷却芯片。

为了安装压电扬声器从IC插座上拆了两个铜引脚,但事实上能焊的硬线都可以。两个长约8mm的引脚焊完之后在上面套上弹簧。如果长度合适,当你把压电扬声器和电路分别装在盒子上再盖好,两者刚好能够接触上。

用粗铜线代替电路板缺损的那一块连接到电池的负极,要让它能稳固地夹住电池。焊接电池的时候稳准狠,以免电池过热。电池的正极线暂时可以不连到电路板上。


4   制作键盘

/gkimage/vj/i1/af/vji1af.png/gkimage/eg/lc/ob/eglcob.png/gkimage/ws/f6/vq/wsf6vq.png/gkimage/6i/zm/lz/6izmlz.png/gkimage/7g/1x/gr/7g1xgr.png/gkimage/wh/cp/ai/whcpai.png/gkimage/rk/t3/50/rkt350.png/gkimage/jp/7e/5l/jp7e5l.png/gkimage/i4/bs/2b/i4bs2b.png/gkimage/0a/mw/0m/0amw0m.png

键盘用了个10千欧的双路线性滑动电位器,就是常在混音台上看到的那种的微型版。它和普通的电位器原理一样,只是阻值变化是线性的。

首先掰开8个固定脚,然后拆出可变电阻元件。仔细看第三张图,注意元件上的两条黑斜线,这标志着电阻区的开始和结束。切掉6个引脚,然后小心地打磨平整电阻板背面的六个洞。这个面稍后会用来胶接。小心点,这东西不算坚固,并且电阻区域很容易被划伤。

如图所示,将细导线穿过电路板上的孔然后焊接好。图片中的黄线连接到电源正极,蓝色到电源负极。在电源正极一端堆一个锡块,这里用作控制节奏的触点。

3.5mm插头里实际上只用了顶部的触点,所以无论是单声道,立体声还是2.5mm的插头都能用。用比较柔软的线焊接到中间插头,然后用段热缩管固定。


5   总体组装

/gkimage/an/s1/36/ans136.png/gkimage/e6/8d/qc/e68dqc.png/gkimage/2y/vt/1f/2yvt1f.png/gkimage/it/zl/5v/itzl5v.png/gkimage/a1/p7/11/a1p711.png/gkimage/ga/t3/42/gat342.png/gkimage/co/qu/vv/coquvv.png/gkimage/dc/f5/nw/dcf5nw.png/gkimage/bt/mb/5h/btmb5h.png

要确定传声孔的位置,将弹簧套在接线柱上然后放上扬声器。轻轻按住然后整体组装进盒子然后盖上,标记扬声器发声孔的位置,取出电路之后再上面钻一个小孔。电烙铁适合用来修正孔边。记得在盒子上开一个洞穿插头线,然后在盒子的底部为键盘线也开一个洞。将插头和键盘线穿进盒里,剪短,然后焊在电路板上。临时把电池的正极接上,电路就可以工作了!

安放好扬声器,最后再测试一下。用一个小钢丝钩固定键盘线以免和电池的位置冲突。用一点胶粘剂把电阻板和塑料盒粘起来,拿点东西盖上然后等5分钟。

我是个左撇子所以做的东西适合用左手的人。对于适合右手使用的版本,需要把电阻板布置到面板下方然后在演奏的时候反过来用。

绝缘胶带对制作很重要,它沿框绕一圈,正好截止在电阻部分的斜线末端。然后在之前做的焊锡点附近挖去胶带露出焊锡点,这里是用来打开节奏器并控制拍子和音阶的控制按钮。

最后用自选的风格装饰盒子并用烙铁尖修整扬声器孔。我用紫色的聚乙烯全息胶带做了未来风格又带点70年代紫色复古感觉的包装(也因为店铺里这种胶带最便宜)。


6   电路图

/gkimage/6g/4d/ql/6g4dql.png

空间在这里非常重要,所以用一个小型的6V电池通过二极管降压1.2V到4.8V给额定5V的单片机供电。

如果想要在线重新编程,就需要R1,R2和编程接口。C1滤波电容可以滤去数字电路的噪声。R3用来在没有输入时将输入引脚下拉到地。电阻区末端的锡堆则用来定义高电平。我用的是个广视角红色LED,如果用蓝色或者白色的LED需要把R5减小到150欧。

节拍器的工作电流大约1mA,休眠时只有200uA,所以电池可以用很长一段时间。

ExpressSCH电路图编辑软件

文件下载:

TicTac.pdf ((595x842) 9 KB)


7   微处理器和代码

/gkimage/2f/ad/hs/2fadhs.png
  • 看起来小,但是功能强大!

糖果盒节拍器上电以后处于休眠模式,每4秒钟检测一次模数转换器的输入,读数为255时唤醒。插头没有接触电阻条时输入端由电阻下拉到地。之后它通过ADC读出插头顶端的电压,读数在0~255之间。锡点是电源正极,读数为255。

唤醒以后,额外的255个脉冲周期用来输入拍子速度,这时候每碰触一下LED就闪烁一次,拍子速度加1。当拍子速度计数到8时重置为1,切换音阶并以LED长亮作为标志。PICAXE只能产生相同时值的音符,所以需要控制拍子速度。电阻区域线性排列,最远端AD转换出的读数值是127。这个读数在软件中是上键盘和下键盘的分割线。然后分为18个音符和8个打击乐敲击区域。ADC读数为0(表明探头没有接触电阻区)时不发声。

打击乐声由PicAxe的SOUND命令产生,音符则使用TUNE命令。一个看门狗电路在奏出每个音符时重置,如果超出20秒没有演奏那么系统自动休眠。


糖果盒曲调器给这个盒子增加了更多的音阶,但是去掉了打击乐。它和糖果音调器用一样的方法打开,然后通过控制触点选择拍子速度和音阶。更改拍子速度的时候LED会闪烁,并且新曲调载入的时候会“哔”一声。有下面这些音阶:

(1)小调五声音阶
(2)布鲁斯
(3)匈牙利风
(4)阿拉伯风
(5)希加兹
(6)半音音阶

糖果音乐盒是一个自由运行的节拍发生器。开机以后在顶部的电阻区域随便碰几次,然后就会在2到5个拍子之后产生随机的节奏。它还能混合两套设置(在相同的拍子速度和节奏下)来制造更多的变化。每次开机它都会产生新的曲调。每次设置完毕LED会随拍子闪烁,然后在每个小节之间闪一下。再次触碰顶部的电阻区可以关机。

文件下载

Tic Tac Tunes_V1.0.doc (32 KB)

TicTacScales_V1.0.doc (23 KB)

TicTacBeatBox_V1.0.doc (27 KB)

TicTacTunes_v1.01.bas (2 KB)

TicTacScales_V1.0.bas (1 KB)

TicTacBeatBox_V1.0.bas (3 KB)

TicTac.pdf (9 KB)


8   相关音乐知识

/gkimage/ee/01/57/ee0157.png

PICAXE可以产生跨三个八度的音调,在完整的半音音阶(高音和半音基调)里是36个音符。由于波形合成和人体感觉的原因,一些音符相邻的时候音乐会变的不和谐。

世界各处有多种音符的搭配,它们被称为音阶。其中有些不使用全部的音符,五声音阶就是这样。我选择了只包括A C D E G的小调五声音阶。

布鲁斯音阶有些相似,但通常要用6到7个音符。它们组合起来是和谐的,但会给出一些具有紧张感的合音。我用的音符是C Db E Gb Ab Bb。

理论上半音音阶足以演奏出好曲子,但是在这个糖果音乐盒的键盘上没有音符的位置标记,所以奏出正确的音符有些困难。可以在盒盖上打标记,但是自动选择合理的音调会比我自己演奏好些。即兴与和谐之间的平衡是这个小乐器的要点之一。


9   DIYer签到处


编辑:秦皇汉武

果壳DIY站QQ群:132647923, 2群:179240860(加入时请报上你在果壳的个人主页地址,以防广告ID)

果壳DIY站微博: http://t.sina.com.cn/guokrdiy

果壳网友 @haldak 仿制一枚: .. image:: /gkimage/75/5j/5u/755j5u.png


The End

发布于2011-11-25, 本文版权属于果壳网(guokr.com),禁止转载。如有需要,请联系果壳

举报这篇文章

叶子疏

微电子专业硕士研究生,DIY爱好者

pic