PCM5122
pcm5122 平台允许你的 ESPHome 设备使用 PCM5122 高性能立体声音频 DAC。
这使得可以通过微控制器从各种来源播放音频,通过 Speaker 或
Media Player 控制。
配置中需要 I²C 总线,因为它用于与 PCM5122 通信。
# 示例配置条目audio_dac: - platform: pcm5122 id: pcm5122_dac- address (可选, int):设备的 I²C 地址。默认为
0x4D。 - bits_per_sample (可选, enum):音频采样的位深度。可选值为
16bit、24bit或32bit。 默认为16bit。 - analog_gain (可选, enum):PCM5122 应用的模拟输出增益。可选值为
0db或-6db。 默认为0db。 - channel_mix (可选, enum):音频通道数据如何路由到左右输出。可选值为:
stereo(默认):左数据到左输出,右数据到右输出。left:左通道数据到两个输出。right:右通道数据到两个输出。swapped:左右输出互换。
- volume_min_db (可选, dB):映射到最小音量(完全关闭)的音量级别。
必须小于
volume_max_db。范围:-103.0dB到24.0dB。默认为-52.5dB。 - volume_max_db (可选, dB):映射到最大音量(完全开启)的音量级别。
必须大于
volume_min_db。范围:-103.0dB到24.0dB。默认为0dB。 - enable_pin (可选, Pin):连接到 PCM5122 的 XSMT
(软静音)引脚的 GPIO 引脚。在
setup()期间保持低电平,初始化成功后驱动为高电平。如果 XSMT 已硬接线为高电平,则省略此项。 - i2c_id (可选):PCM5122 所连接的 I²C 总线 的 ID。
- 包含 Audio DAC 的所有其他选项。
此平台支持所有 Audio DAC 自动化。
Switch
Section titled “Switch”pcm5122 switch 平台提供了一个开关,用于将 PCM5122 置于待机或关机模式。
switch: - platform: pcm5122 pcm5122: pcm5122_dac name: "PCM5122 Power Down"Switch 配置变量
Section titled “Switch 配置变量”- pcm5122 (必填, ID):PCM5122 组件的 ID。
- power_mode (可选, enum):开关打开时要进入的电源状态。可选值为
standby或powerdown。默认为powerdown。 - 包含 Switch 的所有其他选项。
PCM5122 暴露了 GPIO 引脚 3 到 6,可作为通用输入或输出引脚 在 ESPHome 中使用。这些引脚可以在任何接受 GPIO 引脚的地方使用。
NOTE
PCM5122 上的 GPIO6 不能用作输入引脚。
# 示例:使用 PCM5122 GPIO4 作为输出(例如启用放大器)output: - platform: gpio id: pcm5122_amp_enable pin: pcm5122: pcm5122_dac number: 4 mode: output: true引脚配置变量
Section titled “引脚配置变量”- pcm5122 (必填, ID):PCM5122 组件的 ID。
- number (必填, int):GPIO 引脚号。必须在
3到6之间。 - mode (必填):配置引脚方向。
input和output中必须恰好有一个设置为true。- input (可选, bool):设置为输入引脚。默认为
false。GPIO6 不可用。 - output (可选, bool):设置为输出引脚。默认为
false。
- input (可选, bool):设置为输入引脚。默认为
- inverted (可选, bool):反转引脚的逻辑电平。默认为
false。
i2c: sda: GPIOXX scl: GPIOXX
i2s_audio: - id: i2s_output i2s_lrclk_pin: GPIOXX i2s_bclk_pin: GPIOXX
audio_dac: - platform: pcm5122 id: pcm5122_dac address: 0x4D bits_per_sample: 16bit analog_gain: -6db channel_mix: stereo volume_min_db: -60dB volume_max_db: -3dB enable_pin: GPIOXX
speaker: - platform: i2s_audio i2s_audio_id: i2s_output id: speaker_id i2s_dout_pin: GPIOXX dac_type: external audio_dac: pcm5122_dac
# 使用 PCM5122 GPIO4 控制外部放大器使能引脚switch: - platform: gpio name: "Amplifier Enable" pin: pcm5122: pcm5122_dac number: 4 mode: output: true restore_mode: RESTORE_DEFAULT_ON - platform: pcm5122 pcm5122: pcm5122_dac name: "PCM5122 Power Down"
# 使用 PCM5122 GPIO5 作为二进制传感器输入binary_sensor: - platform: gpio id: pcm5122_gpio_input pin: pcm5122: pcm5122_dac number: 5 mode: input: true