本文章参考这篇博客
https://devdotnet.org/post/rabota-s-gpio-v-linux-na-primere-banana-pi-bpi-m64-chast-4-device-tree-overlays-podkluchenie-displey-spi-lcd-ili9341/
1_设备树覆盖fbtft
1.2_创建设备树文件
sun50iw9p1-h616-spi-st7789v-led-always-on.dts
/dts-v1/;
/plugin/;
/ {
compatible = "allwinner,h616","arm,sun50iw9p1";
fragment@0 {
target = <&pio>;
__overlay__ {
st7789v_pins: st7789v_pins {
pins = "PC10", "PC7"; /*RESET, DC_RS*/
function = "gpio_out","gpio_out";
};
};
};
fragment@1 {
target = <&spi1>;
__overlay__ {
status = "okay";
cs-gpios = <&pio 7 9 0>; /* PH9 */
st7789v: st7789v@0 {
compatible = "sitronix,st7789v";
reg = <0>;
pinctrl-names = "default";
pinctrl-0 = <&st7789v_pins>;
spi-max-frequency = <32000000>;
rotate = <270>;
bgr;
fps = <30>;
height = <240>;
width = <240>;
buswidth = <8>;
txbuflen = <32768>;
reset-gpios = <&pio 2 10 1>; /*RESET=PC10*/
dc-gpios = <&pio 2 7 0>; /*DC_RS=PC7*/
/*led-gpios = <&pio 2 4 0>; LED=PC4*/
debug = <0>;
init = <0x1000011
0x20000ff
0x100003A 0x55
0x10000C0 0x0C
0x1000021
0x1000029 >;
};
};
};
};
1.3_将文件放在路径/boot/dtb/overlay上 。然后,我们将.dts文件编译为.dtbo
sudo cp sun8i-h3-spi-st7789v-led-always-on.dts /boot/dtb/overlay/sun8i-h3-spi-st7789v-led-always-on.dts
cd /boot/dtb/overlay/
sudo dtc -O dtb -o sun8i-h3-spi-st7789v-led-always-on.dtbo sun8i-h3-spi-st7789v-led-always-on.dts
1.4_打开覆盖
sudo armbian-config
系统重启效果
显示控制台
script -t0 /dev/tty1 bash
1.5_显示图片
sudo apt-get -y install fbi
mkdir ~/lcdtest
放图片文件在目录中
显示图片
sudo fbi -d /dev/fb0 -T 1 -noverbose -a 01.jpg
1.6_播放mpg格式视频
sudo apt-get install -y mplayer
mplayer -nolirc -vo fbdev2:/dev/fb0 minions-240x240.mpg
1.7_获取屏幕截图
sudo apt-get install -y imagemagick fbgrab
sudo apt-get -y install xorg lightdm xfce4 tango-icon-theme gnome-icon-theme dbus-x11
sudo apt-get install xserver-xorg-video-fbdev
沿着路径/usr/share/X11/xorg.conf.d/99-fbdev.conf创建配置文件
sudo nano /usr/share/X11/xorg.conf.d/99-fbdev.conf
Section "Device"
Identifier "myfb"
Driver "fbdev"
Option "fbdev" "/dev/fb0"
EndSection
sudo startx