Программа для ЭВМ это упорядоченная последовательность команд, подлежащая обработке
Скачать 1.98 Mb.
|
46.Резидентная (внутренняя) память микроконтроллеров.Типы резидентной памяти Закрытая архитектура современных 8-разрядных МК стала реализуемой лишь при условии интеграции на кристалл МК модулей памяти двух типов: энергонезависимого запоминающего устройства для хранения кодов прикладных программ (ПЗУ) и оперативного запоминающего устройства для хранения промежуточных результатов вычислений (ОЗУ). С точки зрения пользователей МК следует различать пять типов энергонезависимой резидентной памяти.
Кроме ПЗУ в состав МК входит также и статическоеОЗУ. Современные 8-разрядные МК допускают снижение частоты тактирования до сколь угодно малых значений с целью снижения энергии потребления. Содержимое ячеек статического ОЗУ при этом сохраняется в отличие от динамической памяти. В качестве еще одной особенности следует отметить, что многие МК в техническом описании имеют параметр напряжениехраненияинформации. При снижении напряжения питания ниже минимально допустимого уровня, но выше напряжения хранения, программа управления микроконтроллером выполняться не будет, но информация в ОЗУ сохранится. Тогда при восстановлении напряжения питания можно будет выполнить сброс МК и про¬должить выполнение программы без потери данных. Уровень напряжения хранения составляет порядка 1 В. Это позволяет в случае необходимости перевести МК на питание от автономного источника (батарейки или аккумулятора) и сохранить тем самым данные ОЗУ. Большого расхода энергии потребления в этом случае не будет, так как система тактирования МК может быть отключена. Существуют МК, которые в корпусе имеют автономный источник питания, гарантирующий сохранение данных в ОЗУ на протяжении 10 лет (например, МК DS5000 фирмы Dallas Semiconductor). Особенности программирования микроконтроллеров ПЗУ масочного типа предполагает программирование МК только в заводских условиях. ПЗУ типа OTPROM и EPROM могут программироваться непосредственно пользователем, но в режиме программирования требуют подключения источника повышенного напряжения к одному из выводов МК. Для их программирования используются специальные программаторы, в которых требуемая последовательность импульсов программирования с амплитудой 10-25 В создается внешними по отношению к МК средствами. Технология программирования памяти первых трех типов не предполагает изменения содержимого ячеек энергонезависимой памяти в процессе работы устройства под управлением прикладной программы. Возможность осуществлять программирование в процессе управления объектом, без останова выполнения прикладной программы и перевода МК в режим программирования обеспечивают ПЗУ типа EEPROM и FLASH. EEPROM ПЗУ используется не для хранения программ, а для хранения изменяемых в процессе эксплуатации изделия настроек пользователя. Для хранения программ используются ПЗУ типа FLASH (или OTPROM). В современных 8-разрядных МК на кристалл МК интегрируются сразу два типа модулей энергонезависимой памяти: OTPROM или FLASH-для хранения программ и EEPROM – для хранения перепрограммируемых констант. При этом существуют определенные сложности с программированием FLASH ПЗУ под управлением прикладной программы. Проблема состоит в том, что попытка перевода модуля FLASH ПЗУ в режим программирования приведет к невозможности дальнейшего считывания прикладной программы, которая в это FLASH ПЗУ записана. Поэтому та часть программы, которая реализует программирование FLASH ПЗУ, должна быть обязательно расположена в памяти другого типа. Наиболее часто в качестве такой памяти выбирают ОЗУ МК. Если МК допускает возможность выполнения программы, расположенной в ОЗУ, то такой МК становится программируемым в системе (англоязычный термин ISP – In System Programmable). Для того чтобы возможность программирования в системе стала реализуемой, необходимо предусмотреть пути, по которым в ОЗУ МК будет передана программа программирования FLASH ПЗУ, а затем порциями будут передаваться коды прикладной программы, которая должна быть занесена во FLASH ПЗУ (объем кода для программирования значительно превышает объем резидентного ОЗУ МК). В качестве такого пути обычно используется один из последовательных портов МК. Обслуживание порта реализует специальная программа монитора связи, которая расположена в резидентном масочном ПЗУ МК. Эта программа активизируется посредством установки определенных линий ввода/вывода МК в указанное в спецификации состояние при сбросе МК или простым обращением к ней. Способ активизации указан в техническом описании МК. По последовательному интерфейсу в ОЗУ МК сначала загружаются коды программы программирования, а затем порциями коды прикладной программы для программирования. Возможно также решение, при котором программа программирования сразу записана в память масочного типа и не требует загрузки в ОЗУ МК. Рассмотренный режим программирования в системе в настоящее время в основном используется для занесения прикладной программы в МК, расположенный на плате конечного изделия. Специальный программатор в этом случае не нужен. Кроме того, надежность программирования гарантируется внутренними режимами МК и не зависит от схемных решений программатора |