我已将 DAC80508评估板(DAC80508EVM)与 Raspberry PI 上提到的简单 python 程序结合使用、它可以很好地获取 DAC 输出。 然后、我使用了相同的 DAC IC (DAC80508MRTER)、 并准备了一个具有与评估板类似电路的板、并尝试使用相同的程序来获取输出、并且我始终在所有输出上获得0V。 我需要您的帮助来纠正此问题。
从 gpiozero 导入 LED
导入 binascii
导入 spidev
从时间导入休眠模式开始
dac1 = LED (21)
dac1.on()
SPI = spidev.SpiDev()#create SPI 对象
SPI.open (0、1)#open SPI 端口0、器件(CS) 1.
SPI.max_speed_Hz = 5000
SPI.MODE = 1
dac1.on()
睡眠(0.1)
dac1.off()
VOLTGE_WRITE = SPI.writebytes ([0x02、0xFF、0x00])
睡眠(0.1)
dac1.on()
睡眠(0.1)
dac1.off()
POWER_UP = SPI.writebytes ([0x03、0x00、0x00])
睡眠(0.1)
dac1.on()
睡眠(0.1)
dac1.off();
VOLTGE_WRITE = SPI.writebytes ([0x04、0x00、0xFF ])
dac1.on()
hb1 =[]
LB1 =[]
对于 I IN 范围(8):
X = 6
while (x > 5):
x =输入("输入电压以设置 DAC 1:通道"+ str (i)+")
如果 x>5:
打印("输入小于5V 的电压")
y = int (x/5.0*(2**16-1))
hb1.append ((y & 0xFF00)>>8)
Lb1.append (y 和0x00FF)
J = 8
当 j < 16时:
dac1.on()
睡眠(0.1)
dac1.off()
h = hb1[j-8]
L = LB1[j-8]
VOLTGE_WRITE = SPI.writebytes ([j、h、l])
dac1.on()
J = j+1
睡眠(1)
尝试:
当为真时:
通过
键盘中断除外:
打印("已关闭")
SPI.Close()