做声控流水灯需要哪些材料啊

做声控流水灯需要哪些材料啊
才开始学,看了好久还是认不清想做36个灯的

该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
要做声控流水灯,您需要以下材料:

  1. 51单片机开发板:用于控制流水灯的运行。您可以选择自己喜欢的型号和品牌,例如STC89C52、AT89S52等。

  2. 声音传感器模块:用于检测声音信号的强度,并将其转换成电信号。

  3. LED灯带:您需要36个LED,可以选择WS2812B灯带等。

  4. 杜邦线:用于连接单片机、声音传感器和LED灯带等。

  5. 面包板:用于连接电路。

  6. 电源:您需要一个稳定的5V电源,可以选择使用USB电源适配器或者直接连接到电脑USB口。

除了上述材料外,您还需要掌握一些基础的电子知识和编程技能,例如51单片机的基本原理、C语言编程、电路设计和调试等。

对于初学者而言,建议您先学习一些基础的电子知识和编程技能,例如51单片机的基本原理、C语言编程、电路设计和调试等。然后,您可以参考一些相关教程和资料,学习如何使用声音传感器模块和LED灯带等材料。最后,您可以自己动手设计电路并编写程序,完成声控流水灯的制作。


如果以上回答对您有所帮助,点击一下采纳该答案~谢谢

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7676593
  • 这篇博客也不错, 你可以看下基于单片机水温自动控制系统设计-毕设课设资料
  • 除此之外, 这篇博客: 体系结构_流水线相关和指令调度实验【问题整理】中的 是什么意思? 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 参考【CSDN问答频道】

    将rt寄存器中存放的值保存到rs寄存器中存放的值加上立即数imm进行符号扩展后得到的扩展立即数所得的内存地址的内存单元中,即
    memory[rs + (SignExtend)immediate] 《-- rt;(其中rs经常取值为r0)

     

  • 您还可以看一下 陈虎老师的一小时快速学习屏幕录像和视频编辑实战教程课程中的 如何给视频添加水印小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    回答:

    制作36个灯的声控流水灯需要准备以下材料和工具:

    1. 声音传感器模块

    2. 36个LED灯和36个电阻

    3. Arduino UNO电路板

    4. 杜邦线

    5. 面包板

    6. 220V交流电源适配器

    7. 降压整流电路(使用降压变压器、4个1N4002极管和一个电容组成)

    首先连接降压整流电路和220V交流电源适配器,将其输出连接到Arduino UNO电路板上的Vin或者Barrel Jack接口。

    然后连接声音传感器模块和Arduino UNO电路板,声音传感器模块的输出接口连接至Arduino UNO电路板的数字引脚2号。

    接着准备36个LED灯,连接每一个LED灯到一个电阻上(电阻的大小根据每个LED灯的额定电流而定),然后将电阻连接在Arduino UNO电路板的数字引脚3、4、5、...、38号上,对应每一个LED灯。

    最后,在面包板上安排好电路的连接,确保连接正确,接通电源,程序运行正常,并观察灯光流动是否符合预期。

    Arduino程序代码示例如下:

    int ledPins[] = {3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38};
    int sensorPin = 2;
    int thresholdValue = 500;
    
    void setup() {
      for (int i = 0; i < 36; i++) {
        pinMode(ledPins[i], OUTPUT);
      }
    }
    
    void loop() {
      int sensorValue = analogRead(sensorPin);
      if (sensorValue > thresholdValue) {
        for (int i = 0; i < 36; i++) {
          digitalWrite(ledPins[i], HIGH);
          delay(100);
        }
        for (int i = 0; i < 36; i++) {
          digitalWrite(ledPins[i], LOW);
          delay(100);
        }
      }
    }
    

    以上程序会轮流点亮和关闭36个LED灯,灯光流动受声音传感器模块捕捉到的声音大小所控制。

    注意:在连接电路和编写程序时请谨慎操作,避免出现电路短路或程序错误等问题,确保安全。