Современные
информационные технологии/Программное обеспечение
к.т.н. Турганбай К.Е., магистрант К.А.Алдибекова
Евразийский технологический университет, Казахстан
Прошивка микроконтроллера PIC16F628A
Для
программирования микроконтроллера необходим программатор и программная оболочка
для него. Для программатора для PICмикроконтроллеров используется программная
оболочка “PICkit 2 Programmer” [1].
При запуске
программа производит опрос программатора и автоматически определяет тип программируемого
микроконтроллера по идентификационным битам (так называемому device ID). Микросхемы семейства
Baseline, а также микросхемы EEPROM и KeeLOG не имеют device ID. Чтобы
программа смогла работать с этими микросхемами, нужно выбрать конкретное изделие
через меню "DeviceFamily", рисунок 1.

Рисунок
1 – Подключение устройства
Если
появится картинка как на рисунке 2

Рисунок
2 – Устройство не обнаружено
Необходимо проверить
корректно ли подключенusb-кабель, и через меню "Tools" -
"CheckCommunication" произвести переподключение устройства.
Открытие файла с прошивкой.
Чтобы
записать программу МК в его память, необходимо выбрать в меню пункт
"File" - "ImportHex", как на рисунке 3.

Рисунок
3 – Открытие Hex -файла
Затем
выбрать в открывшемся окне нужный файл прошивки, пример указан на рисунке 4.

Рисунок
4 – Выбор нужного Hex - файла
После этого
в окне памяти программ (ProgramMemory) и данных (EEPROM Data) отобразится
содержимое .hex файла, как на рисунке 5.

Рисунок
5 – Содержимое Hex - файла
Запись программы в МК.
Теперь можно
программировать МК [2]. Для этого жмём кнопку "Write".
Процесс записи занимает 3 - 5 секунд (рисунок 6).

Рисунок 6 –
Программирование МК
Об успешном
выполнении процедуры записи уведомит надпись "ProgrammingSuccessful",
как на рисунке 7.

Рисунок
7 – Успешная запись данных на МК
Для большей
уверенности можно провести процедуру проверки. При нажатии на кнопку
"Verify" программа сравнивает данные hex-файла и данные, записанные в
МК. Если верификация прошла успешно, то в окне сообщений появится надпись
"VerificationSuccessful".
Если вы
прошиваете микроконтроллеры PIC12F675, PIC12F629 и аналогичные с внутренним
тактовым генератором, то при верификации может выскакивать ошибка [3]. Дело в том, что
PICkit2 Programmer (версии 6.21) сохраняет калибровочную константу, а затем
записывает её в последнюю ячейку памяти МК. Понятно, что исходный файл прошивки
и записанные данные в памяти будут отличаться.
Литература:
1.
Предко
М. Руководство по микроконтроллерам. Том 1. / Пер. с англ. под ред.И. И.
Шагурина и С.Б. Лужанского - М.: Постмаркет, 2001. - 416 с.
2.
9“PICkit 2 programmer ” инструкция по использованию
программного продукта
3.
Программируемые
логические ИМС на КМОП-структурах и их применение. / П.П. Мальцев, Н.И.
Гарбузов, А.П. Шарапов, А.А. Кнышев. - М.: Энергоатомиздат, 1998. - 158 с.