跳到主要内容

搭配 树莓派 使用

提供C语言与python例程

开启SPI接口​

  • 打开树莓派终端,输入以下指令进入配置界面:

    sudo raspi-config
    选择Interfacing Options -> SPI -> Yes 开启SPI接口

RPI open spi

  • 重启树莓派:

    sudo reboot
  • 检查 /boot/config.txt,可以看到 'dtparam=spi=on' 已被写入

RPI open spi 1

  • 为了确保 SPI 没有被占用,建议其他的驱动覆盖暂时先关闭。可以使用 ls /dev/spi* 来检查 SPI 占用情况,终端输出 /dev/spidev0.0 和 /dev/spidev0.1 表示 SPI 情况正常

RPI open spi 2

开启I2C接口​

  • 打开树莓派终端,输入以下指令进入配置界面

    sudo raspi-config
    选择 Interfacing Options -> I2C ->yes 启动 i2C 内核驱动

RPI open i2c

然后重启树莓派:

sudo reboot

安装库​

** 如果使用bookworm系统,只能使用lgpio库,bcm2835跟wiringPi无法安装与使用,python库可以不安装,直接运行程序即可**

BCM2835​

#打开树莓派终端,并运行以下指令
sudo wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz
sudo tar zxvf bcm2835-1.71.tar.gz
cd bcm2835-1.71/
sudo ./configure && sudo make && sudo make check && sudo make install
# 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/

wiringPi​

#打开树莓派终端,并运行以下指令
cd
sudo apt-get install wiringpi
#对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级:
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
gpio -v

#Bullseye分支系统使用如下命令:
sudo git clone https://github.com/WiringPi/WiringPi
cd WiringPi
sudo ./build
gpio -v

# 运行gpio -v会出现相应版本,如果没有出现说明安装出错

lgpio​

sudo su
wget https://github.com/joan2937/lg/archive/master.zip
unzip master.zip
cd lg-master
sudo make install
# 更多的可以参考官网:https://github.com/gpiozero/lg

python​

sudo apt-get update
sudo apt-get install python3-pip
sudo apt-get install python3-smbus
sudo pip3 install spidev

下载例程​

在树莓派终端运行:

sudo apt-get install p7zip-full
wget http://www.waveshare.net/w/upload/5/53/1.3inch-OLED-HAT-Code.7z
7zr x 1.3inch-OLED-HAT-Code.7z -r -o.
sudo chmod 777 -R 1.3inch-OLED-HAT-Code
cd 1.3inch-OLED-HAT-Code/RaspberryPi/

运行测试程序​

  • C语言

    cd C
    make clean
    make
    sudo ./main
  • python

    #python2
    cd python2
    sudo python main.py
    sudo python key_demo.py
    #python3
    cd python3
    sudo python3 main.py
    sudo python3 key_demo.py
  • 对于树莓派4B及raspbian_lite-2019-06-20系统之后需要设置如下,按键才能正常输入

    sudo nano /boot/config.txt
    #添加如下:
    gpio=6,19,5,26,13,21,20,16=pu

I2C控制​

  • 默认使用的4线SPI,如果硬件上修改成I2C的,需要修改程序

C语言​

打开C\obj\DEV_Config.h,把如下:

#define USE_SPI 1
#define USE_IIC 0

改成

#define USE_SPI 0
#define USE_IIC 1

然后重新执行:

make clean
make
sudo ./main

python​

打开python2/config.py,把如下:

Device_SPI = 1
Device_I2C = 0

改成

Device_SPI = 0
Device_I2C = 1

然后重新执行:

sudo python main.py

python3同理