这是毕业设计作品,老师要求可以做一个音乐盒或者汉字点阵就免考,虽然考试也很简单,但是我还是决定做一个实物,显得"高大上",本人大一的时候就学会了C语言对单片机的编程,这次课程设计当然也要用C语言来完成了。本着简单快速的原则,我就做一个音乐盒算了。
要用到的元器件有:1602液晶,52单片机,,按键,各种电容,电阻,三极管,无源蜂鸣器等
音乐盒所要用到的原理图都是我从网上搜的,所以与我所做的实物的线路连接还是有一些区别的,还是贴一下图吧。
52单片机最小系统板电路图
1602液晶电路图
按键电路图
这里有两种案件的连接方式,我采用的是第一种,这样写程序的时候,当按键按下时,相应的IO口就会变成低电平,而第二种相应的IO口会变成高电平。
先上一张正面图
背面图
背面的电路图看着有点乱,但是仔细焊接的话,还是不复杂的。
你们可能会疑惑我为什么会加一排led灯,那是我无聊加上的,用来配合音乐播放时的节拍,很low.......haha
下面说一下我的实物图的接线
蜂鸣器---->P1^3
暂停按键---->P3^7,按下暂停后会在右上角显示pause,表示已经暂停了
下一首按键---->P3^6
上一首按键---->P3^5
液晶:
sbit rw=P1^1;
sbit rs=P1^0;
sbit e=P1^2;
这样就完成了,其实做的这个还是很low的。
说一下缺陷:这个蜂鸣器有个毛病,就是声音大了就很有很多杂音,最开始的时候本来没串接电阻,声音是很大,只不过杂音太大了,基本上听不到音乐,之后接了一个大一点的电阻,音乐是有了,但是声音又太小了,没办法,我就串接了一个电位器,可以用来调节音量的大小,但是声音大了还是会有杂音。所以最好还是有个喇叭。
附上我的程序:这个程序的歌词代码也是我从网上搜集来的,只不过网上的代码都没怎么集合,很零散,而且每个代码的写法都不同,经过我几个小时的整合,我把一些代码都集合了起来,目前放了5首歌在里面,包含了,暂停,上一曲和下一曲的功能。功能都能够实现。