树莓派打开两个SPI口

树莓派默认是将SPII2C功能关闭的,如果你编写SPI的程序,但是SPI模块没打开,可能会出现如下错误:
ERROR: could not insert 'spi_bcm2708': No such device
  

首先打开终端输入指令

sudo raspi-config

如下图选中,回车

树莓派打开两个SPI口_第1张图片树莓派打开两个SPI口_第2张图片树莓派打开两个SPI口_第3张图片树莓派打开两个SPI口_第4张图片

退出配置界面(没有截图,也可以关闭终端重新打开),输入指令

ls /dev/spi*    

可以查看当前打开了哪些spi口(注意:指令中开头是小写的L,不是大写的i            ls[空格]/dev/spi*       不要漏了空格)

 

树莓派打开两个SPI口_第5张图片

 

可以看到上图中我的电脑默认打开的是 SPI0

这时如果你只是用一个SPI口,那就可以去编程了,后面的主要讲解打开第二个SPI口

 

继续在终端输入

sudo nano /boot/config.txt

打开文件在最后写入

dtoverlay=spi1-3cs

(注意:要是enable_uart=1前面有#符号的,需要删除)

然后按下Ctrl键和O(英文字母O),提示是否要保存,按回车,在按下Ctrl+X,然后重新启动树莓派查询一下

ls /dev/spi*

树莓派打开两个SPI口_第6张图片

图中添加的dtoverlay=spi1-3cs 表示:使能SPI1,可打开/dev/spidev0.0, spidev0.1, spidev0.2

当把dtoverlay=spi1-3cs改为dtoverlay=spi1-2cs 表示:使能spi1,但只能打开/dev/spidev0.0, spidev0.1

spidevX.Y的解释:  X表示spi0或者SPI1, Y表示CE0,CE1,CE2

树莓派的SPI0中,模式0,1,2,3都可以使用,

SPI1中,只有模式0,2可以使用,1,3在配置时会报错

使用终端指令

ls /dev/spi*

可以查看当前打开了哪些spi口(注意:指令中开头是小写的L,不是大写的i            ls[空格]/dev/spi*       不要漏了空格)

如图:我打开了SPI0 的 0 ,1    SPI1的0,1,2

树莓派打开两个SPI口_第7张图片

 

以下是大神给的截图

树莓派打开两个SPI口_第8张图片树莓派打开两个SPI口_第9张图片

 

 

你可能感兴趣的:(树莓派)