“模板:E-Paper-connecting-settings”的版本间的差异
(创建页面,内容为“我们提供了基于4个硬件平台的示例程序,分别是Arduino UNO, Jetson Nano, Raspberry Pi 以及STM32。您可以根据自己的需求查看。(本…”) |
小 (文本替换 - 替换“\[http:[^ ]*\/shop\/[^ ]*\.htm (.*)\]”为“\1”) |
||
第29行: | 第29行: | ||
请根据墨水屏型号选择对应的程序打开。比如1.54inch e-Paper Module. 打开epd1in54文件夹,并运行epd1in54.ino文件。<br /> | 请根据墨水屏型号选择对应的程序打开。比如1.54inch e-Paper Module. 打开epd1in54文件夹,并运行epd1in54.ino文件。<br /> | ||
打开程序,选择开发板型号和对应COM口,然后点击编译并下载即可。<br /> | 打开程序,选择开发板型号和对应COM口,然后点击编译并下载即可。<br /> | ||
− | <font color="#FF0000">需要注意的是:由于Arduino UNO的RAM小的可怜,无法分配过大的内存用于处理画图等功能,所以部分大尺寸的屏幕例程只演示刷新图片,这个图片是存储在flash中,如需要使用Arduino UNO控制请使用[ | + | <font color="#FF0000">需要注意的是:由于Arduino UNO的RAM小的可怜,无法分配过大的内存用于处理画图等功能,所以部分大尺寸的屏幕例程只演示刷新图片,这个图片是存储在flash中,如需要使用Arduino UNO控制请使用[[e-paper Shiled]]控制</font> |
='''Raspberry Pi'''= | ='''Raspberry Pi'''= |
2019年11月19日 (二) 15:46的版本
我们提供了基于4个硬件平台的示例程序,分别是Arduino UNO, Jetson Nano, Raspberry Pi 以及STM32。您可以根据自己的需求查看。(本模块为通用模板,请确认好您使用的墨水屏型号,使用正确的程序)
目录
Arduino UNO
由于我们提供的示例程序是基于Arduino UNO,所以对应给出的硬件连接也是基于Arduino UNO. 如果你要连接屏幕到别的Arduino开发板,请先确认您的开发板接口是否兼容Arduino UNO. 如果不兼容UNO,需要修改硬件连接方式,以实际开发板引脚为准。
硬件连接
e-Paper | Arduino |
Vcc | 5V |
GND | GND |
DIN | D11 |
CLK | D13 |
CS | D10 |
DC | D9 |
RST | D8 |
BUSY | D7 |
运行程序
在产品百科界面下载程序,然后解压。Arduino程序位于 ~/Arduino UNO/…
请根据墨水屏型号选择对应的程序打开。比如1.54inch e-Paper Module. 打开epd1in54文件夹,并运行epd1in54.ino文件。
打开程序,选择开发板型号和对应COM口,然后点击编译并下载即可。
需要注意的是:由于Arduino UNO的RAM小的可怜,无法分配过大的内存用于处理画图等功能,所以部分大尺寸的屏幕例程只演示刷新图片,这个图片是存储在flash中,如需要使用Arduino UNO控制请使用e-paper Shiled控制
Raspberry Pi
硬件连接
连接树莓派的时候,如果是驱动板带有40pin排座的,可以直接插到树莓派的40PIN排针上去,注意对好引脚。如果是选择用8PIN排线连接的话,请参考下方的引脚对应表格
对于1.02inch e-paper Module使用的是排针,需要对照以下表格连线
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 |
RST | 17 | 11 |
BUSY | 24 | 18 |
开启SPI接口
- 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config 选择Interfacing Options -> SPI -> Yes 开启SPI接口
sudo reboot
请确保SPI没有被其他的设备占用,你可以在/boot/config.txt中间检查
安装库
- 安装BCM2835, 打开树莓派终端,并运行一下指令
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.60.tar.gz tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/ sudo ./configure sudo make sudo make check sudo make install # 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
- 安装wiringPi
sudo apt-get install wiringpi #对于树莓派4B可能需要进行升级: cd /tmp 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.70版本,如果没有出现说明安装出错
- 安装Python函数库
#python2 sudo apt-get update sudo apt-get install python-pip sudo apt-get install python-pil sudo apt-get install python-numpy sudo pip install RPi.GPIO sudo pip install spidev #python3 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 RPi.GPIO sudo pip3 install spidev
下载测试程序
打开树莓派终端,执行:
sudo git clone https://github.com/waveshare/e-Paper cd e-Paper/RaspberryPi\&JetsonNano/
运行测试程序
- C语言
找到mian.c文件,打开并将对应自己的墨水屏型号的注释去掉,然后编译并运行程序
cd c make clean make sudo ./epd
- python
根据墨水屏型号运行对应的例程, xxx对应墨水屏型号,比如1.54: epd_1in54.py
cd python/examples # python2 sudo python epdxxx.py # python3 sudo python3 epdxxx.py
Jetson nano Developer Kit
Jetson nano程序使用的是模拟SPI,所以刷新速度会相对较慢一些
硬件连接
Jetson Nano的40PIN引脚是兼容树莓派的40PIN引脚的,并且提供了一个Jetson.GPIO库跟树莓派的RPI.GPIO 库的API是一致的,所以这里连接的序号跟树莓派的是一样的
e-Paper | Jetson Nano Developer Kit | |
BCM2835编码 | Board物理引脚序号 | |
VCC | 3.3V | 3.3V |
GND | GND | GND |
DIN | 10(SPI0_MOSI) | 19 |
CLK | 11(SPI0_SCK | 23 |
CS | 8(SPI0_CS0) | 24 |
DC | 25 | 22 |
RST | 17 | 11 |
BUSY | 24 | 18 |
软件设置
安装函数库
- 打开终端界面,输入以下指令安装相应的函数库
sudo apt-get update sudo apt-get install python3-pip sudo pip3 install Jetson.GPIO sudo groupadd -f -r gpio sudo usermod -a -G gpio your_user_name sudo cp /opt/nvidia/jetson-gpio/etc/99-gpio.rules /etc/udev/rules.d/ sudo udevadm control --reload-rules && sudo udevadm trigger
【注意】your_user_name 是你使用的用户名
- 安装I2C
sudo apt-get install python-smbus
- 安装图像处理库:
sudo apt-get install python3-pil sudo apt-get install python3-numpy
下载测试程序
打开linux终端,执行:
sudo git clone https://github.com/waveshare/e-Paper cd e-Paper/RaspberryPi\&JetsonNano/
运行测试程序
- C语言
找到mian.c文件,打开并将对应自己的墨水屏型号的注释去掉,然后编译并运行程序
cd c make clear make sudo ./epd
- python
根据墨水屏型号运行对应的例程, xxx对应墨水屏型号,比如1.54: epd_1in54.py
cd python/examples # python2 sudo python epdxxx.py # python3 sudo python3 epdxxx.py
STM32
硬件连接
我们提供的例程是基于STM32F103ZET6的,提供的连接方式也是对应的STM32F103ZET6的引脚,如果有需要移植程序,请按实际引脚连接
e-Paper | STM32 |
Vcc | 3.3V |
GND | GND |
DIN | PA7 |
CLK | PA5 |
CS | PA4 |
DC | PA2 |
RST | PA1 |
BUSY | PA3 |
运行程序
下载程序,找到STM32程序文件目录并打开STM32工程。注意使用前先确保电脑已经安装好keil5软件。
确认好开发板型号,并连接好下载器。点击编译,然后点击下载将程序下载到开发板即可