Merge develop into main (#303)

- `DisplayDevice` improvements related `DisplayDriver`
- Replaced incorrect usage of `spiBusHandle` with `spiHostDevice` in all SPI display devices
- Disabled `DisplayDriver` support for RGB displays for now
- Updated `GraphicsDemo` project for the above changes
- TactilityC improvements:
  - created `tt_hal_device_find()`
  - created `tt_hal_display_*`
  - created `tt_hal_touch_*`
  - created `tt_lvgl_*`
  - export `tt_app_*` calls
This commit is contained in:
Ken Van Hoeylandt
2025-08-17 22:48:51 +02:00
committed by GitHub
parent d875ade8cb
commit fbaff8cbac
43 changed files with 1554 additions and 70 deletions
+9 -3
View File
@@ -1,12 +1,16 @@
#pragma once
#include "Tactility/hal/display/DisplayDevice.h"
#include <Tactility/hal/display/DisplayDevice.h>
#include <Tactility/hal/display/DisplayDriver.h>
#include <Tactility/Mutex.h>
#include <esp_lcd_types.h>
#include <lvgl.h>
#include <Tactility/hal/display/DisplayDriver.h>
#include "UnPhoneDisplayConstants.h"
#include <Tactility/hal/spi/Spi.h>
class UnPhoneDisplay : public tt::hal::display::DisplayDevice {
uint8_t* _Nullable buffer = nullptr;
@@ -14,12 +18,14 @@ class UnPhoneDisplay : public tt::hal::display::DisplayDevice {
std::shared_ptr<tt::hal::touch::TouchDevice> _Nullable touchDevice;
std::shared_ptr<tt::hal::display::DisplayDriver> _Nullable nativeDisplay;
class UnPhoneDisplayDriver : public tt::hal::display::DisplayDriver {
std::shared_ptr<tt::Lock> lock = tt::hal::spi::getLock(SPI2_HOST);
public:
tt::hal::display::ColorFormat getColorFormat() const override { return tt::hal::display::ColorFormat::RGB888; }
uint16_t getPixelWidth() const override { return UNPHONE_LCD_HORIZONTAL_RESOLUTION; }
uint16_t getPixelHeight() const override { return UNPHONE_LCD_VERTICAL_RESOLUTION; }
bool drawBitmap(int xStart, int yStart, int xEnd, int yEnd, const void* pixelData) override;
std::shared_ptr<tt::Lock> getLock() const override { return lock; }
};
public: