测试 CS4344 立体声DA转换器
Posted 卓晴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了测试 CS4344 立体声DA转换器相关的知识,希望对你有一定的参考价值。
简 介: 本文测试了利用SPI驱动CS4344的实验, 但最终没有能够观察到正确的结果。 具体原因不明。
关键词
: CS4344;SPI
§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转换器的主要内容,如果未能解决你的问题,请参考以下文章