站内搜索
发作品签到
专业版

音乐频谱

工程标签

709
0
0
1

简介

ESP32C3,ICS43434音乐频谱

简介:ESP32C3,ICS43434音乐频谱
智能音频电子创新设计征集令

开源协议

GPL 3.0

创建时间:2025-05-18 12:02:03更新时间:2025-05-26 11:22:48

描述

🧠 主控模块(ESP32-C3)

芯片:ESP32-C3-WROOM-02

连接:

  1. 通过 SPI 与 TFT 屏和 XPT2046 触控 IC 通信。
  2. 通过 I2S 协议与 MEMS 麦克风通信。

🎤 音频模块(拾音)

  • 拾音器:ICS43434(MEMS I2S 麦克风)
    1. 数字输出,无需 ADC。

    2. 接口:I2S_WS、I2S_SCK、I2S_SD。

  • 电源:
    1. 使用 LDO 稳压器(ME6211C33M5G-N)从 5V 转 3.3V。


📺 显示模块(频谱显示)

  • 屏幕:2.4 寸 240x320 SPI 接口 TFT 屏(ST7789)
    1. 使用 SPI 总线:T_CLK、T_MOSI、T_CS 等。

  • 触摸控制:XPT2046(本屏幕无触控功能故空置)
    1. 通过 SPI 接口与主控通信,支持电阻式触摸。

    2. 电压:3.3V(TVD)

    3. 接口包括 X+/X-/Y+/Y- 与屏幕触摸层连接。


🔘 按键模块

  • 两个按键:分别连接 EN 和 GPIO9,用于烧录与按键触发服用。

  • 配套上拉电阻(R12、R17)和去抖电容(C13)确保按键响应稳定。

  • 可用于功能切换、音量调节、模式切换等。


🔌 TYPE-C 接口模块

  • USB Type-C 接口(U14)
    1. 通过 D+/D- 与 ESP32C3的 USB PHY连接,实现下载与供电。

    2. 使用两个 5.1kΩ 电阻作为 CC 电阻识别。


🔋 电源模块

  • LDO(ME6211C33M5G-N)
  1. 将 USB 提供的 5V 电压转为稳定的 3.3V,供整个系统使用。
  • 电源标识 :
    1. 电源标识 PWR 接 4.7kΩ 电阻和 LED,方便判断通电状态。


项目特性小结

模块 功能说明
ESP32-C3 主控 + I2S 解码
ICS43434 MEMS 麦克风,I2S 数据输入
TFT 屏幕 实时显示频谱
XPT2046 触摸控制
按键输入 控制模式或其他功能
USB-C 接口 下载程序 + 电源输入
电源管理 LDO 稳压,供电稳定
 

项目难点:

使用IDF内置I2S驱动:

    i2s_config_t _i2s_config = {
        .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX),
        .sample_rate = 0,                             // set in begin()
        .bits_per_sample = I2S_BITS_PER_SAMPLE_32BIT, // TODO: let user decide what sample type to use (class type template)
        .channel_format = I2S_CHANNEL_FMT_ONLY_RIGHT,
        .communication_format = I2S_COMM_FORMAT_I2S,
        .intr_alloc_flags = ESP_INTR_FLAG_LEVEL1,
        .dma_buf_count = 4,
        .dma_buf_len = 0, // set in begin()
        .use_apll = false,
        .tx_desc_auto_clear = false,
        .fixed_mclk = 0};

    i2s_pin_config_t _i2s_mic_pins = {
        .bck_io_num = GPIO_BCK,
        .ws_io_num = GPIO_WS, 
        .data_out_num = I2S_PIN_NO_CHANGE,
        .data_in_num = GPIO_DI
    };

FFT与SPI传输资源消耗大

// 使用 PSRAM
#if defined(BOARD_HAS_PSRAM)
static lv_color_t *buf1 = (lv_color_t*)ps_malloc(240 * 20 * sizeof(lv_color_t));
static lv_color_t *buf2 = (lv_color_t*)ps_malloc(240 * 20 * sizeof(lv_color_t));
#endif
// 减少LVGL颜色深度
#define LV_COLOR_DEPTH 16 // 改为16位色

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
VID_20250523_190313.mp4
5
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航