一、开启树莓派spi功能
sudo raspi-config
选择 Advanced Options-> SPI -> yes 启动SPI内核驱动
运行lsmod命令,可以看到spi模块已启动
在/dev路径下面,我们可以发现两个spi设备
spi管脚如下如所有,左边方框的管脚分别为MOSI MISO SCLK,左边CE0,CE1为两个片选管脚,分别对应上图中的spidev0.0,spidev0.1两个设备。对这两个文件读写操作即可控制spi设备。
二、SPI编程
Pioneer 600扩展板配备一款0.96inch,128864分辨率的oled显示屏,通过SPI控制,先上显示效果图。由于程序过长,在这里我就不把代码全部贴出来了,只是简单讲解一下spi的操作函数。如果各位有兴趣可以下载程序,研究一下。如果程序有什么写得不好的地方,还望各位指正。
1、bcm2835
bcm2835_spi_begin(); //启动spi接口,设置spi对应管脚为复用功能
bcm2835_spi_setBitOrder(BCM2835_SPI_BIT_ORDER_MSBFIRST); //高位先传输
bcm2835_spi_setDataMode(BCM2835_SPI_MODE0); //spi模式0
bcm2835_spi_setClockDivider(BCM2835_SPI_CLOCK_DIVIDER_128); //分频,
bc