测试 CS4344 立体声DA转换器

Posted 卓晴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了测试 CS4344 立体声DA转换器相关的知识,希望对你有一定的参考价值。

简 介: 本文测试了利用SPI驱动CS4344的实验, 但最终没有能够观察到正确的结果。 具体原因不明。

关键词 CS4344SPI

构建测试电路 目 录
Contents
背景 电路图 总 结 测试程序

 

§01 建测试电路


一、背景

  这是在准备MicroPython内核笔记中实验过程中, 看到所使用的硬件平台上具有一颗 CS4344, 这是一个双通道立体声DA转换器, 之前没有使用过,今天借助这个平台进行测试一下。

  

二、电路图

  这是电路板上CS4344电路图, 它通过E3,4,5以及D3与单片机相连。 输入输出E6,主时钟为E5, 左右通道选择使用E4, 时钟模式切换使用D3。 下面通过 MM32F3277上的MicroPython,通过SPI接口测试CS4344芯片。

  
  由于当前MicroPython只支持三路SPI接口, 他们的外部管脚并不是E5,E6, 所以需要通过外部连线将SPI口与CS4344管脚相连。 如果使用SPI0, 则将PA5连接E5,】将PA7连接E6。 这是连接后的电路板。

  

  后来使用一拖二的跳线,直接将SPI的CLK引导SCLK/MCLK上。 经过实际测试,发现最终CS4344仍然没有任何信号输出。 这是数据信号 与输出的模拟信号。 没有产生任何响应。

  

 

  结 ※


  文测试了利用SPI驱动CS4344的实验, 但最终没有能够观察到正确的结果。 具体原因不明。
  

一、测试程序

from machine                import Pin,SPI
import time
lrck    = Pin('PE4', Pin.OUT_PUSHPULL, value=0)
spi0    = SPI(0,baudrate=800000, polarity=0, phase=0)
led0    = Pin('PA1', Pin.OUT_PUSHPULL, value=1)
print(spi0)
def outdata(left,right):
    lrck(0)
    spi0.write(left.to_bytes(4,1))
    lrck(1)
    spi0.write(right.to_bytes(4,1))
    lrck(0)
print('Test CS4344 DA convert.')
count = 0
while True:
    count += 1
    if count % 1:
        outdata(0xaaaa, 0x5555)
    else: outdata(0x5555, 0xaaaa)
    time.sleep_ms(1)


以上是关于测试 CS4344 立体声DA转换器的主要内容,如果未能解决你的问题,请参考以下文章

mp3格式转换后没有了立体声

将 16 位立体声转换为 16 位单声道声音

我是不是需要将立体声音频转换为单声道以进行 FFT?

mp3单声道怎么转立体声

Python将立体声.flac转换为单声道

将 .caf 文件从立体声转换为单声道