樹莓派上安裝2.8寸TFT觸控式螢幕

Andy Yang發表於2014-06-24

在某寶的這裡買了一個2.8寸的TFT觸控式螢幕,其實就是中國版的ADAFRUIT

結合店家的幫助文件做了一下,一次點亮,這裡也記錄一下自己的安裝過程(話說會硬體是會比會軟體有不同的樂趣~~~

 

由於店家推薦使用Raspbian2013-09-25版本,所以我也換了一塊SD卡重新安裝了一遍

安裝店家提供的2013-09-25版系統(參考樹莓派的官網安裝方法),更新系統

sudo apt-get update

sudo apt-get upgrade

 

//// 核心補丁

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-112613.deb

// 安裝核心補丁

sudo dpkg -i -B *.deb

// 重啟

sudo reboot

 

//// 安裝、測試TFT驅動

sudo modprobe spi-bcm2708

sudo modprobe fbtft_device name=adafruitts rotate=90

export FRAMEBUFFER=/dev/fb1

startx

 

//// 顯示驅動自動載入

sudo nano /etc/modules

//增加以下兩行

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 120 200 3900"
   Option  "SwapAxes"      "1"
   Option "EmulateThirdButton" "1"
   Option "EmulateThirdButtonTimeout" "750"
   Option "EmulateThirdButtonMoveThreshold" "30"
EndSection

 

FRAMEBUFFER=/dev/fb1 startx

sudo nano ~/.profile

//在檔案最後新增

export FRAMEBUFFER=/dev/fb1

// 重啟

sudo reboot

 

// 矯正觸控

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

//檢視會出現eventx)的事件(這步可做可不做)

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

 

//// 當終端顯示器

sudo nano /boot/cmdline.txt

//rootwait 後面新增如下內容

fbcon=map:10 fbcon=font:VGA8x8

sudo dpkg-reconfigure console-setup

UTF-8 -Guess optimal character set -Terminus-6x12framebuffer only

以上字型比較適合2.8tft

 

//// 顯示影象

sudo apt-get install fbi

wget http://adafruit-download.s3.amazonaws.com/adapiluv320x240.jpg

sudo fbi -T 2 -d /dev/fb1 -noverbose -a adapiluv320x240.jpg

 

//// 控制背光

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 '0' > /sys/class/gpio/gpio252/value"

// 開啟背光

sudo sh -c "echo '1' > /sys/class/gpio/gpio252/value"

 

//// 開關機按鈕控制

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

 

//// 播放動畫

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://www.arduinoking.com/forum.php?mod=viewthread&tid=1&extra=page%3D1

http://learn.adafruit.com/adafruit-pitft-28-inch-resistive-touchscreen-display-raspberry-pi?view=all

 

Andy Yang

2014.06.24

相關文章