Reduce display startup time

This commit is contained in:
2023-03-17 17:50:00 +01:00
parent 98f4a1d0ad
commit 7e4bc54266
10 changed files with 172 additions and 12 deletions

View File

@ -1,6 +1,7 @@
#include "hx8357d.h"
#include "main.h"
#include "shorttimer.h"
void HX8357D_WriteData(uint8_t *data, size_t data_len) {
for (size_t byte = 0; byte < data_len; byte++) {
@ -9,9 +10,9 @@ void HX8357D_WriteData(uint8_t *data, size_t data_len) {
((data[byte] >> (7 - bit)) & 1) ? GPIO_PIN_SET : GPIO_PIN_RESET;
HAL_GPIO_WritePin(DISPSPI_SCL_GPIO_Port, DISPSPI_SCL_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(DISPSPI_SDA_GPIO_Port, DISPSPI_SDA_Pin, state);
HAL_Delay(1);
shorttimer_sleep(1);
HAL_GPIO_WritePin(DISPSPI_SCL_GPIO_Port, DISPSPI_SCL_Pin, GPIO_PIN_SET);
HAL_Delay(1);
shorttimer_sleep(1);
}
}
}
@ -19,11 +20,11 @@ void HX8357D_WriteData(uint8_t *data, size_t data_len) {
void HX8357D_WriteReg(uint8_t addr, uint8_t *data, size_t data_len) {
HAL_GPIO_WritePin(DISPSPI_CSX_GPIO_Port, DISPSPI_CSX_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(DISPSPI_DCX_GPIO_Port, DISPSPI_DCX_Pin, GPIO_PIN_RESET);
HAL_Delay(1);
shorttimer_sleep(1);
HX8357D_WriteData(&addr, 1);
HAL_GPIO_WritePin(DISPSPI_DCX_GPIO_Port, DISPSPI_DCX_Pin, GPIO_PIN_SET);
HAL_Delay(1);
shorttimer_sleep(1);
if (data_len > 0) {
HX8357D_WriteData(data, data_len);