-
-
Notifications
You must be signed in to change notification settings - Fork 19.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LVGL using standard HAL TFT IO (SPI and FSMC) #18974
LVGL using standard HAL TFT IO (SPI and FSMC) #18974
Conversation
Yes. Waiting for this to be used in a LP1678 SPI port. |
Which board? |
Have not checked DMA access on the SPI port exposed on the EXP header of the SKR1.4 but if there is access then it would be great to use it with that board. |
I wil test it. But to run LVGL UI, you need access to spi flash too. The SKR 1.4 board only have spi flash in the TFT, not in the board. I dont know if it expose too. |
Yes, there is an exposed SPI header which is shared with the SD card. P0.26, P0.7, P0.8, and P0.9. I believe that these could easily be interfaced with a cheap, external W25Q32. |
@thinkyhead I have finished the emulated DOGM to use the same HAL TFT IO classes. Now, we have only one FSMC and SPI TFT in STM32F1, that follow this interface: #include HAL_PATH(../../HAL, tft/tft_spi.h)
#include HAL_PATH(../../HAL, tft/tft_fsmc.h) And it is already available in STM32. Any other HAL that wants TFT, just need implement this two classes, and LVGL + emulated dogm will work! Do I commit it here? Or wait the merge and do another PR, specific for dogm? |
LVGL, Emulated DOGM and the new Color UI, now all are using the same low level IO abstraction. To use any of those UI, the HAL just need the low level TFT IO classes. STM32 and STM32F1 already have it, so all 3 UI are available for them. |
@thinkyhead Do I push it here? Or do you prefere separated PR to better organize merges? After that commit, we have only two things to finish that refactoring:
Lots of repeated code removed!! |
Sure, after this refactoring, we can handle upscale at a low level, making it available for all UI. |
Description
We have a lot of TFT/XPT IO repeated code in STM32F1. This PR begins to change that.
Now LVGL uses the standard HAL TFT IO - FSMC and SPI, and XPT2046.
Standard HAL TFT and TOUCH IO are in:
Next PR I will see to migrate emulated DOGM.
Benefits
Related Issues
#18958
#18952