int main(int argc, char* argv[])
{
gfxInit();
// uint8_t workBuffer[2048];
// volatile FRESULT mkResult = f_mkfs("QSPI", FM_FAT | FM_SFD, 4*512, workBuffer, 2048);
gdispSetBacklight(100);
gdispSetContrast(100);
geventListenerInit(&glistener);
gwinAttachListener(&glistener);
guiCreate();
// writeUgfxImage();
volatile uint8_t arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
volatile uint8_t readArr[10];
volatile uint8_t readArr2[10];
// writeSimpleFile("test.png", arr, 10);
readSimpleFile("test.png", readArr, 10); \\ this read array with values of arr[10]
readUgfxFile2("F|test.png", readArr2, 10); \\ this with zeros
readUgfxFile("F|test.png"); \\ this with zeros
while (1) {
// chThdSleepMilliseconds(300);
guiEventLoop();
}
return 0;
}
void writeSimpleFile(char* name, uint8_t *buff, UINT n) {
FATFS fileSystem;
FIL testFile;
f_mount(&fileSystem, "QSPI", 1);
volatile UINT sizeB = 0;
volatile FRESULT ttt = f_open(&testFile, name, FA_CREATE_ALWAYS | FA_WRITE);
volatile FRESULT writeFl = f_write (&testFile, buff, n, &sizeB);
volatile closeSt = f_close(&testFile);
}
void readSimpleFile(char* name, uint8_t *buff, UINT n) {
FATFS fileSystem;
FIL testFile;
f_mount(&fileSystem, "QSPI", 1);
volatile UINT sizeB = 0;
volatile FRESULT ttrt = f_open(&testFile, name, FA_READ);
volatile FRESULT readStatus = f_read (&testFile, buff, n, &sizeB);
volatile closeSrt = f_close(&testFile);
}
void writeUgfxImage() {
volatile bool_t resultMount = gfileMount('F', "QSPI");
volatile GFILE* imgFile;
volatile GFILE *imgFatFile;
imgFile = gfileOpen("S|test-pal8.bmp", "rb");
imgFatFile = gfileOpen("F|testpal.bmp", "wx");
volatile uint16_t imgSize = gfileGetSize(imgFile);
volatile uint8_t *imgBuf = gfxAlloc(gfileGetSize(imgFile));
gfileRead(imgFile, imgBuf, gfileGetSize(imgFile));
gfileWrite(imgFatFile, imgBuf, imgSize);
gfileClose(imgFatFile);
gfileClose(imgFile);
}
void readUgfxFile(char *name) {
volatile bool_t resultMount = gfileMount('F', "QSPI");
volatile GFILE* imgFile;
imgFile = gfileOpen(name, "rb");
volatile uint16_t imgSize = gfileGetSize(imgFile);
volatile uint8_t *imgBuf = gfxAlloc(gfileGetSize(imgFile));
gfileRead(imgFile, imgBuf, gfileGetSize(imgFile));
gfileClose(imgFile);
}
void readUgfxFile2(char *name, uint8_t *buff, UINT n) {
volatile bool_t resultMount = gfileMount('F', "QSPI");
volatile GFILE* imgFile;
imgFile = gfileOpen(name, "rb");
volatile UINT sizeB = 0;
FIL* testFile = (FIL*) imgFile->obj;
volatile FRESULT readStatus = f_read (testFile, buff, n, &sizeB);
volatile closeSrt = f_close(testFile);
}
void displayImage(GFILE *imgFatFile) {
coord_t swidth, sheight;
volatile bool_t resultMount = gfileMount('F', "QSPI");
swidth = gdispGetWidth();
sheight = gdispGetHeight();
gfileSetPos(imgFatFile, 0);
volatile gdispImageError received_error = gdispImageOpenGFile(&myImage, imgFatFile);
gdispImageDraw(&myImage, 0, 0, swidth, sheight, 0, 0);
gdispImageClose(&myImage);
}
readUgfxFile(2) not working, returns array with zeros