Чтение изображений bmp с SD-карты, преобразование их и отображение на последовательном мониторе в Arduino
Может ли кто-нибудь помочь мне написать код, который может считывать 24-битный файл BMP с SD-карты, сохранять преобразованный в 8-битный BMP внутри и отображать значения 8-битных пикселей BMP на терминале Arduino в виде 2D-матрицы. . Программа должна выровнять байты как два HEX-значения на терминале Arduino. Я новичок в этом и не уверен, как это сделать. Мы будем очень признательны за вашу помощь.
Изображение присутствует на SD-карте и закодировано как:
include <SD.h>
include <SD_t3.h>
void setup() {
Serial.begin (9600);
delay (1000);
}
void loop() {
if (!SD.begin (BUILTIN_SDCARD)) {
Serial.println ("NO SDCARD");
while (1);
} else {
Serial.println ("YES SDCARD");
}
delay (1000);
if (SD.exists("filename.BMP")) {
Serial.println ("filename.BMP exists");
} else {
Serial.println ("filename.BMP missing");
while (1);
}
delay (1000);
File hFi = SD.open ("filename.bmp", FILE_READ);
if (hFi == false) {
Serial.println ("File open failed");
while (1);
}
@Li Lo, 👍-1
1 ответ
Вы должны написать свои собственные процедуры. Для начала Посмотрите этот исходный код
Добавьте view-source:https://javl.github .io/image2cpp/
. Хотя это javascript, его можно перенести на C++ в рабочую процедуру преобразования. Важной частью являются процедуры преобразования.
Предупреждение: поскольку память ОС ограничена, вам придется выполнять построчное чтение с SD-карты, преобразовывать строку и записывать построчно обратно, или вы используете максимальный размер 16x16.
По этой причине большинство конвертеров запускаются в браузере или на ПК, а результат используется в Arduino. ESP8266 с 4 МБ памяти облегчил бы жизнь. Для реализации графических подпрограмм на Arduino Teensy загляните в эту игровую библиотеку
- Проблемы с преобразованием byte[] в String
- NodeMCU V3 + SD-карта с Arduino IDE Не работает
- Редактирование определенной позиции в файле, хранящемся на SD-карте
- Как получить свободное/использованное место на SD-карте и передать его
- Как удалить содержимое SD-карты в ардуино?
- Ошибка чтения/записи SD-карты Arduino Mega
- Преобразовать байтовый текстовый файл в массив
- Ошибка StoreProhibited при попытке чтения файла в PROGMEM