display tests

This commit is contained in:
Wolfgang Hottgenroth 2024-03-12 17:53:42 +01:00
parent 88e0cff853
commit 633fc814b2
4 changed files with 27 additions and 3 deletions

View File

@ -11,7 +11,7 @@ CFLAGS=-Wall -mmcu=$(MCU) -std=gnu99 -I $(TOOLCHAIN_PREFIX)/include -O3 -g0
LDFLAGS=-mmcu=$(MCU) -L $(TOOLCHAIN_PREFIX)/include
$(ARTIFACT).elf: main.o led.o time.o PontCoopScheduler.o displayDriver.o canvas.o displayTest.o
$(ARTIFACT).elf: main.o led.o time.o PontCoopScheduler.o displayDriver.o canvas.o displayTest.o displayTest2.o displayTest3.o displayTest4.o
$(CC) -o $@ $(LDFLAGS) $^
$(OBJDUMP) -D $(ARTIFACT).elf > $(ARTIFACT).txt

View File

@ -31,3 +31,23 @@ void canvasShow() {
void canvasSetPixel(uint8_t column, uint8_t row, uint8_t color) {
*((canvas.canvas) + (row * canvas.width + column)) = (color + 0x80);
}
void canvasWipeRow(uint8_t row) {
memmove(((canvas.canvas)+canvas.width), canvas.canvas, canvas.width*row);
for (uint8_t i = 10; i < canvas.width*(row+1); i++) {
*((canvas.canvas)+i) += 0x80;
}
memset(canvas.canvas, 0x80, canvas.width);
}
uint8_t canvasIsRowFilled(uint8_t row) {
uint8_t res = 1;
for (uint8_t column = 0; column < canvas.width; column++) {
if (*((canvas.canvas) + (row * canvas.width + column)) == 0) {
res = 0;
break;
}
}
return res;
}

View File

@ -18,7 +18,8 @@ void canvasInit();
canvas_t *canvasGet();
void canvasShow();
void canvasSetPixel(uint8_t column, uint8_t row, uint8_t color);
void canvasWipeRow(uint8_t row);
uint8_t canvasIsRowFilled(uint8_t row);
#endif // _CANVAS_H_

5
main.c
View File

@ -9,6 +9,9 @@
#include "displayDriver.h"
#include "canvas.h"
#include "displayTest.h"
#include "displayTest2.h"
#include "displayTest3.h"
#include "displayTest4.h"
int main() {
@ -29,7 +32,7 @@ int main() {
ledInit();
displayDriverInit();
canvasInit();
displayTestInit();
displayTest3Init();
__enable_interrupt();