【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);

}

}

五、实验现象

演示视频:

相关推荐
知南x4 分钟前
【STM32MP157 视频监控项目】(2) 移植 Nginx
stm32·nginx·音视频
易水寒陈1 小时前
单片机实现的工厂模式
单片机
别了,李亚普诺夫3 小时前
PCB设计大师篇笔记
笔记·嵌入式硬件·学习
码农小韩3 小时前
基于Linux的C++学习——循环
linux·c语言·开发语言·c++·算法
Q741_1473 小时前
海致星图招聘 数据库内核研发实习生 一轮笔试 总结复盘(2) 作答语言:C/C++ 哈夫曼编码 LRU
c语言·数据库·c++·算法·笔试·哈夫曼编码·哈夫曼树
点灯小铭3 小时前
双积分AD转换电路
单片机·毕业设计·课程设计·期末大作业
你怎么知道我是队长3 小时前
C语言---位域
c语言·开发语言
Zeku3 小时前
20260110 - Linux驱动学习笔记:环形缓冲区与按键防丢失
stm32·freertos·linux驱动开发·linux应用开发
youcans_3 小时前
【动手学STM32G4】(8)STM32G431之 DAC进阶
stm32·单片机·嵌入式硬件·dma·定时器
hqwest3 小时前
码上通QT实战14--监控页面06-串口设备数据初始化-
单片机·rs232·serialport·波特率·串口设备·虚拟串口设备软件·qt项目配置文件