搭配 树莓派 使用
提供C语言与python例程
开启SPI接口
-
打开树莓派终端,输入以下指令进入配置界面:
sudo raspi-config选择Interfacing Options -> SPI -> Yes 开启SPI接口

-
重启树莓派:
sudo reboot -
检查 /boot/config.txt,可以看到 'dtparam=spi=on' 已被写入
- 为了确保 SPI 没有被占用,建议其他的驱动覆盖暂时先关闭。可以使用 ls /dev/spi* 来检查 SPI 占用情况,终端输出 /dev/spidev0.0 和 /dev/spidev0.1 表示 SPI 情况正常
开启I2C接口
-
打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config选择 Interfacing Options -> I2C ->yes 启动 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-pil
sudo apt-get install python3-numpy
sudo pip3 install spidev
sudo pip3 install smbus
下载例程
-
在树莓派终端运行:
sudo apt-get install p7zip-fullwget http://www.waveshare.net/w/upload/c/c5/2.23inch-OLED-HAT-Code.7z7z x 2.23inch-OLED-HAT-Code.7zsudo chmod 777 -R 2.23inch-OLED-HAT-Codecd 2.23inch-OLED-HAT-Code/ -
树莓派例程使用(以下SPI例程为例)
-
滚动显示是将SSD1305的RAM中的所有像素点都启用了(132X64),通过滚动在屏幕(128X32)中显示出来。
-
滚动例程提供两种滚动方式,只能二选一或者都不选,设置成'1'即可。
#define VERTICAL 1#define HORIZONTAL 0
基于C的使用
#正常显示
cd Without scrolling/Raspberry\ Pi/SPI/c
make clean
make
sudo ./main
#滚动显示
cd Scroll/Raspberry\ Pi/SPI/c
make clean
make
sudo ./main
基于Python的使用
#正常显示
cd Without scrolling/Raspberry\ Pi/SPI/python
sudo python3 stats.py
sudo ./oled
#滚动显示
cd Scroll/Raspberry\ Pi/SPI/python
sudo python3 stats.py
例程使用的注意事项
WiringPi和Python例程是通过读写linux系统的设备文件操作,而BCM2835则是树莓派cpu芯片的库函数,操作的为寄存器,因此若先使用了BCM2835库,WiringPi和Python的例程则会使用失败,此时重启系统可以运行。