Есть ли способ избежать использования массива в PROGMEM в Arduino или изменить его? - PullRequest
0 голосов
/ 29 января 2020

Я использую SSD SSD1306 с Arduino. Я пытаюсь отправить растровые данные через модуль Bluetooth H C -05, чтобы я мог отобразить растровое изображение на OLED.

Проблема, с которой я сталкиваюсь:

const uint8_t frame1[] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0xff, 0xff,...}

Вышеупомянутый массив frame1 [] существующего битмапа имеет тип const и сохраняется в PROGMEM (должен иметь тип const), и, следовательно, массив не может быть изменен. Можно ли каким-либо другим способом отобразить полученные данные или даже изменить массив frame1 [], чтобы мгновенно отображать растровое изображение при получении растровых данных через Bluetooth?

PS: я использую Библиотека U8g для отображения

1 Ответ

0 голосов
/ 29 января 2020

Примерно так:

uint8_t frame1[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,...};

Вам не нужно сохранять массив в ваших arduinos PROGMEM , вы также можете сохранить его как обычный массив.

Это может быть проблемой, только если ваш arduinos ram слишком мал, так что кадр может поместиться только в PROGMEM - просто попробуйте

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...