Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Микроконтроллеры PIC фирмы Microchip для начинающих выпуск №8


РАССЫЛКА Микроконтроллеры PIC фирмы Microchip для начинающих
Ведущий: Алексей (pont_a@mail.ru)


Доброго времени суток, дамы и господа!!

Поздравляю Вас с Новым 2007-м годом! Здоровья Вам и удачи во всех начинаниях!
Сегодня в выпуске мы будем учиться создавать проект в среде разработки Mplab фирмы Microchip! Это первый шаг к началу разработки программы для микроконтроллеров PIC! В выпуске будет много картинок, их я не вкладываю, чтобы не увеличивать размер письма. Картинки будут доступны в письме, если у Вас подключен Internet. Т.к. они будут загружаться с нашего сайта. Общий размер картинок 170Кб.

В первых выпусках я просил Вас скачать Mplab v7.50 с официального сайта фирмы Microchip.  
Устанавливаем ее на свой компьютер. Обычно, Mplab устанавливается в папку: С:\Program Files\Microchip\ .  Думаю, с установкой ни у кого проблем не возникнет!
Для работы создадим на своем жестком диске папку для  проектов Mplab. Это правило хорошего тона для программирования, чтобы, потом, не искать по всему компьютеру, свои же проекты!  Внимание: путь и название этой папки не должны содержать русских букв! К сожалению, Mplab, иначе, не сможет работать с Вашим проектом!

Теперь будем выполнять по пунктам:

  1. Создаем папку, например: D:\My_PIC\First_project\  в любом файловом менеджере.
  1. Запускаем Mplab. У Вас появиться 2 внутренних окна: Untitled Workspace и Output.
  2. В окне Workspace отображаются все файлы, прикрепленные в проект. А в окне Output  выводится вся выходная информация Mplab: ошибки, результаты компиляции, результаты программирования микроконтроллера, результаты поиска в проекте и т.п. Для удобства, располагаем их в таком виде:

  3. Находим пункт меню Project > Project Wizard, переходим по нему. Перед Вами появится приветственное окно. Переходим по кнопке «Далее».  Появляется окно, в котором мы выбираем из выпадающего списка нужный нам микроконтроллер, в нашем случае: PIC18F452. Снова нажимаем кнопку «Далее». Следующим, появится окно, в котором мы выбираем язык программирования, на котором будем писать программу к нашему микроконтроллеру. Окно выглядит следующим образом:
  4. В поле «Active Toolsuite» выбирается язык программирования, на рисунке выбран язык ассемблера для микроконтроллеров PIC – MPASM.  В поле «Toolsuite Contents» показаны исполняемые модули, которые принимают участие в компиляции программы с выбранного языка. В поле «Location» указывается полный путь к выделенному исполняемому модулю. Если путь будет неверен (перед исполняемым модулем будет стоять крестик), то его нужно прописать вручную, с использованием кнопки «Browse». Обычно, для ассемблера микроконтроллеров серии PIC18, это путь: С:\Program Files\Microchip\MPASM Suite\.  После того, как все исполняемые модули задействованы, нажимаем кнопку «Далее».

    Мы перейдем на окно, где задается имя проекта и путь к нему. Вводим любое имя (нельзя использовать русские буквы), например, blink_led, т.к. наша первая программа будет мигать светодиодом. И путь к этому проекту выбираем на папку, которую мы создали в самом начале: D:\My_PIC\First_project\.  В итоге мы получим вот такое окно:

    После ввода данных, нажимаем кнопку «Далее».  
    Появится окно, в котором мы добавляем готовые файлы с программой в проект. Т.к. готовых файлов у нас пока еще нет, сразу нажимаем кнопку «Далее».
    В итоге, появится окно, в котором Wizard выдаст конечную информацию о настройках и параметрах создаваемого проекта: тип микроконтроллера; путь, по которому будет лежать проект и основной язык компилятора, на котором будет писаться программа в этом проекте.  Нажимаем кнопку «Готово». 
    Мы увидим, что в окне  Workspace стал отображаться наш проект (появилось дерево файлов проекта blink_led).  Если у Вас пропало окно Output, то его нужно включить через пункт меню: View > Output.  А в папке D:\My_PIC\First_project\ появились файлы проекта blink_led.mcw и blink_led.mcp

  5. Следующим шагом создаем файл с кодом программы. Пока будет достаточно одного файла, потом, в дальнейших выпусках рассылки, научимся создавать проект из нескольких файлов. Запускаем пункт меню: File > New (Ctrl+N).  У нас появится новое окно в проекте – MPLAB IDE Editor.  Заходим через пункт меню Edit > Properties  в окно настроек редактора, в котором будет писаться программа (MPLAB IDE Editor). Поэкспериментируйте с настройками! А потом, настройте редактор так, как Вам будет удобнее. Я думаю, описывать каждую галочку – смысла нет! Там все просто и наглядно.

  6. Размещаем окно MPLAB IDE Editor следующим образом:

    В итоге, все основные параметры будут Вам видны. В принципе, размещать эти окна можно – как сами пожелаете!

  7. Напишем элементарную программу для микроконтроллера PIC18F452 в окне MPLAB IDE Editor.
  8. ;---------------------------------------------------------------------------------------------------------------
    ; Подключаем стандартный заголовочный файл с объявлением
    ; специальных регистров и битов  микроконтроллера PIC18F452
    ; Подключение осуществляется специальной директивой #include
    ; Стандартные файлы лежат по адресу C:\Program Files\Microchip\MPASM Suite\
    #include<P18F452.INC>    ; если объявление в таких скобках < >,
    ; то путь берется из стандартных настроек компилятора
    ; Можно скопировать этот файл в папку D:\My_PIC\First_project\
    ; тогда вызов будет выглядеть так: #include “P18F452.INC” 

    ; объявляем переменные и константы
    ab       equ      0
    bb       equ      1
    rw       equ      0
    rf        equ      1
    bit0     equ      0
    temp   equ      0x00
    ; код программы
                org 0x0000  ; как я писал, эта директива располагает весь код после заданного адреса
    Main:            
                ; основной цикл микроконтроллера
                BTG   temp, bit0, ab                ; инвертирование нулевого бита переменной temp
                BRA   Main
                end     ; этой директивой заканчивается программа
    ;--------------------------------------------------------------------------------------------------------------
    Теперь сохраняем полученный файл. Переходим по пункту меню: File > Save (Ctrl+S)
    Появляется стандартное окно сохранения файла. Выбираем папку D:\My_PIC\First_project\.  Имя файла пишем main.asm (обязательно пишем и расширение). Имя может быть любое, только без русских букв. Нажимаем кнопку «Сохранить». Мы увидим, что в нашей папке появился файл main.asm, а также, редактор программы выделил заданными  цветом и шрифтом записи, специфичные для данного языка программирования. Например, комментарии выделяются зеленым, команды и директивы ассемблера – синим, метки и константы – фиолетовым.

  9. Теперь, добавляем созданный файл в проект.
  10. Для этого, в окне проекта Workspace (теперь это окно будет называться blink_led.mcw), находим в дереве файлов папку Source Files (файлы с исходной программой).  Кликаем правой кнопкой мыши на этой папке и выбираем пункт Add FilesПоявится окно, в котором мы выбираем нашу папку по адресу D:\My_PIC\First_project\. В папке мы увидим наш файл main.asm

    Выбираем этот файл и нажимаем кнопку «Открыть». Мы увидим, что наш файл появился в дереве файлов проекта. Теперь сохраняем проект. Пункт меню Project > Save Project или зеленая дискетка на панели.

  11. Теперь попытаемся скомпилировать полученную программу. Переходим на пункт меню Project > Build All(Ctrl+F10). Если Вы все сделали так, как я говорил, то проект скомпилируется без ошибок. Что проект скомпилировался без ошибок, говорит окно Output. В нем будет вот такая запись: BUILD SUCCEEDED.  И в нашей папке появится загрузочный файл main.hex, который зашивается в микроконтроллер программатором.  
  12. Если в процессе компиляции возникли ошибки, то в этом окне они все отобразятся. И будет вот такая запись: BUILD FAILED. Двойной клик мышкой на записи об ошибке в окне Output, автоматически указывает на строку в программе, где находится данная ошибка.

На сегодня будет достаточно! Небольшое домашнее задание – попытайтесь поэкспериментировать с программой. В основной цикл добавьте свой код – любое вычисление. Или что-нибудь в таком стиле. Напишите программу, чтобы она компилировалась без ошибок!

В следующем выпуске я расскажу о некоторых способах, благодаря которым, можно убедиться, что программа написана правильно. Узнаем, как посмотреть дизассемблерный код, и зачем он нужен.  Научимся смотреть дампы(значения ячеек) памяти. Узнаем, что такое файл листинга, и зачем он нужен.  Научимся с помощью симулятора MPLAB SIM отлаживать небольшие программы. Потом, уже будут выпуски по аппаратной части!

Полный архив рассылки Вы можете прочитать на нашем сайте!  При любом опубликовании текстов данной рассылки ссылка на сайт http://www.2aplusa.ru обязательна!

Желаю Вам удачи! До скорой встречи!


С уважением, Алексей pont_a@mail.ru
Cайт разработчиков 2AplusA http://2aplusa.ru


В избранное