模板: E-paper Touch for rpiuse

来自Waveshare Wiki
跳转至: 导航搜索

Raspberry Pi

硬件连接

连接树莓派的时候,可以直接插到树莓派的40PIN排针上去,注意对好引脚。如果是选择用12PIN排线连接的话,请参考下方的引脚对应表格

树莓派连接引脚对应关系
Touch e-Paper Raspberry Pi
BCM2835编码 Board物理引脚序号
VCC 3.3V 3.3V
GND GND GND
DIN MOSI 19
CLK SCLK 23
CS CE0 24
DC 25 22
ERST 17 11
BUSY 24 18
INT 27 13
SCL SCL1 5
SDA SDA1 3
TRST 22 15

以2.13inch Touch e-Paper HAT为例,直接插在树莓派上即可:
Touch ePaper HAT con.jpg

开启SPI接口

  • 打开树莓派终端,输入以下指令进入配置界面:
sudo raspi-config
选择Interfacing Options -> SPI -> Yes 开启SPI接口

RPI open spi.png

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

RPI open spi 1.jpg

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

RPI open spi 2.jpg

开启I2C接口

  • 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 
选择 Interfacing Options -> I2C ->yes 启动 i2C 内核驱动

RPI open i2c.png
然后重启树莓派:

sudo reboot

安装库

安装C语言函数库

  • 安装 lg 库
#打开树莓派终端,并运行以下指令:
wget https://github.com/joan2937/lg/archive/master.zip
unzip master.zip
cd lg-master
make
sudo make install
# 更多的可以参考源码:https://github.com/gpiozero/lg
  • 安装 gpiod 库(可选)
#打开树莓派终端,并运行以下指令:
sudo apt-get update
sudo apt install gpiod libgpiod-dev
  • 安装 BCM2835(可选)
#打开树莓派终端,并运行以下指令:
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz
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(可选)
#打开树莓派终端,并运行以下指令:
sudo apt-get install wiringpi
#对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级:
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
gpio -v
# 运行 gpio -v 会出现 2.52 版本,如果没有出现,说明安装出错。

#Bullseye 分支系统使用如下命令:
git clone https://github.com/WiringPi/WiringPi
cd WiringPi
./build
gpio -v
# 运行 gpio -v 会出现 2.60 版本,如果没有出现,说明安装出错。

安装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
  • 安装函数库(python2)
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
  • 安装gpiozero库(系统默认已安装,如果没有安装请按照以下命令进行安装)
sudo apt-get update
# python3
sudo apt install python3-gpiozero
# python2
sudo apt install python-gpiozero

下载测试程序

打开树莓派终端,执行:
方法一:从我们官网下载,推荐使用。

cd ~
wget https://www.waveshare.net/w/upload/3/3e/Touch_e-Paper_Code.zip
unzip Touch_e-Paper_Code.zip -d Touch_e-Paper_Code

如果unzip解压遇到问题可使用7z解压:
sudo apt-get install p7zip-full
7z x Touch_e-Paper_Code.zip -o./Touch_e-Paper_Code

方法二:使用github仓库,github可能更新会有延迟,推荐使用方法一。

cd ~
git clone https://github.com/waveshare/Touch_e-Paper_HAT

运行测试程序

C语言

  • 进入C语言例程目录
cd ~/Touch_e-Paper_Code/c
  • (可选)修改Makefile的14-17行切换依赖库,程序默认使用LGPIO库,兼容性最好。

如下图,切换注释即可:
Touch ePaper HAT makefile.jpg

  • 修改 main.c 文件选择相应的测试程序:将对应的函数取消注释即可
  • 重新编译,然后运行程序,编译过程可能需要几秒
在c目录下,运行以下指令
sudo make clean
sudo make -j4
sudo ./main

python

  • 进入python程序目录
cd ~/Touch_e-Paper_Code/python/examples
  • 运行对应屏幕的例程,程序支持python2/3

以2.13inch Touch e-Paper HAT为例,输入

# python2
sudo python2 TP2in13_V4_test.py
# python3
sudo python3 TP2in13_V4_test.py