通过spidev访问linux spi的python绑定

spidev的Python项目详细描述


python spidev
==


此项目包含一个python模块,用于通过spidev linux内核驱动程序从用户空间与spi设备进行接口。


除非另有明确说明,否则所有代码都是mit许可的。

usage
----

``python
import spidev
spi=spidev.spidev()
spi.open(总线,设备)
to_send=[0x01,0x02,0x03]
spi.xfer(to_send)
```






``python
`` python
import spidev
spi=spidev.spidev()
spi.spi.spi.spi.spi.open(总线、设备)




spi设置(例如)
spi spi.spi.max_-speed_-hz=5000
spi
spi spi.mode=0b01

```

*`每字位数`
*`cshigh`
*`loop`-集启用环回模式的“spi_loop”标志
*`no_cs`-将“spi_no_cs”标志设置为禁用芯片选择(尽管驱动程序可能仍然拥有cs管脚)
*`lsbfirst`
*`max_speed_hz`
*`mode`-spi模式作为时钟极性和相位的两位模式[cpol cpha],min:0b00=0,max:0b11=3
*`threewire`-si/so信号共享


方法
----


open(总线、设备)


连接到指定的spi设备,打开`/dev/spidev<;总线>;<;设备>;`

read bytes(n)

read n bytes from spi device.


将值列表写入spi device.


writebytes 2(值列表)

类似于“writebytes”,但接受任意大列表。
如果列表大小超过缓冲区大小(从中读取`/sys/module/spidev/parameters/bufsiz`),
数据将被分割成更小的块,并以多个操作发送。

` writebytes 2 `理解[缓冲区协议](https://docs.python.org/3/c-api/buffer.html)
因此它可以接受例如numpy字节数组,而无需首先使用'to list()'对它们进行转换。
在需要将帧传输到spi连接的显示器(例如)时,这提供了更好的性能。

xfer(值列表[,speed_hz、delay_usec、bits_per_word)执行spi事务。应释放芯片选择并在块之间重新激活。
delay指定块之间usec中的延迟。

xfer2(值列表[,速度赫兹,延迟usec,每字位数])

芯片选择应该在两个块之间保持活动状态。

xfer3(值列表[,speed_Hz,delay_Usec,bits_Per_Word3])

操作。

close()


断开与SPI设备的连接。

--


>3.4
===


*将许可证更改为MIT

<3.0.1
==

*固定的readme.md和changelog.md格式,希望

3.0
==


*Dougie Lawson推荐的memset补丁
*内核3.15+的补丁来自https://github.com/chrillomat/py spidev
*python 3/2兼容性的补丁。
*添加了子类支持-https://github.com/doceme/py spidev/issues/10

<2.0
==


http://elk.informatik.fh augsburg.de/da/da-49/trees/pyap7k/lang/py spi
并对其进行了修改。


pre 2.0
===


标签:

  • to
  • spi
  • 列表
  • linux
  • open
  • max
  • speed
  • 总线
  • hz
  • spidev
  • 欢迎加入QQ群-->: 979659372 Python中文网_新手群

    推荐PyPI第三方库


    热门话题
    java GridBagLayout不填充区域   java Memozied Fibonacci未运行与常规Fibonacci解决方案   Java Web启动未启动问题   Java中异常和if-then的区别   java从命令提示符运行批处理文件获取错误   socket在Java中验证SSL证书的公共名称   如何在JAVA中检查字符串数组中的相等字   用java语言将音频文件转换成文本文件的语音识别   java为什么foo(1,2,3)没有传递给varargs方法foo(对象…)作为整数[]   java通过蓝牙将奇怪的数据从Arduino传输到Android   java ContainerRequestFilter获取空entitystream   java如何从安卓 studio中删除不兼容类型错误   基本Java错误   在Spring引导中使用REST API时发生java错误   javascript通过从SQL查询派生的URL打开页面