Aline744 发表于 2024-3-5 11:53:55

今天把一段2s的音频烧录进去,并且成功播放。待会儿发代码

Aline744 发表于 2024-3-5 18:22:30

链接:ht
tps://pan
.baidu.com/
s/1pJcv_W
7c_utMyu
t9Z1neuw
提取码:1145

iffi123 发表于 2024-3-5 18:55:34

Aline744 发表于 2024-3-2 11:05
这个芯片还是不太合适,首先是贵,然后就是没有功放,我这个要驱动扬声器的

nau8822,我正在用,集成ADC/DAC/话筒放大/线路放大/耳放/功放,音频支持到24bit/192K立体声

关键还很便宜,几块钱就可以

sx1s 发表于 2025-1-2 10:11:25

Aline744 发表于 2024-3-4 18:57
这个芯片输出的是高频信号,使用0.15u电容并联10k电阻进行滤波,得到波形,看起来音质不是很好,不过能响就 ...

你好,我遇到了和图1相同的问题,数据输出很差,是否加入你所说的电容电阻进行滤波后能好转

only5784 发表于 2025-1-9 17:42:35

ai搞的:
#include "stm32f4xx.h"

// 定义正弦波表
int16_t sine_table = {0};
void generate_sine_table() {
    for(int i=0; i<441; i++) {
      sine_table = (int16_t)(32767 * sin(2 * M_PI * 1000 * i / 44100));
    }
}

// I2S初始化
void I2S_Init() {
    // 配置I2S2接口
    // 设置I2S时钟,数据格式等
}

// DMA初始化
void DMA_Init() {
    // 配置DMA通道,用于传输sine_table到I2S
}

int main(void) {
    // 系统时钟配置
    // GPIO配置
    // I2C配置(配置MAX98357A寄存器)
    generate_sine_table();
    I2S_Init();
    DMA_Init();
    // 启动DMA传输
    while(1) {
      // 主循环,可以添加其他功能
    }
}
页: 1 [2]
查看完整版本: STM32F4驱动MAX98357生成正弦波信号