基于单片机的七彩音乐喷泉设计

这篇具有很好参考价值的文章主要介绍了基于单片机的七彩音乐喷泉设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、方案流程及技术规格书设计

二、系统硬件电路设计

三、软件编写及调试

四、系统调试测试与分析

前言

       随着时代的进步,人们对生活质量的要求也在不断提升,因此,51单片机七彩音乐喷泉系统应运而生,它不仅可以满足人们对舒适环境的追求,而且还可以实现智能化、自动化的户外设施,因此从受到人们的喜欢。本文提出的用步进电机控制操作,更简洁方便。

       系统采用单片机STM32F103RCT6为控制核心,由模数转换器ADC0832检测模块把音频信号转换成数字信号输入给单片机,经处理后控制电机驱动水泵开关闭合,当识别到声信号较弱时,步进电机驱动水泵开口变大,使水流喷射高度减低;当识别到声信号较强时,步进电机驱动水泵开口变小,使水流喷射高度提高。音乐喷泉在喷射时装有多个LED灯泡,使音乐喷泉视觉效果得到显著提升,提高用户的舒适体验。

       喷泉能根据音乐进程进行动态喷射,LED发光灯泡能根据音乐效果进行颜色变换闪烁,步进电机能根据模数转换器采样值驱动水泵开关及闭合。

软件工具准备

软件:

电路设计:protel99 se(up主使用版本) 或者其他版本,或者其他电路设计软件;

单片机开发:Keil5

调试测试:串口调试助手,逻辑分析仪等;

工具:

电路焊接:电烙铁,SMT(有条件的);

调试:

万用表、示波器(基础入门即可,可以白嫖学校或者公司)USB转串口工具、仿真器;

                       

一、方案流程及技术规格书设计                      

方案流程设计

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

技术规格书设计

       本课题是基于51单片机七彩音乐喷泉设计,系统包括硬件系统的实现;软件系统的实现。提供硬件系统实现的原理图,采用汇编语言或C51完成软件的开发,并完成系统的调试。本系统采用 51系列单片机开发平台。
       本系统采用 51系列单片机开发平台。

二、系统硬件电路设计

       七彩音乐喷泉由51单片机AT89C51作为主控部件,外围设备有串口、步进电机、LED等接口及部件。采用51系列单片机的并行I/O接口对8个发光二极管进行控制,采用步进电机控制水泵闭合状态,8个发光二极管显示音乐状态,并根据实际AD采集数据通过ADC0832芯片实现调节步进电机转动角度,步进电机驱动水泵开关的功能;可以通过设置音频使得8个发光二极管按照指定的规则工作。该系统模块要求性能稳定,方便操作和设置。

       本系统采用AT89C51单片机做中央控制芯片,模块组成分为ADC模数转换模块,步进电机驱动模块和发光二极管模块,ADC模数转换模块型号为ADC0832,步进电机模块型号为28BYJ4+ULN2003驱动板;用ADC0832模数转换芯片检测音乐信号幅度。ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。其提供的音频AD转换技术,是实现设计音乐喷泉的基础。

       单片机AT89C51通过ADC实现模拟信号转数字信号读取ADC0832芯片解析的音频信号后,根据AD转换值控制八个发光二极管规律闪烁,同时驱动步进电机转动,以模拟实现控制水泵闭合程度,在水压强度一定情况下实现控制水柱高低变化。

       集成开发环境:Keil uVision5是一款专业实用的c语言软件开发系统,提供编译器、编译器、调试跟踪和包管理器功能。用户可以利用观察窗口同时进行对多个重要全局变量进行实时的查看,以此用户可以在最短的时间内发现问题。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

2.1微处理控制电路

       系统采用STM32F103C8T6单片机。LQFP48封装,STM32F103ARM系列单片机,电路图如图所示:

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       图中VCC3.3供电电压3.3VR12C19复位电路,C20C101C102滤波作用,J6是仿真烧录口。

单片机IO口连接介绍:

PB0-PB218-20脚):LCD数据口。

PB3-PB739-43脚):LCD数据口。

PB8-PB945-46脚):LCD数据口。

PB10-PB1121-22脚):LCD数据口。

PB12-PB1525-28脚):LCD数据口。

PC13-PC14:LCD控制。

PA8-PA9:LCD控制。

PA7LCD背光。

PA0-PA2:按键。

PA3:光敏电阻输入。

PA4:蜂鸣器控制。

PA5LED灯控制。

PA6DHT11温湿度控制。

2.2  发光电路设计

        发光模块设计为独立模块。发光模块的基本应用电路由三极管和电阻组成。主控MCU STM32F103通过控制IO口电平高低,给特殊功能寄存器赋值对应参数,控制周期和占空比使得发光管可以输出我们想要的颜色,从00H〜FFH。TEMP6000发光模块电路如图所示。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       三极管驱动电路,其模块外接有信号采集、放大和处理电路,所以和单片机接口比较简单。设计采用3LED和单片机IO口一对一连接。在音频识别下,由单片机控制三个颜色的发光模块,实现发光模块随音乐律动。 

2.3 LCD显示电路

       LCD1602液晶显示电路如图:

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。不同厂家生产的LCD1602芯片可能有所不同,但使用方法都是一样的。为了降低成本,绝大多数制造商都直接将裸片做到板子上。

2.4按键电路

       设计按键部分使用了4个机械按键,K1-K4四个IO口电平被单片机实时检测,正常状态下,电平会升至较高水平,而当按键按下时,电平会降至较低。按键控制对应设备开关。电路如图:

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

2.5  声音输出模块电路设计

       系统可通过功放进行音频输出控制,功放的开关和通讯通过AINO控制。功放设置有空闲和通讯状态。设置功放空闲时,AINO输出低电平,设置功放通讯时,AINO输出50%占空比的方波。设计可以插入耳机通过耳机播放音频。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 

2.6 步进电机驱动电路设计

       两个ULN2003达林顿管驱动步进电机,如图3.7。在U41-4管脚输出特定时序的电压波形,可以使得步进电机按我们需求正转或反转,模拟音乐喷泉开关。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 

2.7 电源电路

       电源是整个系统能源供给中心,稳定的电压是系统工作的必要条件。由于单片机和温湿度传感器都需要纹波小干扰少的电源,所以系统采用线性稳压电路。外部9V电源适配器经过7805稳压输出5VC4输入滤波电容、C5输出滤波电容。电路如图。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       单片机等3.3V供电采用ASM1117线性稳压电路,电路如图。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 

三、软件编写及调试

3.1主程序设计

       主控单片机为STM32F103FRT6,单片机识别音频信号输入,按键信号,LCD1602输出显示,步进电机输出转动步数。

       工作时,程序先进行初始化工作。然后单片机接收音频信号,控制步进电机、LCD1602液晶显示。系统流程图。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 

3.2 LCD显示程序设计

       1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块 它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有也有间隔 起到了字符间距和行间距的作用。

       1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶,其地址和屏幕的对应关系如下表4.1地址和屏幕对应关系:

显示位置

1

2

3

4

5

6

40

DDRAM

地址

第一行

00H

01H

02H

03H

04H

05H

27H

第二行

40H

41H

42H

43H

44H

45H

67H

       以下是清屏指令,如表:

指令功能

RS

RW

D7

D6

D5

D3

D2

D1

D0

清屏

0

0

0

0

0

0

0

0

1

       与液晶显示器进行通讯,首先要具备写入和写入的功能,图是写LCD命令和数据流程图。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 

3.3 步进电机驱动程序设计

       使用4相8拍步进电机,它的工作原理为:电机按照一定的电流循环运行,从A开始,依次为AB、B、BC、C、CD、D、DA,最后回到DA开始,依次为C、BC、B、AB。转速的快慢是由输出脉冲频率决定。

步进电机代码:

/*输出脉冲驱动*/

    unsigned char MotorCtr(void)

{

    if (stop_flag==1) //停止转动

        {

            P24 = 1;

            P25 = 1;

            P26 = 1;

            P17 = 1;

            case 0: //0 ,(A 相)

               P22 = 1;

               P21 = 0;

                 P20 = 0;

                 P10 = 0;

            break;

            case 1: //0、1, (AB 相)

                   P22 = 1;

               P21 = 1;

                 P20 = 0;

                 P10 = 0;

            break;

            case 2: //1,(B 相)

                   P22 = 0;

               P21 = 1;

                 P20 = 0;

                 P10 = 0;

            break;

            case 3: //1、2 , (BC 相)

                   P22 = 0;

               P21 = 1;

                 P20 = 1;

                 P10 = 0;

            break;

            case 4: //2, (C 相)

                   P22 = 0;

               P21 = 0;

                 P20 = 1;

                 P10 = 0;

            break;

            case 5: //2、3, (CD 相)

                   P22 = 0;

               P21 = 0;

                 P20 = 1;

                 P10 = 1;

            break;

            case 6: //3, (D 相)

                   P22 = 0;

               P21 = 0;

                 P20 = 0;

                 P10 = 1;        break;

           

            case 7: //3、0, (DA 相)

                   P22 = 1;

               P21 = 0;

                 P20 = 1;

                 P10 = 1;

     }

如果(turn==0),则控制转动方向,从0-正转到1-反转,以实现最佳效果。

     {

            step_index++; //正转时序

            if (step_index>7)

                   step_index=0;

     }

     else

     {

            step_index--;//反转时序

            if (step_index<0)

            step_index=7;

     }

}

3.4发光管模块程序设计

       二极管通过单片机的控制,将电子和空穴结合,并释放出可见的光。这些二极管既可安装到电路和仪表上,也可以被用于文本和图形的显示。其中,砷化镓二极管会产生鲜红的光,磷化镓二极管会产生碧绿的光,碳化硅二极管会产生金黄的光,氮化镓二极管会产生金色的光。由于其物理特征,有机合成发光二极管OLED与无机化学发光二极管LED可以有效地区别开来,具体可参见图。

       LED从一开始的应用,就是作为一种指示性的装置,它不仅可以作为仪器仪表的亮度,还可以作为交通信号灯的亮度,甚至是汽车的亮度。后来将二极管从一种颜色发展成多个颜色的微型二极管,可以排列形成在显示领域。微尺寸的发光二极管拥有独特的自发光表现能力,这使得它们的表现能力远远超过了传统的有机发光二极管(Organic Light Emitting DiodeOLED),并且它们的使用寿命更加持久,更加耐用。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 

四、系统调试测试与分析

4.1电路仿真

       首先采用protues仿真软件的进行调试与仿真,再进行对实物硬件的仿真器调试,在采用protues软件仿真进行仿真调试时,用模拟硬件电路在软件中进行搭建。

1刚开始运行图5.1,表示pump init

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 2. 初始化完成后的仿真如图5.2,显示Fountain ON,时长00:00 MUSIC。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 3.长按ENTER按键切换为关音乐喷泉状态。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

4. 三个发光管随音乐而律动。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

 

4.2硬件电路焊接

       用电烙铁将单片机、LED灯、液晶显示及电容、蜂鸣器、按键等器件焊接在电路板上。

4.2系统调试

       板子单片机通过电脑连接仿真器,烧入软件进单片机,上电液晶显示初始化pumpinit。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       音乐控制喷泉。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

        点击机械按键控制关,进入关模式。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       按下遥控器按键时,步进电机驱动音乐喷泉开启。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       按下遥控器按键时,设定时间。

基于单片机的音乐喷泉灯设计,嵌入式项目_单片机系统设计,单片机,stm32,嵌入式硬件

       按下遥控器按键时,设定定时时间。文章来源地址https://www.toymoban.com/news/detail-816985.html

到了这里,关于基于单片机的七彩音乐喷泉设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于51单片机带显示器的音乐盒设计

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87512938?spm=1001.2014.3001.5503 源码获取 摘 要 单片微型计算机室大规模集成电路技术发展的产物,属于第四代电子计算机它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。他的

    2024年02月06日
    浏览(31)
  • 基于51单片机的7键电子琴音乐播放器proteus

    本设计仅供参考 基于51单片机的7键电子琴音乐播放器proteus(仿真+源码+原理图) 原理图:Altium Designer 仿真图proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 编号C0036 有需要学习可以点击下方链接下载 资料下载链接 设计介绍: 本次设计首先对单片机设计简易电子琴仔细分

    2024年02月11日
    浏览(26)
  • 基于51单片机音乐盒设计( proteus仿真+程序+原理图+PCB+报告+讲解视频)

    基于51单片机音乐盒仿真设计( proteus仿真+程序+原理图+PCB+报告+讲解视频) 仿真图proteus 7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0030 本次课设是应用单片机原理和控制理论设计音乐演奏控制器的硬件电路,并利用C语言进行程序设计。通过控制单片机内部

    2024年02月04日
    浏览(41)
  • 基于51单片机的16键电子琴音乐盒设计proteus仿真原理图程序

    功能: 0.本项目采用STC89C52作为单片机系统的控制MCU 1.LCD1602液晶实时显示时间和当前工作模式 2.支持电子琴模式和歌曲模式(内置8首歌曲) 3.短触’设置/切换’键可切换工作模式 4.长按’设置/切换‘键可进入时间设置模式 5.采用DC002作为电源接口可直接输入5V给整个系统供电

    2024年02月12日
    浏览(30)
  • 51单片机的音乐盒设计

    一.硬件设计         本设计的硬件主要由51单片机最小系统(AT89C51/52、AT89S51/52、STC89C51/52均通用)、LED指示灯、LM386功率放大电路、喇叭、按键电路等构成。 二.设计功能 本设计内置8首歌曲,按键可以上一曲,下一曲,开始或暂停。电位器可以调节音量。采用LM386功放电

    2024年02月11日
    浏览(29)
  • 【单片机毕设选题】Stm32单片机的音乐播放器设计 - 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(38)
  • 51单片机的音乐播放器系统(仿真+程序)

    该系统由AT89C51单片机+数码管模块+蜂鸣器模块+按键模块构成 可实现功能: 1、按键切换歌曲(4首) 2、数码管显示歌曲序号 proteus 仿真使用的是8.10版本,由于该软件版本迭代原因,不能确保其他版本软件能够正常运行,请安装好对应软件(版本一致或者高于这个版本都可以

    2024年02月12日
    浏览(30)
  • 使用单片机控制蜂鸣器播放音乐的代码

    在嵌入式系统中,单片机常常被用于控制各种外设,其中包括蜂鸣器。蜂鸣器是一种能够发出声音的电子元件,可以通过单片机的控制来播放各种音乐或声效。本文将介绍如何使用单片机控制蜂鸣器播放音乐,并提供相应的源代码。 在开始编写代码之前,我们首先需要确定使

    2024年02月01日
    浏览(30)
  • 51单片机mp3音乐播放器设计

    一.硬件方案        mp3音乐播放器是以51单片机为核心控制器,设计一个音乐播放器,主要完成TF卡存储的音频文件数据提取及播放任务。该播放器类似于个人计算机的音乐播放软件,可识别、提取TF卡所存储的WMA、MP3格式的文件并可自行完成音频解码数据处理,最后送扬声

    2024年02月11日
    浏览(30)
  • MCU-51:单片机蜂鸣器播放音乐和提示音

    蜂鸣器是一种将电信号转换为声音信号的器件,常用来产生设备的按键音、报警音等提示信号 蜂鸣器按驱动方式可分为有源蜂鸣器和无源蜂鸣器 有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定 无源蜂鸣器:内部不带振荡源,需要控制器提供振

    2024年02月02日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包