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

电子商务静态网站建设实验报告网站备案 拍照

电子商务静态网站建设实验报告,网站备案 拍照,广告艺术设计,免费字体下载网站一个基于ESP32S3和INMP441麦克风实现音频强度控制RGB灯带律动的代码示例#xff0c;使用Arduino语言#xff1a; 硬件连接 INMP441 VCC → ESP32的3.3VINMP441 GND → ESP32的GNDINMP441 SCK → ESP32的GPIO 17INMP441 WS → ESP32的GPIO 18INMP441 SD → ESP32的GPIO 16RG…一个基于ESP32S3和INMP441麦克风实现音频强度控制RGB灯带律动的代码示例使用Arduino语言 硬件连接 INMP441 VCC → ESP32的3.3VINMP441 GND → ESP32的GNDINMP441 SCK → ESP32的GPIO 17INMP441 WS → ESP32的GPIO 18INMP441 SD → ESP32的GPIO 16RGB LED灯带 → ESP32的GPIO 2 代码示例 #include Arduino.h #include driver/i2s.h #include Adafruit_NeoPixel.h // RGB灯带库// 定义I2S引脚 #define I2S_WS 18 #define I2S_SD 16 #define I2S_SCK 17 #define I2S_LED_BCK I2S_SCK #define I2S_LED_WS I2S_WS #define I2S_LED_SD I2S_SD #define I2S_PORT I2S_NUM_0 // 灯带定义 #define LED_PIN 2 // 灯带连接的GPIO引脚 #define LED_COUNT 30 // 灯带LED数量Adafruit_NeoPixel pixels(LED_COUNT, LED_PIN, NEO_RGB NEO_KHZ800); // 初始化灯带// I2S配置 const i2s_port_t i2s_port I2S_PORT; // 使用I2S端口0 #define I2S_SAMPLE_RATE (48000) // 采样率 #define I2S_DMA_BUF_LEN (100) // DMA缓冲区长度 #define I2S_DMA_BUF_CNT (16) // DMA缓冲区计数// 变量声明 int16_t audioBuffer[100]; // 音频缓冲区 uint32_t audioStrength 0; // 音频强度// 初始化I2S void initI2S() {i2s_config_t i2s_config {.mode (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX),.sample_rate I2S_SAMPLE_RATE,.bits_per_sample I2S_BITS_PER_SAMPLE_16BIT,.channel_format I2S_CHANNEL_FMT_ONLY_LEFT,.communication_format i2s_comm_format_t(I2S_COMM_FORMAT_I2S_MSB),.intr_alloc_flags ESP_INTR_FLAG_LEVEL1,.dma_buf_count I2S_DMA_BUF_CNT,.dma_buf_len I2S_DMA_BUF_LEN,.use_apll false,.tx_desc_auto_clear false,.fixed_mclk 0};i2s_pin_config_t pin_config {.bck_io_num I2S_LED_BCK,.ws_io_num I2S_LED_WS,.data_out_num I2S_PIN_NO_CHANGE,.data_in_num I2S_LED_SD};i2s_driver_install(i2s_port, i2s_config, 0, NULL);i2s_set_pin(i2s_port, pin_config);i2s_start(i2s_port); }// 获取音频强度 void getAudioStrength() {size_t bytes_read;i2s_read(i2s_port, (void*)audioBuffer, 50 * sizeof(int16_t), bytes_read, portMAX_DELAY);// 计算音频强度audioStrength 0;for (size_t i 0; i 50; i) {audioStrength abs(audioBuffer[i]);}audioStrength / 50; // 取平均值 }// 控制灯带根据音频强度律动 void controlPixels() {static uint32_t lastUpdate 0;uint32_t currentMillis millis();// 每100毫秒更新一次if (currentMillis - lastUpdate 1) {lastUpdate currentMillis;getAudioStrength(); // 获取音频强度// 根据音频强度点亮灯带for (int i 0; i LED_COUNT; i) {if (i (audioStrength / 20)) { // 根据音频强度调整点亮范围//pixels.setPixelColor(i, pixels.Color(255, 0, 0)); // 红色// 设置所有LED为彩虹色uint8_t r, g, b;// 计算当前LED在颜色轮盘中的位置int wheelPos (i * 256 / pixels.numPixels()); // 获得0-255的值Wheel(wheelPos, r, g, b); // 转换为RGB值pixels.setPixelColor(i, pixels.Color(r, g, b)); // 设置颜色} else {pixels.setPixelColor(i, pixels.Color(0, 0, 0)); // 关闭}}pixels.show(); // 更新灯带} }// Wheel函数根据颜色轮盘的位置返回对应的颜色 void Wheel(byte pos, byte r, byte g, byte b) {if (pos 85) {r 255 - pos * 3;g pos * 3;b 0;} else if (pos 170) {pos - 85;r 0;g 255 - pos * 3;b pos * 3;} else {pos - 170;r pos * 3;g 0;b 255 - pos * 3;} }void setup() {Serial.begin(115200);pixels.begin(); // 初始化灯带initI2S(); // 初始化I2S }void loop() {controlPixels(); // 控制灯带律动 }代码说明 I2S初始化 配置I2S以读取麦克风音频数据。采样率为48000Hz16位深度单声道。 音频强度计算 使用麦克风采集的音频数据计算平均强度。通过绝对值平均法计算音频强度。 灯带控制 根据音频强度动态调整点亮的LED数量。音频强度越高点亮的LED越多。 可调参数 LED_COUNT灯带的LED数量根据实际硬件调整。LED_PIN灯带连接的GPIO引脚。音频强度映射公式audioStrength / 50可以根据实际情况调整以达到最佳效果。 注意事项 确保RGB灯带连接到ESP32的正确GPIO引脚并供电充足。调试时可通过Serial.println(audioStrength)打印音频强度值观察效果并调整参数。可以进一步优化音频强度计算和灯带控制实现更复杂的律动效果。 实验结果 视频效果
http://www.dnsts.com.cn/news/156547.html

相关文章:

  • 响应式网站建设多少钱wordpress识别pc手机版
  • 为什么企业网站不是开源系统英文网站seo推广
  • 青岛网站建设收费哪个平台好软件工程专业考研科目
  • 酒泉哪家公司可以做网站天元建设集团有限公司重要事件
  • 人才网网站建设方案网站seo诊断工具
  • 网站管理员作用tomcat做网站并发
  • 深圳建网站哪个人网页的代码
  • 闸北网站推广公司免费移动网站模板
  • 建设一个网站需要哪些材料建立网站的方案
  • 唐山做网站价格WordPress如何导入md文件
  • 网站为什么被k电商网站建设方向
  • 长沙网站建设推广昌平建设网站
  • 网站服务器类型查询360云盘做服务器建设网站
  • 京东商城 网站建设注册公司是在哪个网站
  • 建设银行开通网银网站合肥瑶海区最新房价
  • 番禺建设银行网站首页wordpress平铺图片
  • 河南app手机网站制作网站改版需要多久
  • 公司网站想维护服务器注册公司最好用老年人
  • 做网站PAAS系统建站哪家好论坛
  • 电商网站开发报告wordpress说说分类
  • 建设银行mylove网站开发项目外包
  • 电子公章印章在线制作网站打开一个网站在建设中
  • 如何建设局域网网站做网站的成本有多少钱
  • 小视频哪个网站比较好wordpress 10万篇文章
  • 微网站怎么免费做我的南京网站
  • 江苏网站建设联系方式做网站和开发app有什么不同
  • 一条龙做网站网站建设的经济效益
  • 代做毕业设计网站多少钱水母智能在线设计平台
  • 网站二次开发什么叫做网络营销
  • 深圳做夜场做网站广州从化发布