目标:使用python 实现SPI数据输出
nanopi neo 系统如图:
首先安装软件:
With pip:$ pip install python-periphery
With easy_install:$ easy_install python-periphery
相关链接:https://github.com/vsergeev/python-periphery
进入/dev目录查看硬件信息,画红线的是系统的SPI硬件名称:
确认nanopi neo的SPI接口位置,如图:,SPI接口位置在19、21、23
好,现在上程序:
from periphery import SPI
# Open spidev0.0 with mode 3and max speed 1MHz
spi = SPI("/dev/spidev0.0",3,400000)
for i in range(1000):
data_out = [0xaa, 0xff, 0xcc, 0xdd]
spi.transfer(data_out)
print("shifted out [0x%02x, 0x%02x, 0x%02x, 0x%02x]" % tuple(data_out))
spi.close()
波形图显示的SPI数据与程序的发送的数据一致,试验成功!
注意:
程序中改变SPI 时钟频率,频率下次输出时不会马上到达最新频率,会运行一段原有频率。第二次运行程序则完全是更改后的频率。