跳到主要内容

FBCP移植

PS:FBCP目前不兼容64位树莓派系统跟bookworm,建议使用32位系统。

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

环境配置​

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

sudo nano /boot/config.txt

屏蔽下图对应的语句即可

FBCP CLOSE

随后需要进行重启

sudo reboot

编译与运行​

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
mkdir build
cd build
#以1.44inch_LCD_HAT为例
cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH44_LCD_HAT=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
#以1.3inch_LCD_HAT为例
cmake -DSPI_BUS_CLOCK_DIVISOR=20 -DWAVESHARE_1INCH3_LCD_HAT=ON -DBACKLIGHT_CONTROL=ON -DSTATISTICS=0 ..
make -j
sudo ./fbcp

设置开机自启动​

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

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

1in3 lcd fb5

设置用户界面显示尺寸​

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

sudo nano /boot/config.txt

添加

hdmi_force_hotplug=1
hdmi_cvt=300 300 60 1 0 0 0
hdmi_group=2
hdmi_mode=87
display_rotate=0

这里是设置系统界面分辨率,最后显示的效果是按照比例缩放显示在1.3inch LCD上。这里设置分辨率应稍大于LCD的分辨率,过高会导致字体显示模糊。

重启设备即可

sudo reboot

启动树莓派后可以发现屏幕已经出现用户界面了。

1

模拟鼠标​

模块上面板子一个摇杆和三个按键,我们可以用来控制树莓派的鼠标

  • 安装库并下载并运行例程

    #python2
    sudo apt-get install python-xlib
    sudo pip install PyMouse
    wget http://www.waveshare.net/w/upload/d/d3/Mouse.7z
    7z x Mouse.7z
    sudo python mouse.py
    #python3
    sudo apt-get install python3-xlib
    sudo pip3 install PyMouse
    sudo pip3 install unix
    sudo pip3 install PyUserInput
    wget http://www.waveshare.net/w/upload/d/d3/Mouse.7z
    7z x Mouse.7z
    sudo python3 mouse.py
* 注意:mouse.py需要的图形化界面下运行,SSH登录命令行无法使用,可以直接跳过这一步骤,通过开机自启动运行程序。
  • 对于树莓派4B及raspbian_lite-2019-06-20系统之后需要设置如下,按键才能正常输入

    sudo nano /boot/config.txt
    #添加如下:
    gpio=6,19,5,26,13,21,20,16=pu

使用摇杆上下左右,就可以看到鼠标在动了。

  • 配置成开机自启

注意不要加到/etc/rc.local中,因为rc.local在系统还没有进入桌面之前会执行,而PyMouse模块在命令行界面运行的话会报错没有鼠标这个事件,所以我们需要执行如下:

cd .config/
mkdir autostart
cd autostart/
sudo nano local.desktop

加入如下(添加对应的即可,不用全部添加进去):

#python2
[Desktop Entry]
Type=Application
Exec=python /home/pi/mouse.py
#python3
[Desktop Entry]
Type=Application
Exec=python3 /home/pi/mouse.py

然后重新启动树莓派,即可使用按键控制鼠标了。

sudo reboot

其他​

有兴趣弄游戏机的小伙伴们可以参考下面这两个链接,这里不再详细讲解。
https://www.sudomod.com/forum/viewtopic.php?f=11&t=5371&start=10
https://pi0cket.com/guides/tiny-software-for-tinypi/#more-99