主题: PCM5102A 中讨论的其他器件
工具/软件:
你好。 我是一名计算机工程专业的学生,正在尝试制作一个数字吉他踏板。 首先、我要尝试确保正确读取输入信号。 我使用的是 PCM1808模块、名为"CJMCU1808":
我找不到确切的原理图、但从外观来看、似乎实现了数据表中的基本典型应用电路。
STM32H743 (在开发板上)是 I2S 主器件、48kHz、256Fs。
5V 来自开发板与笔记本电脑的 USB 连接。
SPI1_RX 的配置方式相同。
当我尝试从 HSE 而不是 I2S 自己的 MCO 输出时钟时、我无法从 DOUT 获取输出。 当我将 ADC 设置为主器件时、只能使用 HSE 作为 MCK 进行输出-使用 HSE 时、将其设置为从器件不起作用。 使用 MCU I2S 中的 MCO、我在从模式下获得输出。
无论如何、这是我尝试使用 HSE 驱动 ADC 时的时钟配置:
但是、澄清一下、我确实不使用 HSE (MCO2)来馈送 ADC 时钟。 我使用的是 I2S MCK。
我通过执行以下操作获得了 STM32来生成时钟:
static void MX_I2S1_Init(void) { // ... auto-generated CubeIDE stuff ... // uint32_t dummy_data[2] = { 0x00000000, 0x00000000 }; HAL_I2S_Transmit_DMA(&hi2s1, (uint16_t*) dummy_data, 2); }
当我用吉他播放音符时、这是播放音符之前逻辑分析仪上的 ADC 输出:
这是击中字符串时的瞬态:
将 ADC 插入 DAC (PCM5102A)可确认这不是一个读取/逻辑分析仪伪影。 输出听起来非常嘈杂和失真。 读数是在我的线路过滤器关闭(所有开关电源关闭)的情况下进行的、仅使用笔记本电脑电池电源。
我还尝试了使用 ADC 作为主器件、并使用 HSE MCK、它可以正常工作、但会呈现相同的输出。
我想知道我在做什么错。