Научная статья на тему 'Программа Flowcode и программатор Microchip PICkit 2'

Программа Flowcode и программатор Microchip PICkit 2 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
453
277
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Добсон Джон

Компания Microchip предлагает стартовый набор разработчика PICkit 2 Debug Express, включающий демонстрационную плату с 44-выводным контроллером и самый маленький программатор в мире. А компания Matrix Multimedia создала среду разработки Flowcode с интуитивно понятным графическим интерфейсом, позволяющим разрабатывать программу для микроконтроллера на уровне блок-схем. Данная статья предназначена для начинающих разработчиков, которые только осваивают программирование микроконтроллеров. На начальной стадии среда разработки Flowcode, позволяющая реализовать простейшие операции на основе PIC-контроллеров — отличная альтернатива более сложной и профессиональной MPLAB IDE. Для получения базовых навыков по использованию программатора PICkit2 и программы Flowcode рассмотрим построение простейшего проекта по управлению светодиодом.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Программа Flowcode и программатор Microchip PICkit 2»

Окончание. Начало в№ 5 '2009

Джон ДОБСОН (John DOBSON)

Программа Flowcode

и программатор Microchip PICkit 2

Введение

Компания Microchip предлагает стартовый набор разработчика PICkit 2 Debug Express, включающий демонстрационную плату с 44-выводным контроллером и самый маленький программатор в мире. А компания Matrix Multimedia создала среду разработки Flowcode с интуитивно понятным графическим интерфейсом, позволяющим разрабатывать программу для микроконтроллера на уровне блок-схем.

Данная статья предназначена для начинающих разработчиков, которые только осваивают программирование микроконтроллеров. На начальной стадии среда разработки Flowcode, позволяющая реализовать простейшие операции на основе PIC-контроллеров, — отличная альтернатива более сложной и профессиональной MPLAB IDE. Для получения базовых навыков по использованию программатора PICkit2 и программы Flowcode рассмотрим построение простейшего проекта по управлению светодиодом.

Для ознакомительных целей компания Matrix Macromedia предлагает бесплатную демонстрационную версию Flowcode — http://www.matrixmultimedia.com/temp/ FlowcodeV3.exe.

Примечание. Единственное ограничение — допустимый объем скомпилированного кода не более 2 кбайт.

Шаг первый — построение блок-схемы

Обычно создание проекта начинается с планирования последовательности действий (алгоритма), которые должен выполнять микроконтроллер. В среде разработки Flowcode для данных целей предусмотрен наглядный интерфейс по созданию блок-схемы программы.

В качестве первого примера разработаем систему, которая будет приводить в действие один из двух режимов «моргания» светодиодами в соответствии с положением внешнего переключателя. Алгоритм программы приведен на рис. 1.

Шаг второй — реализация блок-схемы в Flowcode

Этапы реализации блок-схемы в Flowcode (рис. 2):

• Запустите программу Flowcode.

Yes

Output

-> PORTA/

Delay

1 ms ^

Output

/-> PORT А/

Delay

1 ms

Loop

END

Нажмите ОК, когда откроется окно Reminder Screen.

Создайте новый проект (Create a new Flow-Code flowchart).

Выберите в качестве контроллера (Choose a target) PIC16F887 (он установлен на демонстрационной плате 44-pin Demo Board комплекта PICkit 2 Debug Express). Откройте новую рабочую область (workspace) с названием “Main”.

Добавьте необходимые блоки для блок-схемы. Для этого наведите курсор на нужную иконку в левой панели и, удерживая левую кнопку мыши, перетащите ее в рабочую область.

Добавьте необходимые элементы (светодиоды LED, переключатель). Для этого щелкните мышью по иконке соответствующего элемента в верхней панели.

В выпадающем меню окна LEDs («Светодиоды») выберите пункт Component Connections. В меню Connect to Port («Соединение с портом») выберите PORT D (светодиоды демонстрационной платы 44-pin Demo Board выведены на PORT D). Данный диалог должен принять вид, который представлен на рис. 3.

Рис. 3. Выпадающее меню окна LEDs («Светодиоды»)

Рис. 2. Блок-схема, созданная во Flowcode

Рис. 4. Выпадающее меню окна Switches («Переключатели»)

В выпадающем меню окна Switches («Переключатели») выберите пункт Properties («Свойства») и укажите количество кнопок— 1 (рис. 4).

В пункте Connect to Port выпадающего меню выберите PORT B (кнопка на плате 44-pin Demo Board подключена к PORT B, бит 0). Диалог Connect to Port примет вид, который представлен на рис. 5.

Input

Для начала необходимо создать переменную, отвечающую за информацию о положении кнопки. Щелкните по Variables («Пере-

менные»), чтобы открыть диалог Variables Manager. Щелкните по Add New Variable («Добавить новую переменную») и добавьте новую переменную с названием Input (рис. 7).

Нажмите OK. Вернувшись в окно Variables Manager, нажмите кнопку Use Variable. Вернувшись в окно Properties, выберите PORT B, Single Bit (рис. 8).

Рис. 5. Диалоговое окно Connect to Port

Настройка элементов блок-схемы

Теперь настало время настройки элементов, составляющих блок-схему. Для настройки элемента нужно дважды щелкнуть на его иконке мышью. Для удобства чтения блок-схемы в строке Display name напишите короткое пояснение о функциональном назначении блока.

Loop («Основной цикл»)

Рис. В. Настройка новой переменной в окне Variables Manager

Decision

В окне Properties нажмите на Variables и выберите Input, затем щелкните на Use Variable. Дайте название (Display name) — “Is switch pressed?” (рис. 9).

Рис. 9. Введение названия для новой переменной

Ветка No/Output

Чтобы зажечь крайние светодиоды, необходимо выставить в единицу биты 0 и 7 порта PORT D, то есть ввести в PORT D число 129 ( 27+ 20) (рис. 10).

Ветка Yes /

Первый блок Output

Чтобы зажечь светодиоды с 0 по 3, необходимо ввести в PORT D число 15 ( 20+ 21+22+ 23) (рис. 11).

Рис. 11. Введение в PORT D числа 15

Оба блока Delay

Длительность задержки может быть задана в миллисекундах и секундах. Необходимо задать задержку в полсекунды (рис. 12).

Второй блок Output

Чтобы зажечь светодиоды с 4 по 7, необходимо ввести в PORT D число 240 (24+25+ 26+ 27) (рис. 13).

Рис. 13. Введение в PORT D числа 240

Теперь блок-схема должна иметь вид, представленный на рис. 14.

Симуляция программы

Программа Flowcode позволяет проверить ее работу при помощи симуляции. Симуляция возможна в двух режимах: непрерывная и пошаговая, блок за блоком. В обоих режимах в окнах Variables и Call Stack отображаются текущие значения. Когда вы запускаете симуляцию программы на полной скорости, данные в этих окнах не обновляются. Если же скорость симуляции ниже полной или выполнение программы ведется пошагово, созданные переменные отображаются в окне Variables на каждой итерации.

BEGIN

Repeat

While

1

Read switch status

Is switch pressed?

/ 129 -> PORT D /

Repeat

Yes

Switch on LEDs 0 and 7

Switch on LEDs 0 to 3

/ 15

-> PORT D/

Wait for 0.5 seconds

500 ms

Switch on LEDs 4 to 7

/ 240

/-> PORT D/

Wait for 0.5 seconds

500 ms

T

END

Рис. 14. Конечный вид блок-схемы, созданой во Flowcode

Теперь посмотрим на симуляцию на полной скорости. Нажмите Run на панели инструментов. Используйте возможность остановки и продолжения работы программы (F5 или Go/Continue в меню Run). При этом можно увидеть текущие значения в окнах Variables и Call Stack, а также крайние светодиоды (0-й и 7-й светятся). Щелкните по иконке кнопки и убедитесь, что светодиоды 0-3 моргают в противофазе со светодиодами 4-7. Программа работает корректно.

Если вы не получили нужного результата, вернитесь к началу и повторите все заново.

Программирование PIC-контроллера

Подготовительная часть закончена, вы получили полнофункциональную программу, работающую по заданному алгоритму. Выполните следующие инструкции для программирования контроллера:

• Подключите PICkit2 к ПК через USB.

• Подключите PICkit2 к демонстрационной плате 44-pin Demo Board.

• В меню Chip выберите пункт Compile to Chip (для компиляции необходимо сохранить созданную программу).

• Откроется окно Compile Messages, в котором отображается текущий прогресс. При программировании контроллера засветятся индикаторы Target и Busy на PICkit2. Когда программирование закончится, появится строка Finished, после чего следует нажать кнопку Close.

• Ваша программа должна запуститься. Светодиоды 0-3 должны мигать в противофазе со светодиодами 4-7. При нажатии кнопки должны светиться только светодиоды 0 и 7.

• Незаметно для пользователя программа Flowcode сформировала по графической блок-схеме C-файл и компилировала его в ассемблер. Полученный C- и asm-код можно просмотреть, выбрав в меню Chip соответственно команды “View C” и “View ASM”

либо просмотрев содержание файлов prog1name.c и prog1name.asm в папке, где сохранен данный проект.

Заключение

В данной статье показано, как просто создать программу для контроллера по заданному алгоритму. При этом пример охватывает лишь малую часть функциональных возможностей Flowcode. Незатронутыми остались такие возможности, как вычислительные опе-

рации, манипуляции со строковыми переменными, создание пользовательских макросов, вставки C-кода и т. д. Для их освоения программа Flowcode снабжена подробными справочными материалами и описаниями (меню Help). О всех возможностях, предоставляемых Matrix Multimedia, можно узнать на сайте http://www.matrixmultimedia.com/.

Разработчики, заинтересовавшиеся PICkit2, могут воспользоваться специальным предложением от компании Microchip на следующей странице. ■

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.