Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УП МПУ-13.doc
Скачиваний:
7
Добавлен:
01.04.2025
Размер:
5.78 Mб
Скачать

2.4. Средства загрузки кодов программ и данных (программаторы)

Для размещения кодов программы и данных (констант) в энергонезависимой памяти МК/МП используются разные технологии и устройства.

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

Самыми гибкими являются микросхемы с многократно стираемым и программируемым ПЗУ.

Сегодня многократно программируемые ПЗУ базируются на технологиях EEPROM и FlashROM (электрически стираемые и программируемые). Еще одним широко распространенным атрибутом стало наличие в кристалле узла загрузки/стирания/выгрузки, управляемого извне через один или несколько последовательных интерфейсов. Это позволяет выполнять процедуры редактирования программы/данных непосредственно на целевой плате, что значительно упрощает разработку и отладку программного обеспечения, поддержку развития программы на этапе эксплуатации платы.

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

Для проверки связи и автоматической настройки каждая модель МК оснащена уникальным номером (signature bytes).

МК серии AVR уже на этапе разработки серии были оснащены механизмом программирования «в системе» (In System ProgrammingISP). Кроме того, старшие модели подсемейства ATmega и ATxmega стали оснащать встроенным интерфейсом JTAG, который кроме загрузки/выгрузки кодов программ/данных выполняет функции внутрисхемного отладчика.

Технология ISP использует один вывод кристалла для перевода в режим программирования (вход RESET в низком состоянии) и три вывода собственно для подачи специальных команд, загрузки данных и выгрузки данных. Последние выводы называются не всегда одинаково, но работают по единому алгоритму последовательного синхронного интерфейса SPI в режиме ведомого. Один вывод служит для подачи к МК тактов (SCK), второй для подачи команд/данных MOSI/PDI, третий – для чтения данных MISO/PDO. Как правило, все эти функции выводов альтернативные, то есть когда МК не в режиме сброса-программирования, они могут использоваться как выводы портов и пр.

В качестве устройства, управляющего процессом загрузки/выгрузки используется персональный компьютер. Для этого используется специальный кабель-загрузчик (download cable), один конец которого подключается к одному из интерфейсных разъемов компьютера (LPT, COM, USB), другой – к разъему загрузки/выгрузки на плате с целевым МК. Чаще всего загрузочный кабель оснащен встроенным преобразователем интерфейса.

Программное управление процессом загрузки/выгрузки выполняет программа-загрузчик, работающая автономно или в составе пакета (среды) проектирования программ.

Для загрузки/выгрузки МК серии AVR используются среда AVRStudio (Tools Program_AVR), CodeVisionAVR (Tools Chip_Programmer) и пр., либо автономные программы – Kanda_System, PonyProg, Avreal и пр. Они поддерживают работу через различные кабели загрузки.