视频教程详见B站UP: 参考答案开心否
下面将用到的文件
链接:百度云 提取码:zarb
bem2835库安装:
tar -zxvf bcm2835-1.63.tar.gz
cd bcm2835-1.63/
./configure
发现报错
configure: error: no acceptable C compiler found in $PATH
下面是解决的方法:(安装GCC软件套件)
sudo apt-get install gcc -y
安装编译文件的工具make
sudo apt install make
继续
sudo ./configure
进行编译
sudo make
sudo make check
安装编译好的驱动
sudo make install
安装wiringPi库
文件:wiringPi-8d188fa.tar.gz
将库拷贝到树莓派里面系统里面
解压
tar –zxvf wiringPi-8d188fa.tar.gz
cd wiringPi-8d188fa/
安装
sudo ./build
检查gpio是否安装成功
gpio -v
安装i2c-tools工具
sudo apt-get install i2c-tools -y
检查oled是否插到树莓派上
sudo i2cdetect -y 1
切换root用户
sudo su
回到root目录
cd ~
创建oled文件,用于存放控制oled显示的py文件
mkdir oled
下载显示的例子
mkdir download
cd download
git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git
将例子里面的文件复制到root用户的oled目录下
cp /root/download/Adafruit_Python_SSD1306/examples/stats.py /root/oled/
vim /root/oled/stats.py
在第一行添加:
#!/usr/bin/python
为root用户切换python的国内源,下载速度快
mkdir ~/.pip
cd ~/.pip
vim pip.conf
写入下面的内容
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
为root用户安装相应的库
apt install python-pip
pip install Adafruit_GPIO Adafruit_SSD1306 RPi.GPIO
安装依赖的库文件
pip install setuptools wheel
安装PIL库
apt-get install python-pil
后台运行控制oled显示的py文件
cd /root/oled
python stats.py &
成功点亮oled,显示了ip地址和其他信息
用来显示ip地址课相应的其他信息
切换root用户执行下面的命令行
sudo su
vim /lib/systemd/system/rc.local.service
在最下面添加:
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
system默认读取/etc/systemd/system下配置文件,需要在/etc/systemd/system目录下创建软链接:
ln -s /lib/systemd/system/rc.local.service /etc/systemd/system/
vim /etc/rc.local
写上下面的内容
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#第一个是Python的目录 第二个是py文件所在的目录和文件 第三个是后台启动
/usr/bin/python /root/oled/stats.py &
exit 0
给 rc.local 加上权限,启用服务
chmod 755 /etc/rc.local
systemctl enable rc-local
启动服务并检查状态
systemctl start rc-local.service
systemctl status rc-local.service
reboot
观察进程:
ps -aux|grep 'stats.py'
已经成功开机启动