CS7000: display: added delay between data write and WR line assertion

pull/328/head^2
Silvano Seva 2025-07-05 11:23:18 +02:00
rodzic 6cd4583677
commit c64057780f
1 zmienionych plików z 16 dodań i 2 usunięć

Wyświetl plik

@ -73,7 +73,14 @@ static inline void sendCmd(uint8_t cmd)
" itt ne \n"
" subne r1, r1, #1 \n"
" bne ___loop_d \n":::"r1");
GPIOD->BSRR = cmd | (1 << 13);
GPIOD->BSRR = cmd;
asm volatile(" mov r1, #5 \n"
"___loop_1: cmp r1, #0 \n"
" itt ne \n"
" subne r1, r1, #1 \n"
" bne ___loop_1 \n":::"r1");
GPIOD->BSRR = (1 << 13);
}
static inline void sendData(uint8_t val)
@ -89,7 +96,14 @@ static inline void sendData(uint8_t val)
" itt ne \n"
" subne r1, r1, #1 \n"
" bne ___loop_e \n":::"r1");
GPIOD->BSRR = val | (1 << 13);
GPIOD->BSRR = val;
asm volatile(" mov r1, #5 \n"
"___loop_2: cmp r1, #0 \n"
" itt ne \n"
" subne r1, r1, #1 \n"
" bne ___loop_2 \n":::"r1");
GPIOD->BSRR = (1 << 13);
}
void display_init()