目前,我正试图让两个my 3008通过SPI与我的raspberry pi和Python脚本进行通信。电位器应向MCP3008输入通道发送一定的模拟值。
这是我在煎熬中的设置:
下面是原理图概述:
SPI布线基于标准的daisychain原理图,如下所示:
我使用的Python代码是:
import spidev
import time
spi = spidev.SpiDev()
spi.open(0,0)
spi.max_speed_hz = 1000000
def read_spi(channel):
spidata = spi.xfer2([0,(8+channel)<<4,0])
return ((spidata[1] & 3) << 8) + spidata[2]
try:
while True:
channeldata = read_spi(0)
print (channeldata)
time.sleep(.1)
except KeyboardInterrupt:
spi.close()我得到了数值,但它们在0到1023之间波动很大。
当然,我尝试过一个没有守护链的MCP3008,它工作得很好,所以我的猜测是,它与daisychain不正确,或者与MCP3008的寻址有关。
你们能帮帮我吗?非常感谢!!
干杯,
德瓦图
发布于 2022-11-13 17:50:58
这可能是一个迟来的反应,但根据数据表,这个芯片根本不可能是雏菊链。
我也在寻找一个模数转换器,可以是雏菊链。
https://stackoverflow.com/questions/52067470
复制相似问题