当前位置: 首页 > news >正文

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

        }    
}

五、实验现象

演示视频:

http://www.xdnf.cn/news/1409869.html

相关文章:

  • Mysql什么时候建临时表
  • MySQL直接启动命令mysqld详解:从参数说明到故障排查
  • 策略模式:灵活应对算法动态切换
  • 探索数据结构中的 “树”:揭开层次关系的奥秘
  • 3【鸿蒙/OpenHarmony/NDK】如何在鸿蒙应用中使用NDK?
  • Makefile语句解析:头文件目录自动发现与包含标志生成
  • 【读论文】自监督消除高光谱成像中的非独立噪声
  • AI 取代部分岗位后:哪些职业更易被替代?人类该如何提升 “不可替代性”?
  • 硬件-电感学习DAY6——电感磁芯损耗全解析
  • 多人协作开发指南二
  • GPU-Driven Rendering inAssassin’s Creed Mirage
  • Android开发简介
  • LangChain框架深度解析:定位、架构、设计逻辑与优化方向
  • 计算机视觉与深度学习 | 双目立体特征提取与匹配算法综述——理论基础、OpenCV实践与MATLAB实现指南
  • leetcode_240 搜索二维矩阵 II
  • leetcode-hot-100(堆)
  • 分享一个实用的B站工具箱(支持音视频下载等功能)
  • Conda相关的用法
  • 业务逻辑漏洞类型及防范措施
  • 在实践中学Java(中)面向对象
  • 当 AI 开始 “筛选” 信息:算法偏见会加剧认知鸿沟吗?如何构建公平的 AI 生态?
  • 【算法笔记】算法归纳整理
  • (LeetCode 每日一题) 36. 有效的数独 (数组、哈希表)
  • 基于多模态大模型的PCB智能缺陷检测与分析
  • 人工智能学习:机器学习相关面试题(一)
  • 进程状态 —— Linux内核(Kernel)
  • 【动态规划】回文串问题
  • Wend看源码-marker(RAG工程-PDF文件解析)
  • R notes[2]
  • 鸿蒙Next文本组件全解析:输入框、富文本与属性字符串开发指南