Внутрисхемный USB-программатор-отладчик PICkit2
Для начала освоения и практического применения микроконтроллеров разработчику необходим доступный инструментарий. Компания Microchip Technology Inc. выпускает недорогой программатор начального уровня PICkit2, схема и программное обеспечение в исходных кодах которого выложены на сайте www.microchip.com/pickit2. Рассмотрим особенности и возможности этого USB-программатора.
Программатор PICkit2 соединяется с компьютером по широко распространенному интерфейсу USB (программатор построен на базе контроллера PIC18F2550 USB 2.0). Через USB-порт так же осуществляется обновление прошивки программатора, т.е. при необходимости PICkit2 может обновить свое программное обеспечение без применения дополнительных программаторов. Использование интерфейса USB позволило программатору отказаться от дополнительного источника питания и получать питание непосредственно от USB-порта компьютера. PICkit2 имеет простую схемотехнику, что позволяет уместить его в небольшом брелке (см. рис. 1).
Рис. 1. Внешний вид программатора PICkit2
Программатор PICkit2 служит для внутрисхемного программирования большинства Flash микроконтроллеров Microchip и с появлением новых микроконтроллеров список поддерживаемых устройств постоянно расширяется. Типовая схема подключения приведена на рис. 2.
Вывод | Назначение |
---|---|
1 | Vpp/MCLR -напряжение программирования, сигнал сброса |
2 | Vdd - напряжение питания для программируемой схемы |
3 | Vss - «земляной» вывод |
4 | ICSPDAT/PGD - сигнал данных |
5 | ICSPCLK/PGC - сигнал тактирования |
6 | AUX - вспомогательный вывод, как правило не используется |
Рис. 2. Типовая схема внутрисхемного программирования
Программатор PICkit2 работает под управлением своей собственной оболочки или под управлением среды разработки MPLAB IDE. При работе программатора под управлением оболочки «PICkit2 Programmer» (рис. 3) PICkit2 позволяет выполнять все стандартные операции: стирать, программировать и проверять память программ и EEPROM, устанавливать защиту кода, редактировать содержимое Flash и EEPROM. Помимо этих стандартных функций, программатор PICkit2 позволяет осуществлять ряд дополнительных и интересных действий.
Рис. 3. Программа «RICkit2 Programmer»
Программатор PICkit2 является внутрисхемным программатором, т.е. подключается к плате или разрабатываемому устройству, в котором установлен микроконтроллер. Поэтому такое устройство может иметь свой источник питания или получать питание извне. Для устройств с внешним питанием PICkit2 может формировать напряжение питания в диапазоне напряжений от 2,5 до 5 В с шагом 0,1 В. Это полезная особенность, т.к. вы можете отлаживать различные устройства, не отсоединяя программатора, а питание устройства будет осуществляться от самого программатора.
Внимание! USB-порт компьютера может выдавать ток до 100 мА. Если подключенное к PICkit2 устройство потребляет больший ток, то USB-порт автоматически выключится. Если вам нужно получить ток больше 100 мА, то используйте внешний источник питания.
Как правило, напряжение шины USB составляет 5 В. Однако для некоторых компьютеров и ноутбуков напряжение может отличаться. Для приложений требующих высокую точность, программатор PICkit2 имеет возможность калибровать напряжение, выдаваемое во внешнюю схему.
Для устройств с внешним сбросом оболочка программатора позволяет управлять сигналом сброса микроконтроллера.
В меню «Tools» появилась возможность включить опцию «Use VPP First Program Entry», это может понадобиться для контроллеров, конфигурация которых и настройка портов не позволяет войти в режим программирования (например, для контроллеров PIC12F675 с включенным внутренним сбросом и портами, подключенными к PGD и PGC, настроенными на выход). Попробуйте включить эту опцию, если программатор выдает ошибку проверки конфигурации («Verification of configuration failed»).
Некоторые микроконтроллеры PIC12F и PIC16F имеют внутренний RC-генератор, калибровочная константа для которого определена на заводе-изготовителе и хранится по последнему адресу в памяти программ микроконтроллера. Как правило, «правильные» программаторы при программировании таких микроконтроллеров сначала считывают калибровочную константу, затем стирают микроконтроллер, а затем программируют его пользовательской программой с запомненной константой. Если по каким-либо причинам константа утеряна, то PICkit2 (версии ПО 1.хх) поможет восстановить калибровку генератора. Для этого в микроконтроллер записывается специальная программа, которая генерирует на выводе микроконтроллера меандр, программатор PICkit2 измеряет частоту и рассчитывает калибровочную константу, которая затем может быть записана в микроконтроллер.
Рис. 4. Окно «UART Communication Tool» программы «PICkit 2 Programmer»
Если ваше устройство должно общаться с другими устройствами по UART, то вы можете использовать PICkit2 как средство отладки последовательных протоколов. UART Communication Tool (см. рис. 4) позволяет задавать скорость до 38400 бод, и так же позволяет:
- Получать отладочную информацию из микроконтроллера;
- Вести лог данных, получаемых от микроконтроллера, в текстовом файле;
- Разрабатывать и отлаживать последовательную передачу по интерфейсу UART;
- Посылать команды микроконтроллеру на этапе отладки.
Для того чтобы использовать UART Communication Tool, нужно соединить выводы микроконтроллера UART и программатора PICkit2 согласно табл. 1.
Таблица 1. Соединение выводов UART-микроконтроллера и программатора PICkit2
Выводы программатора PICkit2 | Выводы микроконтроллера UART |
---|---|
(1) VPP | - |
(2) Vdd | Напряжение питания |
(3) GND | GND |
(4) PGD | TX UART - логический уровень |
(5) PGC | RX UART - логический уровень |
(6) AUX | - |
В версии оболочки 2.40 появилась возможность программирования микросхем последовательной памяти с интерфейсом I2C и SPI (24LCxxх, 25LCхxx и 93LCхxx) и ключей KeeLOQ.
Работа под средой разработки MPLAB IDE.
Обычно разработчики, работающие с PIC-контроллерами, используют в качестве среды разработки MPLAB IDE, так как MPLAB IDE - это мощный бесплатный инструментарий разработки и отладки программ для PIC-микроконтроллеров. MPLAB IDE включает в себя редактор, программный симулятор, позволяет подключать Си-компиляторы различных производителей, работает совместно с программаторами и эмуляторами Microchip. Среда разработки MPLAB IDE (см. рис. 5) также поддерживает программатор PICkit2 и выполняет те же стандартные функции, что и под оболочкой PICkit2: можно записывать и считывать отдельно память программ и EEPROM, стирать память микроконтроллера и проверять ее на чистоту. Однако список поддерживаемых микроконтроллеров не такой обширный, но зато появляется возможность внутрисхемной отладки некоторых популярных микроконтроллеров.
Рис. 5. Окно среды разработки MPLAB IDE, использование программатора PICkit 2 в качестве внутрисхемного отладчика
Для внутрисхемной отладки используются те же самые выводы микроконтроллера, что и для программирования, поэтому никаких переделок в схеме не нужно*. Для включения режима отладки нужно в меню Debugger ® Select Tool выбрать PICkit2.
После соединения с отлаживаемым микроконтроллером можно устанавливать точки останова, выполнять программу по шагам, наблюдать за изменением переменных в окне Watch (см. рис. 6).
Рис. 6. Окно среды разработки MPLAB IDE, отслеживание изменения переменных
Варианты поставок PICkit2
Компания Microchip Technology Inc. поставляет программатор PICkit2 в разных комплектациях (см. табл. 2).
Таблица 2. Комплектация PICkit2
Код заказа | Описание |
---|---|
PG164120 | программатор PICkit2 |
DV164120 | программатор PICkit2 + демонстрационная плата с PIC16F690 |
DV164121 | PICkit2 Debug Express (программатор PICkit2 + демонстрационная плата с PIC16F887) |
Комплект DV164120, помимо программатора, содержит демонстрационную плату с установленным контроллером PIC16F690 и, за счет совместимости по выводам, позволяет работать с любыми PIC-контроллерами в корпусах DIP-8, DIP-14 и DIP-20 (см. рис. 7).
Рис. 7. Совместимость по выводам контроллеров в 8-, 14- и 20-выводных корпусах
Программатор-отладчик PICkit2 является весьма мощным и универсальным отладочным средством для микроконтроллеров Microchip, но в то же время имеет доступную цену и даже, при желании, может быть легко повторен по документации, предоставляемой Microchip. Программатор PICkit2 активно поддерживается двумя платформами: оболочкой PICkit2 и средой разработки MPLAB IDE, причем с каждым апгрейдом добавляются все новые и новые функции, а способность программатора обновлять свое ПО дает возможность произвести обновление меньше чем за минуту. Помимо функций программирования микроконтроллеров и микросхем памяти, PICkit2 может использоваться как отладочное средство, а именно - как внутрисхемный отладчик или как отладчик протоколов UART, и, надеемся, в следующих обновлениях Microchip порадует нас новыми функциями!
* - Для внутрисхемной отладки желательно иметь новую версию PICkit2 с красной кнопкой. Если у вас предыдущая версия PICkit2, то для обновления нужно слегка модифицировать схему, или добавить подтягивающие резисторы к GND на линии PGD и PGC в схеме, так как PICkit2 изначально планировался только как программатор. Инструкцию по обновлению PICkit2 можно скачать с сайта www.gamma.spb.ru.
Получение технической информации, заказ образцов, поставка -
e-mail: mcu.vesti@compel.ru
Ваш комментарий к статье | ||||