+2 голосов
Я знаю, что на arduino uno есть 3 типа памяти: RAM, FLASH, EEPROM. При этом EEPROM и FLASH являются энергонезависимыми типами.

Как использовать EEPROM я узнал, но есть ли способы использовать FLASH для хранения своих данных, если скетч не занимает весь её объем?
(925 баллов) 40 74 103

1 Ответ

0 голосов
Ключевое слово PROGMEM записывает данные не в SRAM, а во flash-память (т.е. в программную память). Описание типов памяти, доступных на
Arduino , можно найти тут .
Ключевое слово RROGMEM — это модификатор переменных, и его можно использовать только с теми типами данных, которые определены в библиотеке
pgmspace.h . Он говорит компилятору
«разместить информацию во flash-памяти» , а не в SRAM , как это происходит обычно. Также есть интересная функция  F()
Подробней тут: [URL=http://wikihandbk.com/wiki/Arduino:Справочник_языка_Arduino/PROGMEM
(3.1 тыс. баллов) 15 20 41
PROGMEM пишет константы во флеш, а не переменные. Не надо путать эти понятия.
Добро пожаловать на Бредборд! Сайт вопросов и ответов на тему Arduino, Raspberry Pi и хоббийной электроники в целом. Цель Бредборда — быть максимально полезным. Поэтому мы строго следим за соблюдением правил, боремся с холиворами и оффтопиком.
  1. KrSV

    2 балл(ов)

  2. Палыч

    2 балл(ов)

  3. Дамир

    2 балл(ов)

  4. lcco

    2 балл(ов)

  5. Ergamister

    2 балл(ов)

  6. Александр312

    2 балл(ов)

...