Микроконтроллеры

Память контроллера. Виды памяти контроллеров

Staticvoid
24 Авг 2026
1 мин чтения
41 просмотров

Практически все современные контроллеры имеют на своем борту 3 вида  памяти:

Виды памяти контроллеров

  • память программ FLASH;
  • оперативная память (ОЗУ) SRAM (Static RAM);
  • энергонезависимая память данных EEPROM.

Для того чтобы микроконтроллер мог одновременно работать со всеми видами памяти, каждая из областей памяти данных (SRAM и EEPROM) располагается в своем адресном пространстве.  Способы доступа  и адресации к этим областям памяти кроме того различны.

Память контроллера. Виды памяти контроллеров

Flash память программ контроллера

Память программпредставляет собой электрически стираемое ППЗУ (FLASH). В ряде контроллеров память программ делится на 2 секции:

  • Boot Program — секция загрузчика;
  • Application Program — секция прикладных программ.

Эту память допустимо перезаписывать, количество циклов перезаписи более 10 тысяч.

Многие контроллеры могут прошиваться прям на плате т.е. программа заливается в камень уже после монтажа. Для такой операции понадобится специальный разъем.

Для того чтобы адресовать память программ применяется счетчик команд (PC-Program Counter )

В памяти программ есть вектор сброса — в момент подачи напряжения питания микроконтроллер начинает исполнение прошивки с этого адреса, и здесь размещается команда перехода к началу исполняемой прошивки. Кроме того, память программ содержит таблицу векторов прерываний.

При возникновении прерывания после сохранения в стеке текущего значения счетчика команд происходит выполнение команды, расположенной по адресу соответствующего вектора. Поэтому по данным адресам располагаются команды перехода к подпрограммам обработки прерываний.

Положение вектора сброса и таблицы векторов прерываний может быть перенесено из секции прикладных программ в секцию загрузчика.

В некоторых случаях память программ может использоваться не только для хранения кода прошивки, но и для хранения различных констант.

Оперативная память контроллера

Оперативная память, как правило, содержит 3 области:

  • регистры общего назначения;
  • служебные регистры;
  • память для хранения данных.

Служебные регистрыимеют свои имя, адрес и назначение. Они предназначены для конфигурации и обслуживания периферийных узлов контроллера. Краткая характеристика служебных регистров должна быть приведена в руководстве по использованию контроллера (Data Sheet).

Регистры общего назначения(РОН) находятся в непосредственной близости к АЛУ. Однако в микроконтроллерах некоторых фирм (в частности, PIC фирмы Microchip) имеется только один рабочий регистр, играющий роль одного из операндов в командах. Применение набора регистров общего назначения в сочетании с конвейерной обработкой позволяет АЛУ выполнять одну операцию (извлечение операндов из набора регистров, выполнение команды и запись результата обратно в регистр) за один такт.

Среди служебных регистров есть, как правило, один регистр, используемый наиболее часто в процессе выполнения программ. Это регистр состояния. Он содержит набор флагов, показывающих текущее состояние контроллера.

Большинство флагов автоматически устанавливаются в «1» или сбрасываются в «0» при наступлении определенных событий (в соответствии с результатом выполнения команд). Все биты этого регистра доступны как для чтения, так и для записи.

Эта информация анализируется при выполнении условных переходов. При возникновении прерываний содержимое регистра состояния необходимо сохранять программно (чаще всего это является «заботой» компилятора).

Остальная частьоперативной памятипредназначена для хранения пользовательских данных.

Энергонезависимая память данных

Энергонезависимая память данных (EEPROM) организована таким образом, что содержимое каждого байта отдельно может быть считано или записано. Количество циклов перезаписи энергонезависимой памяти превышает 100 тысяч. Энергонезависимая память предназначена для хранения настроек и конфигурации прошивки, то есть тех данных, которые должны сохраняться при пропадании питания.

Чтение и запись данных в EEPROM, как правило, осуществляется посредством использования соответствующих регистров из области служебных регистров SRAM. Как правило, это:

  • регистр адреса при обращении к EEPROM;
  • регистр данных, считанных/записанных в EEPROM;
  • регистр управления чтением-записью EEPROM.

Staticvoid

Администратор сайта https://radiomasters.ru/

Администратор сайта https://radiomasters.ru/

Комментарии (0)

Похожие статьи

Как функционирует микроконтроллер и из чего он состоит Микроконтроллеры
24 Авг 2026 · 1 мин · 60 просм.

Как функционирует микроконтроллер и из чего он состоит

Микроконтроллер (МК) — представляет собой своего рода микрокомпьютер, на котором допустимо выполнять различного рода функции. Этот микрокомпьютер или микросхема функционирует…

Схема инфракрасного управления освещением на контроллере ATmega8 Микроконтроллеры
24 Авг 2026 · 1 мин · 94 просм.

Схема инфракрасного управления освещением на контроллере ATmega8

Устройство инфракрасного управления освещением позволяет дистанционно управлять освещением в вашей комнате или любом другом помещении. Управление происходит при помощи обычного…

Светодиодная мигалка на контроллере ATmega8 для радиолюбителя Микроконтроллеры
24 Авг 2026 · 1 мин · 50 просм.

Светодиодная мигалка на контроллере ATmega8 для радиолюбителя

Светодиодная мигалка на контроллере для радиолюбителя это своего рода «HelloWorld» для программиста. изготовить простую мигалку, конечно допустимо и на мультивибраторе. Взять…