【51单片机】【protues仿真】基于51单片机音乐喷泉系统

目录

一、主要功能

二、使用步骤

三、硬件资源

四、软件设计

五、实验现象

一、主要功能

1、ADC0832芯片对音频信号的采集,转换为数字信号给单片机,

然后PWM脉冲宽度调制控制水泵水柱对的高低

2、有LED流水灯表示音乐声音大小情况​

3、LM386芯片对音频信号进行放大

二、使用步骤

基于51单片机的音乐喷泉控制系统是一种结合音频信号处理与机电控制的综合性设计,其核心功能包括音乐信号采集、水柱高度调节、灯光同步控制等。

三、硬件资源

1、51单片机核心模块

2、LM386放大电路模块

3、ADC模块

4、蜂鸣器模块

5、流水灯模块

四、软件设计

#include <reg52.h> //调用单片机头文件

#include <intrins.h>

#define uchar unsigned char //无符号字符型 宏定义 变量范围0~255

#define uint unsigned int //无符号整型 宏定义 变量范围0~65535

sbit out=P3^7; //水泵IO口定义

sbit led1=P0^0; //发光二极管IO口定义

sbit led2=P0^1; //发光二极管IO口定义

sbit led3=P0^2; //发光二极管IO口定义

sbit led4=P0^3; //发光二极管IO口定义

sbit led5=P0^4; //发光二极管IO口定义

sbit led6=P0^5; //发光二极管IO口定义

sbit led7=P0^6; //发光二极管IO口定义

sbit led8=P0^7; //发光二极管IO口定义

//AD0832接口

sbit ADCLK =P1^2;

sbit ADDI = P1^3;

sbit ADDO = P1^3;

sbit ADCS = P1^0;

/***************************************************************

* 名称 : delay_10us()

* 功能 : 延时1ms函数

* 输入 : q

* 输出 : 无

****************************************************************/

void delay_10us(uint q)

{

uint i,j;

for(i=0;i<q;i++)

for(j=0;j<5;j++);

nop();

}

void main()

{

while(1)

{

adc0832(1,0);

delay_10us(100);

}

}

五、实验现象

演示视频:

相关推荐
wu_ye_m10 分钟前
学习c语言第35天 函数声明和定义
c语言·开发语言·学习
ryanuo716 分钟前
Mac(M芯片)上进行嵌入式开发遇到的问题
嵌入式硬件·macos·开发板
机器视觉知识推荐、就业指导1 小时前
为什么同一个引脚不能同时做按键和串口
stm32·单片机·嵌入式硬件
崇山峻岭之间1 小时前
单片机基本定时器实验
单片机·嵌入式硬件
DS小龙哥2 小时前
基于ESP32设计的智能养蜂监测系统
stm32·单片机·嵌入式硬件·物联网·华为云
夜月yeyue2 小时前
STM32 DMA 双缓冲采样
linux·stm32·单片机·嵌入式硬件·系统架构
西城微科方案开发3 小时前
SIC8P370D2L-PLP16 8位OTP单片机 低功耗多功能MCU详解
单片机·嵌入式硬件
J2虾虾3 小时前
C语言 typedef 用法
c语言·数据结构·算法
WL学习笔记4 小时前
顺序表详解
c语言·数据结构
智者知已应修善业4 小时前
【51单片机初始化D5-D8亮,每按键按下D1到D4全亮,再按下恢复,如此循环】2024-3-26
c++·经验分享·笔记·算法·51单片机