Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБ_МИУС_14.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.81 Mб
Скачать

Лабораторная работа Этапы Подготовки программного обеспечения для микропроцессорных систем. Программаторы

1. Цель работы

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

2. Общие сведения

2.1. Программатор - программно-аппаратное устройство, предназначенное для записи/считывания информации в память микропроцессорной системы (ПЗУ, внутреннюю память микроконтроллеров или ПЛИС). Семейство универсальных программаторов фирмы "Фитон" включает в себя следующие изделия: ChipProg, ChipProg+, MultiProg.

Они предназначены для программирования микросхем:

  • памяти EPROM, EEPROM и FLASH с параллельным интерфейсом;

  • памяти SEEPROM с последовательными интерфейсами I2C, MICRO WIRE, SPI;

  • микроконтроллеров различных семейств;

  • программируемой логики PLD.

Программатор оснащен универсальной ZIF-колодкой, что позволяет производить программирование микросхем в корпусе DIP с количеством выводов до 40, а при использовании дополнительных адаптеров, программировать микросхемы в корпусах PLCC и SOIC.

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

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

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

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

  • чтение содержимого микросхемы,

  • стирание содержимого (только для электрически перепрограммируемых микросхем),

  • контроль чистоты микросхемы,

  • программирование микросхемы,

  • сравнение содержимого микросхемы с содержимым буфера,

  • установка защиты содержимого микросхемы.

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

Идеология взаимодействия с микросхемами построена по схеме Файл Буфер Микросхема. Все операции с файлом (загрузка/сохранение) и манипуляции с микросхемой (чтение, запись, сравнение) производятся только через специально реализованные промежуточные буферы.

Подготовка к работе, порядок работы с программатором:

  1. удалить микросхему из колодки программатора (если она была установлена).

  2. Подключить программатор к сети (должен загореться зеленый светодиод).

  3. подсоединить программатор к LPT порту компьютера с помощью кабеля связи.

  4. Запустить программу Phyton xxxProg.

  5. Выбрать тип микросхемы.

  6. Установить микросхему в ZIF-колодку в соответствии с ключом на корпусе программатора.

  7. выполнить необходимые действия (чтение, запись, сравнение др.).

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

2.2. Для записи (прошивки) кода полученной программы в память программатор использует шестнадцатеричный формат объектного файла - способ представления абсолютного двоичного объектного файла в символах ASCII.

По историческим причинам стандартом де-факто давно стал формат Intel HEX (Hexadecimal Object File). Достоинством этого формата, в отличие от простого двоичного, является возможность указывать с точностью до байта определенные области адресов памяти.

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

:NNAAAA0SD0…DFCS

Каждая строка содержит следующие группы:

NN - число в байт строке (чаще всего шестнадцать байт),

АААА - адрес первого байта строки,

0S - тип записи (если последняя строка - 01, иначе 00),

D0…DF - последовательность байтовых данных,

CS - контрольная сумма (сумма всех байт в строке равна 00)

Типы записей бывают шести типов:

00 - Data Record (данные) 01 - End of File Record (конец файла) 02 - Extended Segment Address Record (адрес расширенного сегмента) 03 - Start Segment Address Record (адрес начала сегмента) 04 - Extended Linear Address Record (расширенный линейный адрес) 05 - Start Linear Address Record (линейный адреса).

Пример hex-файла

:10000000C291759840758920758DF4D28E75992AA4

:1000100011193099FDC29980F4D291792ED9FEC27E

:0200200091222B

:00000001FF

Расшифровка строк:

:0200200091222B 2 байта размещены по адресу 0020h, тип данные, байты 91h и 22h, их контрольная сумма 2Bh.

:00000001FF - последняя строка файла.