图25.1 时钟显示效果
图25.2 频谱显示效果
1.电源部分

电源电路如图25.3所示。
图25.3 电源部分的电路
电源模块采取了一支很常见的7805稳压芯片,再加一大一小两个电容进行滤波,输入端直接买了个9V/1A的电源适配器,方便省事。7805额定输出电流1A,对付这样的小系统来说,已经完备够用了。实际利用下来,7805发热不太大,无需加装散热片。为了利用方便,我在7805的输入端加装了一个开关和一个赤色LED,分别作为系统电源开关和指示灯。
2.时钟、温度部分
这部分电路如图25.4所示。单片机采取的是STC89C52RC,考虑到本钱和功能性问题,时钟部分我没有单独买时钟芯片,直策应用内部定时器中断作为时钟源,这直接导致的结果便是时钟偏差稍大。经测试,每24小时偏差在1分钟旁边,作为一个功能性的DIY作品,就饶了它吧,呵呵……温度传感器采取的也是常用的DS18B20,相信大家都很熟习。3个功能按键分别是时钟(闹铃)小时调度、时钟(闹铃)分钟调度和时钟/闹铃切换。
图25.4 时钟、温度部分的电路
为了跟“频谱”切题,时钟、温度的显示没有采取传统的数字表示,而是分别把时钟的小时、分钟的十位和个位分别用点来表示,每两列表示一位,每行表示一点,左下角是时钟,右上角是温度。是不是有点晕乎呢?实在只要你看了实物就会以为很大略,笔墨的确不是很好表达。时钟没有单独设置“秒”的显示,为了增强显示效果,我特地在右下角设置了沙漏着落效果,每一秒钟着落一行。
3.频谱剖析部分
电路如图25.5所示。这部分的制作跟“五色LED频谱”是一样的事理,都是把音频旗子暗记经AD采样,用快速傅里叶变换求出频点的幅值,再根据幅值大小来驱动相应的LED。只不过我设计的是每次采128个点,末了十六分频而已。单片机采取的是STC12C5A60S2,已经在旗子暗记输入端加了47pF的电容滤波,但还是创造有噪声。可能是由于利用的是洞洞板,还有便是走线过长的缘故。我试着加大了电容再次滤波,但直接导致低频相应变差,鉴于噪声不是很严重,末了只好作罢,姑息一下了。
图25.5 频谱剖析部分的电路
4.WAV 音乐播放部分
电路如图25.6所示。这部分该当是全体系统里面最繁芜的了,WAV音乐播放部分是在数码之家论坛hit00版主的“WAV播放器”的根本上修正而来的。单片机选用的是STC12C5616AD,虽然该单片机自带有SPI接口,在一定程度上已经简化了程序,但SD卡文件的操作确实有难度。原来的程序里带有语音,受到单片机存储空间的限定,语音质量太差,没有“停息”及”上一曲”功能。我去掉了语音,增加了停息及上一曲功能。个中停息功能的实现花了我不少韶光,本来想当停息的时候就让单片机进入去世循环,开始的时候再跳出来,结果试了往后创造完备不是那么回事。单片机PWM旗子暗记的输出本来就用的中断,单片机进不进入去世循环,中断还是一样的事情。要不就让它在停息的时候掉电或是待机什么的呢?好吧,查STC12C5616AD的手册。一看手册我笑了,PCON电源掌握寄存器不正是我想找的吗,单片机进入掉电模式,单片机状态坚持当前值,呵呵……问题办理。功放部分采取了LM386功放芯片,直接引用了网上LM386的范例运用电路。
图25.6 WAV音乐播放部分的电路
5.显示部分
电路如图25.7所示。为了能有好的显示效果,显示部分用的是32×16的高亮度聚光蓝色LED组成的点阵屏,1kΩ电阻限流。全过程手工焊接,可能我焊得慢,整整焊了一晚上。焊接状态与电路细节如图25.8、图25.9所示。
图25.7 显示部分的电路
由于时钟部分跟频谱剖析部分共用点阵屏,以是必须考虑两路旗子暗记的隔离分时显示。还有便是32列LED的列驱动问题。旗子暗记的隔离分时显示我用的是74HC573锁存器,通过掌握OE端口将须要显示的旗子暗记线路的74HC573选通,而将其余一组旗子暗记通过74HC573的高阻态实现隔离。LED的列驱动选用的是74HC154(4线—16线译码器),只需一组I/O口就可实现32列LED的列驱动了。
到此,全体系统的先容就完了,在这里特殊感谢数码之家论坛的hit00版主在制作过程中给予的大力帮助。图25.10便是这个实物作品的百口福。
为了只管即便减少滋扰和连线,全体板子电源全是用焊锡走的线。旗子暗记线采取杜邦线和插针连接,方便调试。
虽然制作时以为挺累,但当看到自己做的东西“跑”起来那一刻,就什么都值了,我相信每一个DIY爱好者都会有这种觉得吧,大概这便是DIY的乐趣。干系源程序可到qq群657864614进行下载。
图25.8 焊接状态
图25.9 电路细节
图25.10 完成的电路板实物
划重点:现网络整理了1300G电子技能资料,一口价68元,须要的朋友可以私聊我!