【转】树莓派TFT2.8寸 电阻式触摸屏 使用教学(支持B+的更新教程)
树莓派吧
全部回复
仅看楼主
level 9
szbhzc 楼主
因为有些朋友总是问这个屏的教程,所以给朋友们转发一下,另外,请实践过的朋友指正一下。
---------开始了----------------------------------------------------------------------------------------
注意:2014-06-20-wheezy-raspbian.zip已完美解决,背光控制问题。并且B和B+版本都能通用,所以今天在更新一下驱动。
注意:2014-01的驱动打入 2014-06-20上,会有固件不兼容情况。所以大家严格按照本文最新版本制作就不会遇到奇怪的问题了!
软件安装步骤:
由于B+,需要最新的2014-06-20-wheezy-raspbian.zip系统,所以本文都是基于2014-06-20-wheezy-raspbian.zip上驱动。
1.下载内核补丁,并打入补丁
cd ~
wget http://adafruit-download.s3.amazonaws.com/libraspberrypi-bin-adafruit.deb
wget http://adafruit-download.s3.amazonaws.com/libraspberrypi-dev-adafruit.deb
wget http://adafruit-download.s3.amazonaws.com/libraspberrypi-doc-adafruit.deb
wget http://adafruit-download.s3.amazonaws.com/libraspberrypi0-adafruit.deb
wget http://adafruit-download.s3.amazonaws.com/raspberrypi-bootloader-adafruit-20140724-1.deb
//或者用sftp的方式下载到/home/pi/目录下
sudo dpkg -i -B *.deb
//用2014-01-07-wheezy-raspbian.zip系统,注意下面移动的步骤这一步一定要做,不做无显示(非常容易忘记的一步)。
sudo mv /usr/share/X11/xorg.conf.d/99-fbturbo.conf ~
sudo reboot
2.安装、测试tft驱动 (触摸下面在测)
sudo modprobe spi-bcm2708
sudo modprobe fbtft_device name=adafruitts rotate=90
export FRAMEBUFFER=/dev/fb1
startx
屏幕正常显示。触摸不准需要进一步矫正
3.显示驱动自动加载
sudo nano /etc/modules
//增加一下2行
spi-bcm2708
fbtft_device
sudo nano /etc/modprobe.d/adafruit.conf
options fbtft_device name=adafruitts rotate=90 frequency=32000000
sudo mkdir /etc/X11/xorg.conf.d
sudo nano /etc/X11/xorg.conf.d/99-calibration.conf
//写入如下内容
Section "InputClass"
Identifier "calibration"
MatchProduct "stmpe-ts"
Option "Calibration" "3800 200 200 3800"
Option "SwapAxes" "1"
EndSection
//然后命令行打入
FRAMEBUFFER=/dev/fb1 startx
sudo nano ~/.profile
//在文件最后添加
export FRAMEBUFFER=/dev/fb1
sudo reboot
以后进入系统,在命令行下直接输入startx就可以在2.8寸液晶下显示内容了
4.矫正 触摸
sudo nano /etc/udev/rules.d/95-stmpe.rules
//新加入如下内容
SUBSYSTEM=="input", ATTRS{name}=="stmpe-ts", ENV{DEVNAME}=="*event*", SYMLINK+="input/touchscreen"
//重新加载驱动
sudo rmmod stmpe_ts; sudo modprobe stmpe_ts
//查看会出现event(x)的事件,这句可做可不做
ls -l /dev/input/touchscreen
//安装矫正的程序
sudo apt-get install evtest tslib libts-bin
//这里直接直接测试触摸硬件,系统打印坐标,ctrl+c结束(这步可做可不做)
sudo evtest /dev/input/touchscreen
//矫正开始
sudo TSLIB_FBDEVICE=/dev/fb1 TSLIB_TSDEVICE=/dev/input/touchscreen ts_calibrate
//矫正测试,可以当画图板,画图形:) ctrl+c结束
sudo TSLIB_FBDEVICE=/dev/fb1 TSLIB_TSDEVICE=/dev/input/touchscreen ts_test
5.当终端显示器
sudo nano /boot/cmdline.txt
//在rootwait 后面添加如下内容
fbcon=map:10 fbcon=font:VGA8x8
sudo dpkg-reconfigure console-setup
UTF-8 -》Guess optimal character set -》Terminus-》6x12(framebuffer only)
以上字体比较适合2.8的tft
6.关闭屏幕保护
终端命令行模式下30分钟后,屏幕会全黑,系统内部执行了屏保程序,需要关闭它。
sudo nano /etc/kbd/config
//把 BLANK_TIME=30
//变为:
BLANK_TIME=0
7.显示图像
sudo apt-get install fbi
wget http#://adafruit-download.s3.amazonaws.com/adapiluv320x240.jpg
//提醒:注意把上面一行中http后的#要删除,因为贴吧显示有问题
sudo fbi -T 2 -d /dev/fb1 -noverbose -a adapiluv320x240.jpg
//照片5
7.控制背光
sudo sh -c "echo 252 > /sys/class/gpio/export"
sudo ls -l /sys/class/gpio
sudo sh -c "echo *out* > /sys/class/gpio/gpio252/direction"
sudo sh -c "echo *1* > /sys/class/gpio/gpio252/value"
//注意:关背光后,液晶任何显示都看不到!用上面的指令恢复!!!
sudo sh -c "echo *0* > /sys/class/gpio/gpio252/value"
8.开关机按钮控制
sudo nano /etc/modules
//增加如下内容:
rpi_power_switch
sudo nano /etc/modprobe.d/adafruit.conf
//增加下面内容,23号开关键就是最左侧的按钮
options rpi_power_switch gpio_pin=23 mode=0
sudo modprobe rpi_power_switch
9. 播放动画 (mplayer服务器最近不稳定,可能会遇到404错误无法安装,此时需要换时间段下载,或者爬墙出去)
/////////////////////////////////////
题外知识,清华源加入树莓派
sudo su
//备份【源网址文件】
cp /etc/apt/sources.list /etc/apt/sources.list.orig
nano /etc/apt/sources.list
//修改中间的国外网址为清华的网址 http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/
//如果清华mirror挂了,换 sg的:http://mirror.nus.edu.sg/raspbian/raspbian
//更新源地址后,同步系统软件库
apt-get update
/////////////////////////////////////
sudo apt-get install mplayer
wget http://adafruit-download.s3.amazonaws.com/bigbuckbunny320p.mp4
mplayer -vo fbdev2:/dev/fb1 -x 240 -y 320 -framedrop bigbuckbunny320p.mp4
本文英文版本教程参考:
http://learn.adafruit.com/adafruit-pitft-28-inch-resistive-touchscreen-display-raspberry-pi?view=all
2014年08月20日 13点08分 1
level 8
顶一个,貌似树莓派吧没多少人
2014年08月20日 14点08分 2
确实没多少人,可能是这种技术贴太少的原因吧。
2014年08月20日 14点08分
回复 szbhzc :各种论坛不给注册,还要回复可见。[怒]
2014年08月20日 14点08分
最讨厌就是树老大的论坛了
2014年08月27日 00点08分
回复 影飞梦 :呵呵。
2014年08月29日 14点08分
level 12
谢谢分享,对大家应该还是很有帮助的。
2014年08月20日 15点08分 3
level 10
感谢楼主!!!!
2014年08月20日 15点08分 4
level 9
szbhzc 楼主
实践过的朋友请补充下。
2014年08月20日 15点08分 5
要重新连电视机的朋友 sudo nano /boot/cmdline.txt //在rootwait 后面添加如下内容 fbcon=map:10 fbcon=font:VGA8x8 这行要去注释掉 不然电视机上后面不能显示
2014年09月02日 07点09分
level 10
那个手机屏幕可以做pi的屏幕吗
2014年08月21日 01点08分 6
理论上是可以的,但路很长
2014年08月21日 16点08分
回复 szbhzc :路很长?
2014年08月21日 17点08分
回复 a297131315 :要自己做不少底层工作
2014年08月21日 23点08分
折腾的路很长。首先要知道你手机屏的ic等等
2014年08月21日 23点08分
level 12
顶楼主,
2014年08月21日 03点08分 7
level 11
谢谢楼主
2014年08月22日 04点08分 8
level 11
其实直接做好后备份下来,大家直接刷就好了[哈哈][哈哈][哈哈]
2014年08月22日 06点08分 9
感谢您的经验。
2014年08月22日 08点08分
level 11
其实吧,只要屏幕显示正常,无问题,每隔1到3分钟关闭屏幕,点击屏幕按键或者动键盘鼠标屏幕就又点亮点。关闭屏幕时间可以弹性控制。
2014年08月22日 09点08分 10
level 11
其他的就让别人自己弄了,你只要把屏幕问题解决了就好了,其他问题因人而异,也许别人不需要[哈哈][哈哈][哈哈]#^_^#
2014年08月22日 09点08分 11
level 9
szbhzc 楼主
楼主说的很有道理
2014年08月22日 15点08分 12
这是嘛意思
2015年01月29日 16点01分
level 8
弄好了。。。不过觉得没什么用。完全不知道有什么意义
2014年09月01日 11点09分 13
怎么弄的,我按照步骤打补丁第一步成功了,第二步弄完了屏幕只有黑道子,没有显示
2014年09月01日 16点09分
回复 jinqiao9 :startx
2014年09月01日 22点09分
startx了,还是黑道子,不是屏是坏的吧
2014年09月01日 22点09分
回复 jinqiao9 :额看看是不是焊接有问题。我的一开始焊接完触摸没反应。后来又焊了一遍好了
2014年09月01日 22点09分
level 11
大赞呀
2014年09月01日 23点09分 14
level 7
楼主用的是哪种屏幕啊,能上个图吗?那种屏幕要驱动板,触摸要接USB驱动板的可以用这种方法吗?
2014年09月02日 12点09分 16
上面的教程针对的贴吧团购的2.8"屏,注意,只是针对2.8"屏,3.2"屏不需要如此的。
2014年09月03日 01点09分
level 9
可以使用2g的sd card安装后dd下来(备份),然后打包传到度娘盘给大家使用
   --使用脚本语言可以拼出一个操作系统吗(⊙o⊙)
2014年09月03日 13点09分 17
level 1
lz请问怎么打入补丁『我在电脑上弄』求回复啊!放到哪里?
2014年09月05日 09点09分 18
level 7
第二步时出现错误窗口 GDBus.Errorrg.freedesktop.PolicyKit1.Error.Failed: An authentication agent already exists for the given subject
2014年09月19日 10点09分 19
level 7
2014年09月19日 10点09分 20
1 2 尾页