Джон Ловин - Создаем робота-андроида своими руками
Программное обеспечение платы программатора EPIC
Существуют две версии программного обеспечения EPIC: EPIC.exe под систему DOS и EPICWIN.exe под Windows. Матобеспечение под Windows является 32-разрядным и может использоваться под версии Windows 95, 98 и NT, но не подходит для 3.Х.
Использование DOS версии EPICПри использовании версии Windows 95 или выше вы можете открыть окно MS-DOS prompt или перезагрузить компьютер в DOS моде. Под Windows 3.ХХ необходимо завершить сессию.
Предположим, что мы находимся в DOS моде и только что завершили компилирование wink.bas с помощью компилятора pbc. Скопируйте файл wink.hex в директорию EPIC. В моде DOS prompt наберите «EPIC» и нажмите клавишу ввода для запуска DOS версии программы EPIC (см. рис. 6.11).
Рис. 6.11. Команды EPIC
Отображение программы EPIC на мониторе показано на рис. 6.12. Используйте мышь для нажатия на клавишу Open или нажмите Alt + O на клавиатуре. Выберите файл wink.hex (см. рис. 6.13). Когда hex файл загрузится, вы увидите последовательность чисел в окне слева (см. рис. 6.14). Эта последовательность является машинным кодом программы. На правой стороне экрана высвечиваются параметры конфигурации, которые нам необходимо будет установить перед началом программирования PIC ИС.
Рис. 6.12. Окно программы EPIC
Рис. 6.13. Выбор шестнадцатеричного файла
Рис. 6.14. Шестнадцатеричный файл, загруженный в программу EPIC
Просмотрим в порядке очередности список параметров конфигурации:
• Device: Определение типа устройства. Установим параметр 8Х.
• ROM size (K): Устанавливает емкость памяти ПЗУ. Выберем 1.
• OSC: Установка типа осциллятора. Выберем ХТ для кварцевого резонатора.
• Watchdog timer: Выберем On.
• Code protect: Выберем Off
• Power-up time enable: Выберем High.
После установки параметров вставьте PIC микроконтроллер 16F84 в панельку. Щелкните по Program или нажмите Alt + P на клавиатуре для запуска программирования. Прежде всего программа EPIC определяет, является ли память ИС микроконтроллера «пустой». В этом случае EPIC программа инсталлирует заданную вами программу в микроконтроллер. Если память микроконтроллера не пуста, то выдается опция прервать выполнение программы или записать новую программу поверх существующей. Если в памяти микроконтроллера уже существует какая-то программа – записывайте поверх нее. По мере программирования PIC рабочие строки машинного кода подсвечиваются. После окончания процесса микроконтроллер запрограммирован и полностью готов к работе.
Проверка PIC микроконтроллера
На приведенной схеме видно, что для обеспечения работы микроконтроллера требуется очень небольшое количество дополнительных деталей. Прежде всего необходим резистор смещения, присоединенный к выводу 4 (MCLR), кварцевый резонатор на частоту 4 МГц с двумя конденсаторами по 22 пФ и источник питания 5 В.
На выходе устройства подключены два светодиода, соединенные последовательно с ограничительными резисторами. Они позволят оценить нам правильность работы микроконтроллера. Соедините компоненты без помощи пайки на макетной плате в соответствии со схемой на рис. 6.15. Готовое устройство будет иметь вид, подобный изображенному на рис. 6.16.
Рис. 6.15. Схема
Рис. 6.16. Схема, смонтированная на макетной плате
Хотя спецификация на ИС 16F84 утверждает, что микроконтроллер способен работать в интервале напряжений от 2 до 6 В, я предпочел использование стабилизированного источника питания 5 В. Стабилизатор напряжения включает регулятор напряжения на ИС 7805 и два конденсатора фильтра.
Мигание
Подайте напряжение питания на схему. Светодиоды, подключенные к ИС, начнут попеременно включаться и выключаться, поочередно мигая… Теперь вы знаете, что для программирования микроконтроллера и его запуска требуются совсем небольшие усилия.
По мере накопления опыта использование компилятора и программатора станет вашей «второй натурой». Процедура перестанет быть для вас «пошаговой», и все ваше внимание сосредоточится на создании наиболее эффективных программ на PICBASIC. Так должно быть и так будет.
Проверка неисправностей
В данной простой схеме ошибки практически не встречаются. Если Светодиоды не включаются, то необходимо проверить полярность их включения. Если они включены с обратной полярностью, то они не будут зажигаться.
Компилятор PICBASIC Pro
Существует старшая версия компилятора PICBASIC, которая имеет название PICBASIC Professional компилятор. Версия Pro компилятора гораздо бо-: лее дорогая и стоит порядка $249,95. Версия Pro имеет гораздо больший и развернутый набор команд, чем стандартная версия компилятора. Некоторые из таких команд, которые содержатся в Pro версии, могут управлять прерываниями, обеспечивают прямое управление ЖК-дисплеем, генерируют тоны DTMF и выдают команды Х-10.
Хотя данная версия является в целом более совершенной, она не поддерживает две из моих любимых (и очень полезных) команд: команду Peek (прочитать байт по адресу) и команду Poke (записать байт по адресу). Хотя в описании эти команды отмечены как «полезные», подчеркивается, что для версии PICBASIC Pro они не могут быть использованы. Если отбросить эмоции, такое решение представляется неудачным хотя бы потому, что оно разрушает вертикальную совместимость компиляторов PICBASIC, если в программе используются команды Peek или Poke.
Новые возможности интегрированной среды обработки (IDE)
С недавнего времени компиляторы PICBASIC и PICBASIC Pro комплектуются дополнительной дискетой, содержащей интерфейс интегрированной среды обработки информации (integrated development environment IDE), который имеет название CodeDesigner Lit (см. рис. 6.17). CodeDesigner Lite позволяет составлять и компилировать программы PICBASIC в оболочке Windows. Каждый оператор выделяется цветом, что позволяет с большей наглядностью выделять ошибки и вычитывать коды. Демонстрационная версия позволяет писать программы длиной до 150 строк и одновременно открывать до трех файлов с целью облегчения их перемещения и копирования.
Рис. 6.17. CodeDesigner Line
Наиболее важной чертой интерфейса CodeDesigner IDE является возможность сперва ввести исходный текст программы, потом компилировать программу в машинный код и, наконец (теоретически), запрограммировать микроконтроллер в пределах одного окна Windows. Такая компоновка уменьшает время работы программы. Обычно я пишу программу в DOS моде или использую окно MS-DOS Prompt под Windows. После окончания я выхожу из режима редактора и вручную компилирую программу. Если программа содержит ошибки (что чаще всего и происходит), я опять вхожу в редактор и произвожу отладку программы. Когда программа полностью отлажена, я загружаю ее в микроконтроллер с помощью программатора и программы EPIC. После этого производится тестирование микроконтроллера и остальной схемы. Если все работает правильно, то задача решена; в противном случае я начинаю переписывать программу.
При использовании CodeDesigner легкость написания и отладки программы на PICBASIC, а также загрузки ее в микроконтроллер сильно повышают производительность работы. Мой опыт показывает, что оптимальным является создание и отладка программы под Windows, но программирование лучше осуществляется в DOS моде.
Демонстрационной версии CodeDesigner Lite для большинства случаев оказывается достаточно, но по желанию можно расширить ее до полной версии CodeDesigner. CodeDesigner имеет любительскую версию за $45,00 и стандартную версию за $75,00.
Любительская версия CodeDesigner может работать только с компилятором PICBASIC. Стандартная версия поддерживает оба компилятора: PICBASIC и PICBASIC Pro. Некоторые отличительные характеристики CodeDesigner приведены ниже:
• Автодополнение текста: CodeDesigner делает написание текста программы более простым с помощью всплывающих окон Windows, автоматически заполняемых необходимыми операторами и данными.
• Поддержка работы с несколькими файлами.
• Подсвечивание строк, содержащих ошибки: CodeDesigner во время компиляции текста PICBASIC считывает информацию об ошибках и подсвечивает соответствующие строки программы.
• Синтаксическая поддержка: Опция оперативной синтаксической поддержки отображает синтаксис операторов среди допустимых операторов PICBASIC.
• Описание оператора: Если оператор является допустимым для PICBASIC, дескриптор оператора появляется в поле строки состояния.
• Разъяснения функций операторов: Достаточно поставить курсор на оператор PICBASIC, чтобы получить разъяснения его функции.
• Список меток: Окно списка меток высвечивает текущую метку и позволяет вам выбрать нужную метку из списка для осуществления перехода.
• Выделение цветом в PICBASIC: Возможно выделять различным цветом различные слова, строки, данные, комментарии, определения и т. д. Подобное выделение позволяет более легко читать текст программы PICBASIC.
• Закладки: Для отметки нужных мест в программе CodeDesigner имеет систему закладок.