5_Orange pi_设备树覆盖fbtft

1,711 阅读1分钟

本文章参考这篇博客

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_创建设备树文件

image.png

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

image.png

image.png

image.png

系统重启效果

微信图片_20210427002602.jpg

显示控制台

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

IMG_20210426_233158.jpg

1.6_播放mpg格式视频

sudo apt-get install -y mplayer
mplayer -nolirc -vo fbdev2:/dev/fb0 minions-240x240.mpg

20210428_233512.gif

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

微信图片_20210428234717.jpg