Программаторы для Flash PIC микроконтроллеров
Публикуется с согласие автора - Девида Тайта
Оригинал этой статьи на английском языке можно взять здесь
Введение
Я получаю много вопросов о том, какое программное обеспечение лучше всего использовать с моими конструкциями программаторов для PIC микроконтроллеров:
- Классический программатор (версия Тайта)
- "Быстрый и примитивный" программатор (the "quick-and-dirty" programmer)
- TOPIC
- Низковольтовый программатор TOPIC2 (новинка)
- PARPIC
- SERPIC
- Внутрисхемный программатор (PMICP) ("Poor Man's In-Circuit Programmer") (новинка)
Если Вы раньше не пользовались ни одним из них, то более подробную информацию по программаторам для PIC микроконтроллеров, включая мои старые программы для DOS, можно взять на этих сайтах.
Эти конструкции настолько просты потому, что компьютер обеспечивает весь "механизм", необходимый для программирования микроконтроллеров. Аппаратная часть программаторов предназначена для прямого подключения микроконтроллера к параллельному (принтерному) или последовательному порту компьютера. Как правило, компьютер переводит микроконтроллер в режим программирования (хотя для максимально простого варианта это можно выполнить вручную) и затем производит загрузку программы из шестнадцатиричного файла в микроконтроллер посредством комбинации управляющих сигналов на выводах микроконтроллера. В ранних моделях EEPROM PIC микроконтроллеров (например, 16C84) вход в режим программирования выполняется при подаче напряжения около 12В на вывод /MCLR, но более новые модели обеспечивают переход в режим программирования без использования этого напряжения. Несмотря на различия в размерах памяти большинство Flash PIC микроконтроллеров используют одинаковое программное обеспечение (за исключением микроконтроллеров типа 16F74 - в настоящее время эта программа с ними не работает). Все, что необходимо выполнять программному обеспечению любого PIC программатора с простой аппаратной частью - это генерация и обработка следующих логических сигналов:
Это все, что выполняет мое программное обеспечение.Оно также определяет, какой сигнал передается через какой разряд порта. Не все сигналы необходимы для программирования PIC. Например, для управления "быстрым и примитивным" ("quick-and-dirty") программатором, необходимы только сигналы OUT и CLK. Это происходит потому, что режим программирования устанавливается вручную (подключением /MCLR к 12В) и чтение из микроконтроллера невозможно.
- OUT -- данные (data) из компьютера в микроконтроллер (обычно RB7)
- CLK -- синхронизания (clock) из компьютера в микроконтроллер (обычно RB6)
- VDD -- включение напряжения питания +5В для микроконтроллера (необязательно)
- MCLR -- управление контактом /MCLR микроконтроллера
- PGM -- используется (с MCLR) для перевод микроконтроллера в режим программирования
- READ -- высокий уровень, когда микроконтроллер должен выполнять операцию чтение
- IN -- данные из микроконтроллера (тоже RB7) в компьютер.
В его существующем состоянии, еще незаконченном, программное обеспечение достаточно работоспособно, чтобы быть полезным (я надеюсь). Я реализовал исполняемый файл для Win32 (FPP.EXE), исполняемый файл для DOS (FPPDOS.EXE) и пакетный файл (FPP.BAT) для запуска FPP.EXE из MPLAB. Когда программное обеспечение для Windows запускается впервые, его необходимо сконфигурировать для используемой аппаратной части программатора нажатием кнопки "Setup".
Запуск FPP под NT/Win2k/XP
FPP работает с портами ввода/вывода напрямую. Это допустимо в Win9x/Me, то недопустимо в Windows NT/2000/XP. Для выполнения своих функций программа ищет и использует специальный драйвер "GIVEIO.SYS". Его можно загрузить из архива журнала Dr Dobb's: directio.zip. Этот драйвер вам необходим только в случае, если у вас Windows NT/2000/XP. Драйвер может быть установлен различными способами, но я использую программу "LOADDRV.EXE" (ее можно взять здесь: loaddrv.zip) Я использую следующий метод:
- Скопировать GIVEIO.SYS в каталог (например, SYSTEM32 в системном каталоге Windows)
- Запустить LOADDRV, указать полный путь к каталогу, в котором находится GIVEIO.SYS и нажать "Install"
- Перегрузить компьютер
- Загрузить менеджер устройств (из закладки "Оборудование" системной Панели управления)
- Выбрать опцию меню для показа скрытых устройств
- Найти GIVEIO среди драйверов non-plug&play, нажмите правую кнопку и выберите "Свойства"
- Выберите закладку "Драйвер" в сойствах и выберите "Автомат"
- Перегрузите компьютер
Использование FPP
Продолжение следует...Параметры командной строки
Продолжение следует...Использование FPP вместе с MPLAB
Продолжение следует...
Copyright © 2001 David Tait
Перевод Юрия Лысенкова (support@yusoft.pp.ru)
Более подробное описание функционирования PIC микроконтроллеров серий 16C5x, 16C71, 16C84 на русском языке, программаторы для них, а также программу для реализации автомата световых эффектов Вы найдете на сайте "PIC микроконтроллеры и их программирование".