屏幕使用
- LCD HDMI屏幕使用
- LCD DSI屏幕使用
- 配合G2T使用TFT屏幕
注意事项:
- 确保在安装扩展板前,上位机已经关闭电源。
- 避免在潮湿或灰尘环境中使用扩展板。
- 安装屏幕时,请注意不要带电拔插注意屏线方向,以免造成损坏。
- 安装风扇时,请注意风扇的电流和电压规格,以免造成损坏。
- 请注意UART1已经默认启用无需在配置
- 请刷最新镜像比如
mainsailos
,不是升级内核 - 树莓派可以使用全部接口!!!
- 注意:树莓派使用的系统内核版本必须大于
5.17.x
, 执行命令uname -r
查看内核版本
树莓派预安装TFTV2系统下载链接
- 适用于树莓派3B/3B+/4B/CM4/5B的系统镜像
https://cdn.mellow.klipper.cn/IMG/Beta/RPI-TFT-IMG-new.img.xz
安装屏幕驱动
- 请注意可以直接使用预先安装好的系统
- 项目地址:FLY-TFT
介绍
FLY-TFT-V2是一款基于st7796的TFT液晶屏,支持电容触摸与电阻触摸两种,分辨率320x480,使用SPI接口
- 需要自行安装KlipperScreen
系统安装
注意事项
注意:树莓派使用的系统内核版本必须大于5.17.x
, 执行命令uname -r
查看内核版本
请刷最新镜像比如mainsailos
,不是升级内核
- 使用 Raspberry Imager 安装最新的 MainsailOS
- 下载并安装 Raspberry Imager
- 打开Raspberry Imager
- 点击CHOOSE DEVICE
- 根据你的设备选择对应型号
- 点击CHOOSE OS
- 选择Other specific-purpose OS
- 选择3D printing
- 选择Mainsail OS
- 选择最新的版本。如果你的设置支持64位系统则选择rpi64
- 点击CHOOSE STORAGE
- 选择你的存储设备,比如SD卡
- 点击NEXT,等待安装完成
驱动安装
- 安装FLY-TFT-V2驱动
git clone https://github.com/kluoyun/FLY-TFT.git
cd FLY-TFT
sudo chmod +x ./scripts/install.sh
./scripts/install.sh
启用TFT显示
- 触摸需要启用I2C支持,对应配置为
dtparam=i2c_arm=on
- 安装驱动后需要在config.txt文件中添加了
dtoverlay=fly-tft-v2
的覆盖层支持 - 打开
/boot/config.txt
(bookworm系统为/boot/firmware/config.txt
)sudo nano /boot/config.txt
- 在文件末尾添加下面的配置
dtoverlay=fly-tft-v2
- 默认屏幕为90度横屏显示,如果需要旋转屏幕请使用下面的配置
dtoverlay=fly-tft-v2,r90 # 与默认方向一致,横向
dtoverlay=fly-tft-v2,r270 # 270度横屏,横向(翻转)
dtoverlay=fly-tft-v2,r0 # 0度竖屏,纵向
dtoverlay=fly-tft-v2,r180 # 180度竖屏,纵向(翻 转)
- 只能添加任意一个配置,不能添加多个
- 正常情况下,TFT的触摸方向会自动旋转跟随显示方向,无需修改系统内的触摸配置
- 添加到文件末尾后,执行命令
sudo reboot
重启系统
使用TFT
- 请确保硬件连接正确
- 安装了驱动
- 在
/boot/config.txt
(bookworm系统为/boot/firmware/config.txt
)文件中添加了dtoverlay=fly-tft-v2
的覆盖层支持 - 部分系统可能存在默认的fb0设备,FLY-TFT会被分配到fb1设备,需要修改配置文件使能fb1设备
- 执行命令
ls /dev/fb*
查看设备,如果出现两个设备fb0和fb1,请执行下面的命令将fb1设备使能(默认是fb0) - 执行下面的命令修改默认配置为fb1设备
sudo sed -i 's/\/dev\/fb0/\/dev\/fb1/g' /etc/X11/xorg.conf.d/99-fbdev.conf
使用KlipperScreen
- MainsailOS默认没有安装KlipperScreen,需要手动安装
- 请参考KlipperScreen或使用kiauh安装
- 如果成功安装了KlipperScreen,且第5步骤已正确完成,此时应该已经显示了KlipperScreen界面
所有可用配置
-
speed
[需要参数]:设置TFT的最大SPI时钟频率,单位为Hz,默认96000000(如果出现严重花屏请适当降低该值) -
示例:
dtoverlay=fly-tft-v2,speed=80000000
-
r0/r90/r180/r270
[可选][无需参数]:设置TFT的显示和触摸方向,默认为90度,可选值为0,90,180,270,(只能添加一个配置) -
示例:
dtoverlay=fly-tft-v2,r90
或dtoverlay=fly-tft-v2,r180
-
disable_touch
[无需参数]:禁用TFT的触摸功能,默认为启用 -
示例:
dtoverlay=fly-tft-v2,disable_touch
-
invx
,invy
[无需参数]:设置TFT的触摸方向,invx
为X方向翻转,invy
为Y方向翻转 -
示例:
dtoverlay=fly-tft-v2,invx
或dtoverlay=fly-tft-v2,invy
或dtoverlay=fly-tft-v2,invx,invy
-
swapxy
[无需参数]:设置TFT的触摸方向,X轴与Y轴互换,即横屏- 示例:
dtoverlay=fly-tft-v2,swapxy
- 示例:
注意: 所有参数可以同时设置(可选参数只能选择一个设置),多个参数之间用逗号隔开,多个参数只能在同一行
警告: 正常情况只有
r0
,r90
,r180
,r270
四个参数使用,其他参数仅在特殊情况下使用,尤其是invx
,invy
,swapxy
- 示例:
dtoverlay=fly-tft-v2,speed=80000000,r270