“LCD-Clock-A”的版本间的差异

来自Waveshare Wiki
跳转至: 导航搜索
第86行: 第86行:
  
 
<div class="tabbertab" title="树莓派Zero使用教程">
 
<div class="tabbertab" title="树莓派Zero使用教程">
在添加
+
==安装库==
 +
{{RPI_C_lib}}
 +
===Python===
 +
<pre>
 +
#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
 +
</pre>
 +
 
 +
=下载测试程序=
 +
打开树莓派终端,执行:<br />
 +
<pre>
 +
sudo apt-get install unzip -y
 +
sudo wget https://www.waveshare.net/w/upload/8/8d/LCD_Module_RPI_code.zip
 +
sudo unzip ./LCD_Module_RPI_code.zip -d ./LCD_Module_RPI_code/
 +
cd LCD_Module_RPI_code/RaspberryPi/
 +
</pre>
 +
 
 +
=运行测试程序=
 +
以下命令请在RaspberryPi下执行,否则不在索引不到目录;<br />
 +
===C语言===
 +
*重新编译,编译过程可能需要几秒<br />
 +
<pre>
 +
cd c
 +
sudo make clean
 +
sudo make -j 8
 +
</pre>
 +
 
 +
所有屏幕的测试程序,可以直接通过输入对应的尺寸进行调用:<br />
 +
<pre>
 +
sudo ./main 屏幕尺寸
 +
</pre>
 +
根据不同LCD,应当输入以下某一条指令:<br />
 +
<pre>
 +
sudo ./main 0.96
 +
sudo ./main 1.14
 +
sudo ./main 1.28
 +
sudo ./main 1.3
 +
sudo ./main 1.54
 +
sudo ./main 1.8
 +
sudo ./main 2
 +
</pre>
 +
 
 +
==python==
 +
*进入python程序目录,并运行指令ls -l<br />
 +
<pre>
 +
cd python/examples
 +
ls -l
 +
</pre>
 +
[[File:LCD_rpi_python_examples.png|1000px]]<br />
 +
可以查看到所有屏幕的测试程序,按照尺寸分类:<br />
 +
 
 +
<table>
 +
<tr>
 +
<td>0inch96_LCD_test.py&nbsp;&nbsp;&nbsp;&nbsp;</td>
 +
<td>0.96inch LCD测试程序</td>
 +
</tr>
 +
<tr>
 +
<td>1inch14_LCD_test.py</td>
 +
<td>1.14inch LCD测试程序</td>
 +
</tr>
 +
<tr>
 +
<td>1inch28_LCD_test.py</td>
 +
<td>1.28inch LCD测试程序</td>
 +
</tr>
 +
<tr>
 +
<td>1inch3_LCD_test.py</td>
 +
<td>1.3inch LCD测试程序</td>
 +
</tr>
 +
<tr>
 +
<td>1inch54_LCD_test.py</td>
 +
<td>1.54inchLCD测试程序</td>
 +
</tr>
 +
<tr>
 +
<td>1inch8_LCD_test.py</td>
 +
<td>1.8inch LCD测试程序</td>
 +
</tr>
 +
<tr>
 +
<td>2inch_LCD_test.py</td>
 +
<td>2inch LCD测试程序</td>
 +
</tr>
 +
</table>
 +
*运行对应屏幕的程序即可,程序支持python2/3<br />
 +
<pre>
 +
# python2
 +
sudo python 0inch96_LCD_test.py
 +
sudo python 1inch14_LCD_test.py
 +
sudo python 1inch28_LCD_test.py
 +
sudo python 1inch3_LCD_test.py
 +
sudo python 1inch54_LCD_test.py
 +
sudo python 1inch8_LCD_test.py
 +
sudo python 2inch_LCD_test.py
 +
# python3
 +
sudo python3 0inch96_LCD_test.py
 +
sudo python3 1inch14_LCD_test.py
 +
sudo python3 1inch28_LCD_test.py
 +
sudo python3 1inch3_LCD_test.py
 +
sudo python3 1inch54_LCD_test.py
 +
sudo python3 1inch8_LCD_test.py
 +
sudo python3 2inch_LCD_test.py
 +
</pre>
 +
 
 +
=FBCP移植=
 +
Framebuffer 是用一个视频输出设备从包含完整的帧数据的一个内存缓冲区中来驱动一个视频显示设备。简单的来说,就是使用一个内存区来存储显示内容,改变内存的数据就可以改变显示的内容。<br />
 +
在 github 上有一个开源工程:fbcp-ili9341,该工程相比其他类fbcp工程,利用了局部刷新和DMA实现高达60fps的速度<br />
 +
===下载驱动===
 +
<pre>
 +
sudo apt-get install cmake -y
 +
cd ~
 +
wget https://www.waveshare.net/w/upload/1/18/Waveshare_fbcp.zip
 +
unzip Waveshare_fbcp.zip
 +
cd Waveshare_fbcp/
 +
sudo chmod +x ./shell/*
 +
</pre>
 +
 
 +
===方法一:使用脚本(推荐)===
 +
这里我们编写了几个脚本,可以让用户快速使用fbcp,可以根据自己的屏幕运行对应指令<br />
 +
如果使用脚本,并且不需要修改则可以忽略下文的方法二。<br />
 +
<font color="#FF0000">注:脚本会替换对应/boot/config.txt和/etc/rc.local并重启,如果用户如有需,请提前备份有关文件</font> <br />
 +
<pre>
 +
#0.96inch LCD Module
 +
sudo ./shell/waveshare-0inch96
 +
#1.14inch LCD Module
 +
sudo ./shell/waveshare-1inch14
 +
#1.3inch LCD Module
 +
sudo ./shell/waveshare-1inch3
 +
#1.44inch LCD Module
 +
sudo ./shell/waveshare-1inch44
 +
#1.54inch LCD Module
 +
sudo ./shell/waveshare-1inch54
 +
#1.8inch LCD Module
 +
sudo ./shell/waveshare-1inch8
 +
#2inch LCD Module
 +
sudo ./shell/waveshare-2inch
 +
#2.4inch LCD Module
 +
sudo ./shell/waveshare-2inch4
 +
</pre>
 +
===方法二:手动配置===
 +
 
 +
====环境配置====
 +
树莓派的vc4-kms-v3d会导致fbcp失效,所以我们需要在安装在fbcp之前关闭vc4-kms-v3d
 +
<pre>
 +
sudo nano /boot/config.txt
 +
</pre>
 +
屏蔽下图对应的语句即可<br />
 +
[[file:FBCP_CLOSE.jpg|900px]]<br />
 +
随后需要进行重启<br />
 +
<pre>
 +
sudo reboot
 +
</pre>
 +
 
 +
====编译与运行====
 +
<pre>
 +
mkdir build
 +
cd build
 +
cmake [options] ..
 +
sudo make -j
 +
sudo ./fbcp
 +
</pre>
 +
根据你使用的LCD Module自行替换,上文中cmake [options] ..
 +
<pre>
 +
#0.96inch LCD Module
 +
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_0INCH96_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
 +
#1.14inch LCD Module
 +
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH14_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
 +
#1.3inch LCD Module
 +
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH3_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
 +
#1.54inch LCD Module
 +
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH54_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
 +
#1.8inch LCD Module
 +
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH8_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
 +
#2inch LCD Module
 +
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_2INCH_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
 +
#2.4inch LCD Module
 +
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_2INCH4_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
 +
</pre>
 +
 
 +
====设置开机自启动====
 +
<pre>
 +
sudo cp ~/Waveshare_fbcp/build/fbcp /usr/local/bin/fbcp
 +
sudo nano /etc/rc.local
 +
</pre>
 +
在 exit 0 前面添加 fbcp&。注意一定要添加"&"  后台运行,否则可能会出现系统不能启动的情况。<br />
 +
[[file:1in3_lcd_fb5.png|900px]]<br />
 +
 
 +
====设置用户界面显示尺寸====
 +
在/boot/config.txt 文件中设置用户界面显示尺寸。<br />
 +
<pre>
 +
sudo nano /boot/config.txt
 +
</pre>
 +
在config.txt文件中添加分辨率的配置语句。
 +
<pre>
 +
hdmi_force_hotplug=1
 +
hdmi_cvt=[options]
 +
hdmi_group=2
 +
hdmi_mode=1
 +
hdmi_mode=87
 +
display_rotate=0
 +
</pre>
 +
根据你使用的LCD,自行替换上文中的hdmi_cvt=[options]
 +
<pre>
 +
#2.4inchinch LCD Module & 2inchinch LCD Module
 +
hdmi_cvt=640 480 60 1 0 0 0
 +
#1.8inch LCD Module
 +
hdmi_cvt=400 300 60 1 0 0 0
 +
#1.3inch LCD Module & 1.54inch LCD Module
 +
hdmi_cvt=300 300 60 1 0 0 0
 +
#1.14inch LCD Module
 +
hdmi_cvt=300 170 60 1 0 0 0
 +
#0.96inch LCD Module
 +
hdmi_cvt=300 150 60 1 0 0 0
 +
</pre>
 +
 
 +
重启设备即可
 +
<pre>
 +
sudo reboot
 +
</pre>
 +
 
 +
 
 +
启动树莓派后可以发现屏幕已经出现用户界面了。<br />
 +
[[file:2inch OLED01_fbcp.png|800px]]
 +
 
 
</div>
 
</div>
  
 
<div class="tabbertab" title="树莓派PICO使用教程">
 
<div class="tabbertab" title="树莓派PICO使用教程">
待添加
+
待添加</div>
 
</div>
 
</div>
  
 
<div class="tabbertab" title="ESP32-S2-Pico-M使用教程">
 
<div class="tabbertab" title="ESP32-S2-Pico-M使用教程">
待添加
+
待添加</div>
 
</div>
 
</div>
  

2022年5月24日 (二) 22:05的版本

LCD-Clock-A
{{{name2}}}
{{{name3}}}
功能简介
特性 无特性,不解释
显示尺寸 1.14英寸
分辨率 135×240
' 无特性,不解释
' 无特性,不解释
接口 SPI

说明


产品概述

可编程式 RGB 拟辉光管时钟
支持 Raspberry Pi Pico 或 Zero 编程
你知道上个世纪的古老光辉:辉光管吗?
会因为辉光管停产、使用寿命短而烦恼吗?
这是一款 LCD 拟辉光管时钟,可以帮你复刻这种朋克风


产品参数

参数名称 参数
产品尺寸 200mm × 80mm × 34mm
重量 430g
电源 5V 2A
接口 Type-C
LCD 屏幕 1.14 寸,135 × 240 分辨率
玻璃罩 石英材质玻璃
支持主控 带排针版本的 Raspberry Pi Pico 和 Raspberry Pi Zero / Zero 2 W,此产品默认不带主控,需要另外购买

资源简介

LCD-Clock-A-WIKI-1.png

产品安装

LCD-Clock-A-WIKI-2.png

  • 第一步:先把主控(树莓派ZERO、pico、esp32-s2-pico)插入到1板背面,pico、esp32-s2-picode USB口朝外安装无需螺丝。树莓派的需要(2颗双通铜柱+4颗银白色螺丝)固定非接口这边的2个洞;
  • 第2步:1到2上,需要注意1要先侧着把4个按键放进去,才能放的进,然后使用带纹的铜柱,先轻旋锁住对角对齐孔位,再锁剩余的,然后全部旋紧(4颗单头铜柱);
  • 第3步:3装到2上,使用黑色螺丝,同理先轻旋锁住对角对齐孔位,再锁剩余的,然后全部旋紧(4颗黑色);
  • 第4步,把LCD插入1板上,有按键的那一面为LCD的背面,然后放入玻璃罩,用银白色螺丝锁住(6*2颗银白色)
  • 第5步:4盖在2上,使用黑色螺丝,先轻旋锁住对角对齐孔位,再锁剩余的,然后全部旋紧(4颗黑色);

安装库

如果使用bookworm系统,只能使用lgpio库,bcm2835跟wiringPi无法安装与使用

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

#打开树莓派终端,并运行以下指令
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
# 运行gpio -v会出现2.52版本,如果没有出现说明安装出错

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

lgpio

#打开树莓派终端,并运行以下指令
wget https://github.com/joan2937/lg/archive/master.zip
unzip master.zip
cd lg-master
sudo make install

# 更多的可以参考官网:https://github.com/gpiozero/lg

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 apt-get install unzip -y
sudo wget https://www.waveshare.net/w/upload/8/8d/LCD_Module_RPI_code.zip
sudo unzip ./LCD_Module_RPI_code.zip -d ./LCD_Module_RPI_code/
cd LCD_Module_RPI_code/RaspberryPi/

运行测试程序

以下命令请在RaspberryPi下执行,否则不在索引不到目录;

C语言

  • 重新编译,编译过程可能需要几秒
cd c
sudo make clean
sudo make -j 8

所有屏幕的测试程序,可以直接通过输入对应的尺寸进行调用:

sudo ./main 屏幕尺寸

根据不同LCD,应当输入以下某一条指令:

sudo ./main 0.96
sudo ./main 1.14
sudo ./main 1.28
sudo ./main 1.3
sudo ./main 1.54
sudo ./main 1.8
sudo ./main 2

python

  • 进入python程序目录,并运行指令ls -l
cd python/examples
ls -l

LCD rpi python examples.png
可以查看到所有屏幕的测试程序,按照尺寸分类:

0inch96_LCD_test.py     0.96inch LCD测试程序
1inch14_LCD_test.py 1.14inch LCD测试程序
1inch28_LCD_test.py 1.28inch LCD测试程序
1inch3_LCD_test.py 1.3inch LCD测试程序
1inch54_LCD_test.py 1.54inchLCD测试程序
1inch8_LCD_test.py 1.8inch LCD测试程序
2inch_LCD_test.py 2inch LCD测试程序
  • 运行对应屏幕的程序即可,程序支持python2/3
# python2
sudo python 0inch96_LCD_test.py
sudo python 1inch14_LCD_test.py
sudo python 1inch28_LCD_test.py
sudo python 1inch3_LCD_test.py
sudo python 1inch54_LCD_test.py
sudo python 1inch8_LCD_test.py
sudo python 2inch_LCD_test.py
# python3
sudo python3 0inch96_LCD_test.py
sudo python3 1inch14_LCD_test.py
sudo python3 1inch28_LCD_test.py
sudo python3 1inch3_LCD_test.py
sudo python3 1inch54_LCD_test.py
sudo python3 1inch8_LCD_test.py
sudo python3 2inch_LCD_test.py

FBCP移植

Framebuffer 是用一个视频输出设备从包含完整的帧数据的一个内存缓冲区中来驱动一个视频显示设备。简单的来说,就是使用一个内存区来存储显示内容,改变内存的数据就可以改变显示的内容。
在 github 上有一个开源工程:fbcp-ili9341,该工程相比其他类fbcp工程,利用了局部刷新和DMA实现高达60fps的速度

下载驱动

sudo apt-get install cmake -y
cd ~
wget https://www.waveshare.net/w/upload/1/18/Waveshare_fbcp.zip
unzip Waveshare_fbcp.zip
cd Waveshare_fbcp/
sudo chmod +x ./shell/*

方法一:使用脚本(推荐)

这里我们编写了几个脚本,可以让用户快速使用fbcp,可以根据自己的屏幕运行对应指令
如果使用脚本,并且不需要修改则可以忽略下文的方法二。
注:脚本会替换对应/boot/config.txt和/etc/rc.local并重启,如果用户如有需,请提前备份有关文件

#0.96inch LCD Module
sudo ./shell/waveshare-0inch96
#1.14inch LCD Module
sudo ./shell/waveshare-1inch14
#1.3inch LCD Module
sudo ./shell/waveshare-1inch3
#1.44inch LCD Module
sudo ./shell/waveshare-1inch44
#1.54inch LCD Module
sudo ./shell/waveshare-1inch54
#1.8inch LCD Module
sudo ./shell/waveshare-1inch8
#2inch LCD Module
sudo ./shell/waveshare-2inch
#2.4inch LCD Module
sudo ./shell/waveshare-2inch4

方法二:手动配置

环境配置

树莓派的vc4-kms-v3d会导致fbcp失效,所以我们需要在安装在fbcp之前关闭vc4-kms-v3d

sudo nano /boot/config.txt

屏蔽下图对应的语句即可
FBCP CLOSE.jpg
随后需要进行重启

sudo reboot

编译与运行

mkdir build
cd build
cmake [options] ..
sudo make -j
sudo ./fbcp

根据你使用的LCD Module自行替换,上文中cmake [options] ..

#0.96inch LCD Module
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_0INCH96_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
#1.14inch LCD Module
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH14_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
#1.3inch LCD Module
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH3_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
#1.54inch LCD Module
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH54_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
#1.8inch LCD Module
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH8_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
#2inch LCD Module
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_2INCH_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
#2.4inch LCD Module
sudo cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_2INCH4_LCD=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..

设置开机自启动

sudo cp ~/Waveshare_fbcp/build/fbcp /usr/local/bin/fbcp
sudo nano /etc/rc.local

在 exit 0 前面添加 fbcp&。注意一定要添加"&" 后台运行,否则可能会出现系统不能启动的情况。
1in3 lcd fb5.png

设置用户界面显示尺寸

在/boot/config.txt 文件中设置用户界面显示尺寸。

sudo nano /boot/config.txt

在config.txt文件中添加分辨率的配置语句。

hdmi_force_hotplug=1
hdmi_cvt=[options] 
hdmi_group=2
hdmi_mode=1
hdmi_mode=87
display_rotate=0

根据你使用的LCD,自行替换上文中的hdmi_cvt=[options]

#2.4inchinch LCD Module & 2inchinch LCD Module
hdmi_cvt=640 480 60 1 0 0 0
#1.8inch LCD Module
hdmi_cvt=400 300 60 1 0 0 0
#1.3inch LCD Module & 1.54inch LCD Module
hdmi_cvt=300 300 60 1 0 0 0
#1.14inch LCD Module
hdmi_cvt=300 170 60 1 0 0 0
#0.96inch LCD Module
hdmi_cvt=300 150 60 1 0 0 0

重启设备即可

sudo reboot


启动树莓派后可以发现屏幕已经出现用户界面了。
2inch OLED01 fbcp.png

待添加
待添加


FAQ


售后


联系人:彭工
EMAIL:2851966006@qq.com
电话:0755-83040712
QQ:2851966006
微信:扫下方二维码添加
Pqy.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证