无法找到如何从spidev模块执行回送测试。执行提供的spidev_test.c文件可以工作。在Python中还没有。
import spidev
import time
spi = spidev.SpiDev()
spi.loop = True
spi.open(0,0)
try:
while True:
spi.writebytes([0xAA, 0xFF])
time.sleep(0.01)
print(spi.readbytes(2))
except KeyboardInterrupt:
spi.close()发布于 2017-08-15 06:18:44
注释:提供与用xfer2编写的输出相同的输出,仅仅因为函数xfer2返回给定的值,所以实际上不是确认工作的spi
这就是xfer应该做的。
它与spidev_test.c输出不同吗?
使用不可修复的port或device,您就会失败。
注释:spi.loopback()缺失
你检查过spi.loop状态了吗?
可以随意设置spi.loop = True
相关:测试
你看起来像这样:
import spidev
import time
spi = spidev.SpiDev()
# spidev_test.c uses /dev/spidev1.1
spi.open(1,1) #use spi Port 1, device (CS) 1
while True:
try:
response = spi.xfer2([0xAA, 0xFF])
print(response)
time.sleep(1)
except KeyboardInterrupt:
spi.close()https://stackoverflow.com/questions/45664732
复制相似问题