Разработка программного обеспечения для микроконтроллера в интегрированной среде проектирования MPLAB-IDE
Микроконтроллеры PICmicro обеспечены большим спектром аппаратных и программных инструментальных средств проектирования:
Интегрированная среда проектирования:
- программное обеспечение MPLAB-IDE;
Ассемблер/Компилятор/Линкер:
- ассемблер MPASM;
- компиляторы MLAB-C17 и MPLAB-C18;
- линкер MPLINK/ Организатор библиотек MPLIB;
Симулятор:
- программный симулятор MLAB-SIM;
Эмуляторы:
- внутрисхемный эмулятор реального времени MPLAB-ICE2000;
- ICEPIC;
Внутрисхемный отладчик:
- MLAB-ICD;
Программаторы:
- универсальный программатор PRO MATE II;
- недорогой программатор PICSTART для начала работы с PICmicro;
Недорогие демонстрационные платы:
- PICDEM-1;
- PICDEM-2;
- PICDEM-3;
- PICDEM-17;
- KeeLoq;
3.3.1 Интегрированная среда проектирования MPLAB-IDE
Программное обеспечение MPLAB-IDE предназначено для разработки программного обеспечения 8, 16 и 32 разрядных микроконтроллеров PICmicro, работающее под управлением операционной системы Windows [13].
Основные характеристики MPLAB-IDE:
Многофункциональные возможности:
- редактор;
- симулятор;
- программатор;
- эмулятор;
- полнофункциональный редактор;
- организатор проекта;
- настройка панелей инструментов и параметров отображения;
- строка состояния;
- интерактивная помощь;
MPLAB-IDE позволяет Вам:
- редактировать исходные файлы написанные на языке ассемблера или C;
- быстро выполнять трансляцию и компиляцию проекта автоматически загружая параметры используемого микроконтроллера PIC;
Выполнять отладку программы с использованием:
- исходных файлов;
- листинга программы;
- объектного кода;
Однотипная работа инструментальных модулей интегрированной среды проектирования MPLAB-IDE позволяет легко перейти от программного симулятора MPLAB-SIM к использованию полнофункционального эмулятора.
3.3.2 Ассемблер MPASM
MPASM - полнофункциональный универсальный макроассемблер для всех семейств микроконтроллеров PICmicro. Ассемблер может генерировать шестнадцатиразрядный файл пригодный для записи в микроконтроллер или формировать перемещаемые объектные файлы для линкера MPLINK. MPASM имеет интерфейс командной строки и оконный интерфейс, работает под управлением операционной системы Windows XР и выше. Может работать как автономное приложение. MPASM генерирует объектные файлы, шестнадцатеричные HEX файлы в стандарте Intel, файл карты памяти (для детализации использования памяти микроконтроллера), файл листинга программы (текст программы совмещен с кодами микроконтроллера) и файл отладки для MPLAB-IDE.
Особенности MPASM:
- MPASM и MPLINK интегрированы в MPLAB-IDE;
- MPASM поддерживает систему макрокоманд, упрощающих написание текста программы;
- Позволяет выполнять компиляцию условных блоков текста программы;
- директивы MPASM дают возможность управлять компиляцией исходного текста программы.
3.3.3 C компиляторы MPLAB-C17 и MPLAB-C18.
MPLAB-C17 и MPLAB-C18 - полнофункциональные ANSI 'C' компиляторы с интегрированной средой разработки для микроконтроллеров семейств PIC17CXXX и PIC18CXXX соответственно. Для упрощения отладки текста программы компиляторы обеспечивают интеграцию в средства проектирования с передачей информации об используемых переменных в формате совместимом с MPLAB-IDE.
3.3.4 Линкер MPLINK, организатор библиотек MPLIB.
MPLINK - линкер перемещаемых объектных файлов, сгенерированных программами MPASM, MPLAB-C17 и MPLAB-C18. Линкер выполняет связь объектных файлов с предварительно компилированными файлами библиотек и файлами сценария. MPLIB - организатор библиотек предварительно откомпилированных исходных файлов, которые нужно использовать с MPLINK. Когда подпрограмма библиотечного файла вызывается из исходного файла, в приложение будет включена только необходимый модуль. Это позволяет эффективно использовать большие библиотеки в различных приложениях. MPLIB управляет созданием и изменением библиотечных файлов.
Особенности MPLINK:
- MPLINK работает совместно с MPASM, MPLAB-C17 и MPLAB-C18;
- MPLINK позволяет разбивать память микроконтроллера на разделы;
Особенности MPLIB:
-MPLIB упрощает подключение дополнительных файлов потому, что позволяет подключить одну библиотеку вместо множества мелких файлов;
- MPLIB группирует связанные модули;
-MPLIB позволяет добавлять, изменять, удалять и заменять модули в библиотечных файлах. ;
3.3.5 Программный симулятор MPLAB-SIM
Симулятор MPLAB-SIM позволяет проследить выполнение программы микроконтроллеров PICmicro на уровне команд по шагам или в режиме анимации. На любой команде выполнение программы может быть остановлено для проверки и изменения памяти. Функции стимула позволяют моделировать сигнал с логическими уровнями на входах микроконтроллера. MPLAB-SIM полностью поддерживает символьную отладку, используя MPLAB-C17, MPLAB-C18 и MPASM. MPLAB-SIM является доступным и удобным средством отладки программ для микроконтроллеров PICmicro.
3.3.6 Универсальный эмулятор MPLAB-ICE
Универсальный эмулятор MPLAB-ICE обеспечивает разработчиков полным набором инструментальных средств проектирования устройств с применением микроконтроллеров PICmicro. Управление работой эмулятора выполняется из интегрированной среды проектирования MPLAB-IDE с возможностью редактирования, компиляции, загрузки и выполнения программы. Заменяемые коды позволяют быстро перенастроить эмулятор для работы с другим типом микроконтроллеров. Универсальная архитектура MPLAB-ICE дает возможность поддерживать новые типы микроконтроллеров PICmicro. Эмулятор MPLAB-ICE был разработан как система эмуляции (анимации) в реальном масштабе времени с дополнительными возможностями, присутствующих в дорогих инструментальных средствах. Эмулятор работает под управлением распространенной операционной системы Microsoft Windows 98/xp/7.
MPLAB-ICE 2000 - полнофункциональная система эмуляции с усовершенствованными функциями трассировки, триггеров и управляющих особенностей. Оба эмулятора используют одинаковые поды и работают во всех допустимых режимах микроконтроллеров PICmicro.
3.2.7 Отладка программы в режиме реального времени
Для отладки программы в режиме реального времени можно применить программатор отладчик PICkit 2. PICkit 2 это простой USB программатор для микроконтроллеров PIC, микросхем памяти и KeeLOQ ключей производства компании Microchip Technology Inc. Программатор PICkit 2 работает под управлением своей собственной оболочки (PICkit 2 Programmer) или под управлением бесплатной среды разработки MPLAB IDE. Отличительной особенностью программатора PICkit2 является низкая цена, а так же доступность полной документации, включая схему и исходные коды прошивки для микроконтроллера, и программы оболочки для компьютера. Внешний вид программатора PICkit2 показан на рисунке 3.8 [14].
Рисунок 3.8- Внешний вид программатора PICkit2.
1 - Светодиоды состояния
2 - Кнопка
3 - Разъем для подключения USB кабеля
4 - Маркер первого вывода
5 - Разъем для подключения программируемого устройства
Программатор PICkit2 позволяет запрограммировать внутрисхемно практически все Flash микроконтроллеры Microchip. При появлении новых микроконтроллеров с сайта www.microchip.com можно скачать обновление программного обеспечения и прошивки программатора PICkit2. Там же доступна для скачивания утилита для работы с программатором PICkit 2 из командной строки. Утилита позволяет программировать все контроллеры, которые поддерживает последняя версия GUI-оболочки PICkit 2, микросхемы EEPROM с последовательным интерфейсом, KeeLOQ-кодеры. С помощью ключей запуска выбирается тип контроллера, устанавливается напряжение питания, даются команды читать, программировать и верифицировать Flash и EEPROM память контроллера. Утилиту можно использовать для интеграции программатора в автоматизированные системы, сторонние редакторы кода. Утилита тестировалась на совместимость с операционными системами Windows XP SP2 и Windows Vista. Список поддерживаемых микроконтроллеров.
Программатор PICkit2 под управлением среды разработки MPLAB IDE может выполнять функции внутрисхемного отладчика, т.е. позволяет выполнять запуск программы, пошаговое выполнение команд, устанавливать точки останова микроконтроллера, а так же просматривать и изменять состояние регистров специального назначения и ОЗУ отлаживаемого микроконтроллера PIC. На рисунке 3.9 показана работа в интегрированной среде MPLAB-IDE.
Рисунок 3.9- Работа в интегрированной среде разработки MPLAB-IDE
На рисунке 3.10 показаны начало и конец таблицы данных для синусоид.
Рисунок 3.10- Начало и конец таблицы данных для синусоид
Выводы
В этой части подробно рассматривались работа в инженерном направлении, разработка печатной платы устройства в системе автоматизированного проектирования P-CAD. Кроме того были проведены расчеты мощности, надежности и быстродействия. Так же подробно рассматривалась интегрированная среда разработки и отладки программного обеспечения для микроконтроллеров MPLAB-IDE. Разработка программного обеспечения для микроконтроллеров является одной из главной задачей и именно от этого и зависят функциональные возможности ТИИПН. Кроме разработки программного обеспечения, более трудоемкой задачей является ее отладка. Отладка в режиме реального времени т.е. в рабочем режиме- микроконтроллер подключен через отладчик Pickit2 к компьютеру, где просматриваются и заносятся новые переменные или куски программы.