系统用的Bananian(http://www.bananian.org)
因为Bananian集成了FBTFT驱动,那么就可以直接让屏幕显示内容了,方法如下:
nano /etc/modules
添加以下内容
#enable spi
spi-sun7i
#load fbtft driver
fbtft_device name=pitft rotate=90
#load touchscreen driver
stmpe_device cs=1 chip=stmpe610 blocks=gpio,ts irq-pullup irq-gpio=23 irq-base=150 sample-time=4 mod-12b=1 ref-sel=0 adc-freq=2 ave-ctrl=3 touch-det-delay=4 settling=2 fraction-z=7 i-drive=0
mount /dev/mmcblk0p1 /boot
nano /boot/uEnv.txt
bootargs=console=ttyS0,115200 console=tty0 sunxi_g2d_mem_reserve=0 sunxi_ve_mem_reserve=0 disp.screen0_output_mode=EDID:1280x720p50 hdmi.audio=EDID:0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fbcon=map:2 rootwait
在rootwait前加入fbcon=map:2
然后重启屏幕就有显示了,使用屏幕很简单,直接加载相应的驱动就行了。但是要使用触摸就麻烦点,需要重新编译下香蕉派内核,请参照我发的编译香蕉派内核的相关文章。
其中内核编译需要开启几个选项,然后编译触摸屏驱动
需要在内核配置.config文件中确保启用以下选项,然后编译
CONFIG_TOUCHSCREEN_STMPE=y
CONFIG_GPIO_STMPE=y
CONFIG_MFD_STMPE=y
# STMicroelectronics STMPE Interface Drivers
CONFIG_STMPE_I2C=y
CONFIG_STMPE_SPI=y
编译touchscreen驱动:
git clone https://github.com/notro/fbtft_tools.git
cd fbtft_tools/stmpe_device
nano Makefile
把其中的KDIR指向香蕉派Linux内核源码的文件夹,比如
KDIR := /root/linux-bananapi
然后Make即可
把生成的stmpe_device.ko复制到
cp stmpe_device.ko /lib/modules/(uname -r)/kernel/drivers/input/touchscreen/
dempod -a
reboot重启就可以了。
那个加载触摸屏的参数是与fbtft作者讨论多次,并且自己尝试多次才试出的,请大家珍惜使用。
|