极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13359|回复: 2

python + spi 搞定, 总结一下贴上来方便各位

[复制链接]
发表于 2013-6-25 15:46:39 | 显示全部楼层 |阅读模式

Basic SPI Configuration
Enabling SPI module-loading on reboot:
sudo nano /etc/modprobe.d/rasppi-blacklist.conf
给这一行前面加上 # 号注释掉:blacklist spi-bcm2708

Load SPI module now, if it wasn't loaded on boot:
sudo modprobe spi_bcm2708
也可以重新启动 sudo reboot

To make SPI accessible to default user:
sudo chown 1000.1000 /dev/spidev0.*
我没有这么做, 而是以 root 身份运行 python

Python spidev setup
sudo apt-get update
sudo apt-get install python-dev
sudo apt-get install git
cd ~
mkdir py-spidev
cd py-spidev
wget https://raw.github.com/doceme/py-spidev/master/setup.py
wget https://raw.github.com/doceme/py-spidev/master/spidev_module.c
sudo python setup.py install
两个 wget 也可以被一行指令替代
git clone git://github.com/doceme/py-spidev

测试程序
>>> import spidev
>>> spi = spidev.SpiDev()
>>> spi.open(0,0)
>>> # send a single byte, value 0xa0, and store the response.  I have SPI looped back (mosi -> miso).
>>> resp = spi.xfer2([0xa0, 0x55])
>>> print resp
[160, 85]
说明
xfer2 keeps the CS active during the whole transfer, while xfer releases / re-activates CS between blocks.
can set speed with >>> spi.max_speed_hz = 16000000 #i.e. 16 Mbps
回复

使用道具 举报

发表于 2013-6-25 16:35:37 | 显示全部楼层
不错的贴,学习下。
回复 支持 反对

使用道具 举报

发表于 2013-6-25 18:24:17 | 显示全部楼层
感谢分享宝贵经验
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-29 15:17 , Processed in 0.038848 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表