[WIP] Max SPI speed reached (119ms for a full refresh. Theo max : 240*240*16 = 115.2ms) using IRQ and DMA.

Code needs some cleaning before integration.
This commit is contained in:
JF
2020-01-22 21:08:53 +01:00
parent aa3e5c0c6f
commit eb7a1b3ac9
8 changed files with 114 additions and 51 deletions

View File

@@ -37,8 +37,8 @@ void St7789::WriteData(uint8_t data) {
}
void St7789::WriteSpi(const uint8_t* data, size_t size) {
spi.Write(data, size);
void St7789::WriteSpi(const uint8_t* data, size_t size, size_t repeat) {
spi.Write(data, size, repeat);
}
void St7789::SoftwareReset() {
@@ -143,10 +143,11 @@ void St7789::BeginDrawBuffer(uint16_t x, uint16_t y, uint16_t width, uint16_t he
}
void St7789::EndDrawBuffer() {
spi.Wait();
}
void St7789::NextDrawBuffer(const uint8_t *data, size_t size) {
WriteSpi(data, size);
void St7789::NextDrawBuffer(const uint8_t *data, size_t size, size_t repeat) {
WriteSpi(data, size, repeat);
}
void St7789::HardwareReset() {