使用mmap的BeagleBone SPI

2024-09-29 00:19:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我在使用pythonmap为SPI配置BBB时遇到问题。在

我一直在使用Adafruit,而不是自己滚动一个设备树覆盖_BBIO.SPI公司(类似的方法对Adafruit也起到了作用_BBIO.GPIO公司). 这很好,通过SPIdev,我可以发送数据。但一旦我使用mmap到SPI x0,我就得到了一个总线错误。在

我可以通过打开SPI外围设备的时钟域来解决总线错误:

ctrl = struct.unpack('<L', CM_PER[CM_PER_SPI0_CLKCTRL:CM_PER_SPI0_CLKCTRL+4])[0]
ctrl &= ~(0b11 << 16 | 0b11)
ctrl |= 2
CM_PER[CM_PER_SPI0_CLKCTRL:CM_PER_SPI0_CLKCTRL+4] = struct.pack('<L', ctrl)

为什么我不应该把这个时间打开?在

但更重要的是,SPI0[SPI帴TX0:SPI帴x0+4]=结构包('<L',data)什么也不做。在


Tags: spiadafruit错误cm公司structctrlbbb