Фотографии устройства

image.png

{8E832463-A22D-4EE7-8C63-F0FB060FD109}.png

image.png

image.png

image.png

Описание

Цветной IPS TFT дисплей на ST7735S SPI, 80х160 0.96" мелкий экран. Нужно учитывать что у него есть смещение.

Особенности подключения

Подключение к esp8266 из интернета. Я подключал к esp32 c3

image.png

Добавление фотографии на экран с поворотом на 90 гр. Выравнивание по центру + белый по бокам

что бы изображение повернуть нужно поменять местами размеры картинки + местами разрешение экрана + отступ

spi:
  clk_pin: GPIO4
  mosi_pin: GPIO6

image:
  - file: "test544.jpg"   # Путь к файлу относительно папки проекта
    id: my_image                 # Уникальный идентификатор для обращения к изображению
    resize: 160x80             # Новый размер, чтобы картинка соответствовала активной области дисплея
    type: RGB565                 # Режим цвета (для ST7735 обычно используется RGB565)

display:
  - platform: ili9xxx
    model: "ST7735"
    dimensions:
      width: 160
      height: 80
      offset_width: 0
      offset_height: 24
    cs_pin: GPIO7
    dc_pin: GPIO3
    reset_pin: GPIO10
    invert_colors: false
    color_order: bgr 
    show_test_card: false
    transform:
      swap_xy: true
      mirror_x: true
      mirror_y: false
    update_interval: 1s
    lambda: |-
      // Вычисляем центр экрана
      int center_x = (it.get_width() - id(my_image).get_width()) / 2;
      int center_y = (it.get_height() - id(my_image).get_height()) / 2;

      // Заливаем фон
      it.fill(Color(255, 255, 255));
      
      // Размещаем изображение по центру
      it.image(center_x, center_y, id(my_image));

output:
  - platform: ledc
    pin: GPIO5
    id: backlight_pwm

light:
  - platform: monochromatic
    name: "Display Backlight"
    output: backlight_pwm
    restore_mode: RESTORE_DEFAULT_ON

font:
  - file: "gfonts://Roboto"
    id: small_font
    size: 12

{FB12E793-60DF-4B5F-8CF6-A55265605A2C}.png

Что бы подходило под экран, нужно четко соблюсти соотношение!

Вертикальные фото и настройки. Изображение зеркалим через mirror_x: и mirror_y

spi:
  clk_pin: GPIO4
  mosi_pin: GPIO6

image:
  - file: "test66.jpg"   # Путь к файлу относительно папки проекта
    id: my_image                 # Уникальный идентификатор для обращения к изображению
    resize: 180x160             # Новый размер, чтобы картинка соответствовала активной области дисплея
    type: RGB565                 # Режим цвета (для ST7735 обычно используется RGB565)

display:
  - platform: ili9xxx
    model: "ST7735"
    dimensions:
      width: 80
      height: 160
      offset_width: 24
      offset_height: 0
    cs_pin: GPIO7
    dc_pin: GPIO3
    reset_pin: GPIO10
    invert_colors: false
    color_order: bgr 
    show_test_card: false
    transform:
      swap_xy: false
      mirror_x: true
      mirror_y: true
    update_interval: 5s  # 5 кадров в секунду
    lambda: |-
      // Вычисляем центр экрана
      int center_x = (it.get_width() - id(my_image).get_width()) / 2;
      int center_y = (it.get_height() - id(my_image).get_height()) / 2;

      // Заливаем фон
      it.fill(Color(255, 255, 255));
      
      // Размещаем изображение по центру
      it.image(center_x, center_y, id(my_image));

output:
  - platform: ledc
    pin: GPIO5
    id: backlight_pwm

light:
  - platform: monochromatic
    name: "Display Backlight"
    output: backlight_pwm
    restore_mode: RESTORE_DEFAULT_ON

font:
  - file: "gfonts://Roboto"
    id: small_font
    size: 12

image.png

Пробую крутить Экран в горизонтали Все равно остаемся полоска по бокам.

      resize: 160x80 
      
      width: 160
      height: 80
      offset_width: 0
      offset_height: 24
      
    transform:
      swap_xy: true
      mirror_x: false
      mirror_y: false