Самоучитель для микроконтроллеров AVR - Страница 160

Самоучитель для микроконтроллеров AVR - Самоучитель для микроконтроллеров AVR

volatile - ставьте если нужно предотвратить возможность повреждения содержимого переменной в прерывании, и не позволить компилятору попытаться выкинуть её при оптимизации кода. 
Советую ставить если не знаете точно нужно или нет !

пример:
volatile unsigned char x;

static - если переменная локальная т.е. объявлена в какой либо функции и должна сохранять свое значение до следующего вызова этой функции.

eeprom - разместить переменную в EEPROM. Значение таких переменных сохраняется при выключении питания и при перезагрузке МК.

пример:
eeprom unsigned int x;

Если это первая переменная в EEPROM то её младший байт будет помещен в ячейку 1 EEPROM а старший в ячейку 2.  Ячейка 0 не используется так как рекомендует производитель. Необходимо помнить что запись в  EEPROM длительный процесс - по таблице "Table 1. EEPROM Programming Time" это 8500 тактов процессора.

Go to Top