小项目分享:51单片机音乐喷泉制作全过程资料(附送给初学者的忠告)

因为最近忙着考试,所以都没时间更新博客了,在后台有个小姐姐给我留言说自己对单片机很感兴趣,但是又不知道从哪里开始学起,是先学硬件好还是先学软件好,其实在我们复杂的电子学里,硬件和软件是分不开的,硬件就像是我们的心脏和四肢,软件就像我们的大脑,如果只有软件没有硬件,纳我们的系统就是一个没用的程序,不能执行任何操作,而如果只有硬件没有软件那么整个系统就是一个行尸走肉,是一个没有“大脑”的躯壳,我说到现在大家也应该明白了,硬不离软,软不离硬,只有软硬兼修,方能大成!好了,回到刚才的问题,我建议先从硬件开始学起,先理解了硬件的架构和各部分的工作原理,然后再去看软件,这样能更好的理解原理,就像我推荐大家先用汇编后用C一样 ,好了,写了这么多,如果你有不同意见或者想法欢迎留言和私信。
今天送给大家一个比较简单的小项目吧,如果你有兴趣的话可以试着做一下呦!
好了老规矩先上实物图
正面图:

小项目分享:51单片机音乐喷泉制作全过程资料(附送给初学者的忠告)
电气原理图
小项目分享:51单片机音乐喷泉制作全过程资料(附送给初学者的忠告)
音乐喷泉的元器件清单列表
小项目分享:51单片机音乐喷泉制作全过程资料(附送给初学者的忠告)音乐喷泉单片机C语言参考源代码如下:

#include
#define uchar unsigned char
#define uint unsigned int
sbit out=P3^7;
sbit led1=P0^7;
sbit led2=P0^6;
sbit led3=P0^5;
sbit led4=P0^4;
sbit led5=P0^3;
sbit led6=P0^2;
sbit led7=P0^1;
sbit led8=P0^0;

sbit SCL=P1^2; //SCL定义为P1口的第3位脚,连接ADC0832SCL脚
sbit DO=P1^3; //DO定义为P1口的第4位脚,连接ADC0832DO脚
sbit CS=P1^0; //CS定义为P1口的第4位脚,连接ADC0832CS脚

uchar h1,date;
unsigned char adval;
void delay(uint z)
{
uchar y;
for(;z>0;z–)
for(y=120;y>0;y–);
}

/读数模转换数据*********************/
//请先了解ADC0832模数转换的串行协议,再来读本函数,主要是对应时序图来理解,本函数是模拟0832的串行协议进行的
// 1 1 0 通道
// 1 1 1 通道
unsigned char ad0832read(bit SGL,bit ODD)
{
unsigned char i=0,value=0,value1=0;
SCL=0;
DO=1;
CS=0; //开始
SCL=1; //第一个上升沿
SCL=0;
DO=ODD;
SCL=1; //第二个上升沿
SCL=0;
DO=SGL;
SCL=1; //第三个上升沿
DO=1;
for(i=0;i {
SCL=1;
SCL=0; //开始从第四个下降沿接收数据
value if(DO)
value++;
}
for(i=0;i { //接收校验数据
value1 if(DO)
value1+=0x01;
SCL=1;
SCL=0;
}
if(value==value1) //与校验数据比较,正确就返回数据,否则返回0
return value;
return 0;
}

void penquan() //PWM调压
{
date=ad0832read(1,0);

h1=(255-date);
out=0;
delay(h1);
if(h1>30) led1=1; else led1=0;
if(h1>70) led2=1; else led2=0;
if(h1>100) led3=1; else led3=0;
if(h1>130) led4=1; else led4=0;
if(h1>160) led5=1; else led5=0;
if(h1>180) led6=1; else led6=0;
if(h1>200) led7=1; else led7=0;
if(h1>220) led8=1; else led8=0;

out=1;
delay(date);

}
……………………

鉴于篇幅所限代码只能写到这里,如果你需要完整代码或者其他设计资料请加QQ分享群免费下载,群里不定期有干货分享,也有好多大神帮助答疑解惑,里面有本博客所有项目源代码和核心设计文件,如果你有什么意见和建议欢迎大家留言,让我们共同学习,一起进步!

来源:从零开始学单片机设计

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月4日
下一篇 2020年10月4日

相关推荐