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

88 Микроконтроллеры AVR от азов программирования... ♦ $0000 — $001F — область памяти, совмещенная с регистрами обще ­ го назначения (РОН). ♦ $0020 — $005Ғ — область памяти, совмещенная с регистрами ввода- вывода (РВВ). ♦ $0060 —$ҒҒҒҒ — не совмещенная ни с чем область памяти. Эта последняя область предназначена просто для хранения данных. Эту область в свою очередь можно разделить на область внутреннего ОЗУ ($0060 — RAMEND) и область внешнего ОЗУ (RAMEND+1 — $ҒҒҒҒ). Под RAMEND понимается адрес последней ячейки внутреннего ОЗУ кон ­ кретного микроконтроллера. Рассмотрим каждую область памяти подробнее. Область памяти, совмещенная с набором регистров общего назначения (РОН) Эта область существует во всех микроконтроллерах AVR. Она зани ­ мает ячейки с адресами с $0000 по $00 1Е Все ячейки этой области памяти одновременно являются регистрами общего назначения (смотри выше). То есть записывая байт данных в ячейку памяти с адресом $0000, вы на самом деле записываете ее в регистр R0. И наоборот. Соответствие ячеек памяти и регистров общего назначение показано на рис. 3.3. Двойной доступ к РОН существенно увеличивает гибкость программ. Область памяти, совмещенная с регистрами ввода-вывода (РВВ) Область памяти с адреса $0020 по адрес $005F совмещена с регистрами ввода-вывода. В адресном пространстве ОЗУ это соответствует адресам $0020 — $005Е Каждому регистру ввода-вывода соответствует своя ячейка в ОЗУ Как уже говорилось, реальное количество регистров ввода-вывода почти всегда гораздо меньше их максимально возможного количества. Однако данная область памяти всегда используется только для этой цели. Если регистр существует, то существует и соответствующая ячейка памяти. Остальные же ячейки из этой области ОЗУ просто отсутствуют. На рис. 3.3 показано соответствие регистров общего назначения и ячеек памяти. Из рисунка видно, что адрес ячейки памяти всегда больше номера соответствующего РВВ на постоянную величину, равную 32 ($20). Область внутреннего ОЗУ Пространство ОЗУ с адреса $0060 и выше не выполняет никаких дополнительных функций и предназначено исключительно для оператив ­ ного хранения данных. Объем (а, значит, и конечный адрес) этой обла ­ сти ОЗУ для разных микросхем разный. Именно этот объем приведен в табл. 3.1 в графе «SRAM».

RkJQdWJsaXNoZXIy MTExODQxMg==