Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

Шаг 3. А теперь ближе к практике: знакомтесь — микроконтроллеры AVR 87 Это полезно запомнить. Область адресов, зарезервированных под векторы прерываний, назы ­ вают таблицей векторов прерываний. В микроконтроллерах семейства «Tiny» эта область начинается с адреса $001. Для большинства микроконтроллеров семейства «Mega» таблица век ­ торов прерываний начинается с адреса $002. При разработке программы для микроконтроллера программист по своему усмотрению может исполь ­ зовать, но может и не использовать механизм прерываний. Если прерывания не используются, то ячейки, зарезервированные под вектора прерываний, можно использовать как обычные ячейки для хра ­ нения программы. Если же вы решили в своей программе использовать прерывания, то по адресу $000 необходимо записать команду безуслов ­ ного перехода, которая должна передавать управление на любой адрес за пределами таблицы векторов прерываний. Именно там и должна начинаться основная программа. В каждую ячейку, соответствующую тому либо иному век ­ тору прерывания, тоже записывается команда безусловного перехода. Каждый такой переход передает управление на начало соответствующей процедуры обработки прерывания. Адресное пространство памяти данных $0000 $0001 $0002 $001 D $001 E $001 F Оперативная память микроконтроллеров AVR Память данных микроконтролле ­ ров AVR представляет собой отдельное адресное пространство с адресами от $0000 до $FFFF. То есть максимальный объем адресуемой памяти составляет 64 Кбайта. Однако большинство микро ­ контроллеров имеет гораздо мень ­ шую память. В таких микроконтрол ­ лерах часть адресов не используется. Структура же памяти всегда одинакова. В графическом виде эта структура изо ­ бражена на рис. 3.3. Посмотрите внима ­ тельно на этот рисунок. Оперативная память микроконтрол ­ леров AVR делится на три области. $0020 $0021 $0022 $005D $005E $005F $0060 $0061 RAMEND- 1 RAMEND RAMEND+1 RAMEND+2 $ҒҒҒЕ $ҒҒҒҒ Пространство регистров R0 R1 R2 R29 R30 R31 $00 $01 $02 $5D $5E $5F Рис. 3.3. Адресное пространство программной памяти

RkJQdWJsaXNoZXIy MTExODQxMg==