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

  1. Отключим выход генератора (CLKOUT function is disabled. I/O function on the CLKOUT pin)
  2. Включим сторожевой таймер (WDT enabled)

После этой настройки мы должны будем увидеть в изменении графического вида контроллера

было:
стало:

Настройки конфигурации должна выглядеть так


Теперь перейдем к настройке портов, необходимо перейти к окну Pin Manager: Grid (MCC)

И сразу вопрос, что с этим делать? Дополнительно откроем закладку

Теперь в окне Pin Manager: Grid (MCC) в разделе Pin Module настроим все выводы портов на выход

Обратите внимание при настройке портов на выход, будет заполняться окно

После окончания “клацанья на замочки” мы получим

Теперь перейдем к более конкретному анализу настройки портов, первое выводы могут быть “цифровые” и “аналоговые”, смотрим на столбец со свойством Analog

И снимем птички Аналог с выводов, и одновременно снимем птички в колонке подтягивающих резисторов WPU, после окончанию процесса нажмем кнопочку сгенерировать

 

и обратим внимание как изменилось содержимое функции PIN_MANAGER_Initialize в файле pin_manager.c

LATx registers – управление сигналами на выходе порта – низкий уровень (0);

TRISx registers – направление сигналов – все на выход, кроме TRISA = 0x08 – это наш вход MCLR;

ANSELx registers – аналоговые входы отключены;

WPUx registers – подтягивающие резисторы отключены (потом мы еще не раз вернемся к этому регистру, будем подключать тактовые кнопки для организации ввода данных);

APFCONx registers – регистр настройки альтернативного подключения периферийных модулей. Это тоже интересный регистр, но о нем немного по позже.


Сделано много, даже можно перепрошить микроконтроллер, но это го маловато для получения первого эффекта типа “гори светодиод”. Как вы должны были заметить, что по схеме мы к ногам 7 и 8 порты RC3 и RC6 подключены светодиоды, они подключены через токоограничивающие резисторы и подключены к “земле”. Это значит, если мы прошьем наш ПИК (так будем в дальнейшем ругаться) светики гореть не будут. Что реально обидно!

Для начала прибегнем к одному приему который в будем может стать довольно удобным, это опишем наши светодиоды так, что бы компилятор понимал, что если мы будем писать LD1=1; это значит подать единицу на порт к которому подключен нас светик.

 Откроем главный файл проекта, в вставим следующие строчки описания светодиодов перед началам самой программы, а начнем с символа # откроется окно в котором выберем define

и пропишем:

Это значит, что если мы в тексте пишем LD1 то компилятор будет понимать, что мы хотим обратится к 3 биту регистра LATC который управляет уровнями сигнала на выходе порта С ПИКа.

И самое главное, что надо сделать!!! Это мы включили сторожевой таймер, а за него теперь надо не забывать, он контролирует работу программы ПИКа, и если его периодически не сбрасывать, то он будет считать, что программа работает некорректно и будет выполнять перезапустит ПИК. Для того, что бы этого не произошло, когда программа правильно работает существует в XC8 макрос (функция, как удобно)

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

Наша программа должна иметь вид:

Обратите внимание: При компиляции может появляться (особенно в ново созданном проекте) сообщение

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

Если все делаете корректно моему описанию, то у вас не должно возникать проблем а окне Output – программатора всегда будет сообщение

После программирования микроконтроллера мы увидим, что LD1 не горит LD2 горит. Изменит параметры

и поиграемся управлением портами.


Для удобства готовый проект для этой стадии изучения 


В четвертой части заставим мигать светики …


Это может быть интересно


  • REFERENCE CLOCK OUTPUT MODULEREFERENCE CLOCK OUTPUT MODULE
    REFERENCE CLOCK OUTPUT MODULE Модуль формирования опорного тактового сигнала Модуль опорного тактового сигнала обеспечивает возможность посылать сигнал синхронизации на тактовый опорный выходной контакт или контакты (CLKR) в зависимости от конфигурации выводов …
  • OLED RET012864E/REX012864JOLED RET012864E/REX012864J
    RET012864E/REX012864J ОЛЕД индикатор производитель Raystar-Optronics приобретался в http://www.microchip.ua/ к сожалению никакой информации на сайте поставщика нет. Поэтому решил работу с этой версией индикатора на драйвере SSD1305 предоставить на своем сайте. Так как есть ошибки …
  • MCC PIC24 – модуль OUTPUT COMPARE – режиме ШИМMCC PIC24 – модуль OUTPUT COMPARE – режиме ШИМ
    Во многих системах управления, для формирования управляющих сигналов требуется модуль ШИМ, он позволяет не только формировать импульсы заданной длительности, но и с применением обычного RC фильтра строить простые ЦАП. MCC …
  • ch-4050 – дифференциальный терморегуляторch-4050 – дифференциальный терморегулятор
    ch-4050 – это не новая модель, это расширенная версия универсального терморегулятора ch-4000. Различия коснулись в появлении новой функции дифференциального регулирования. Это вид регулирования по разности температур измеренного двумя датчиками. Теперь …
  • Тестирование модуля генератораТестирование модуля генератора
      Тестирование модуля генератора Настройка, запуск и проверка рабочей частоты на примере PIC18F26K40. PIC18F26K40 Чтобы понять из-за чего зависит производительность микроконтроллера просто надо понять как работает его задающий тактовый генератор. …
  • Гаджеты для домашней автоматики – Датчик приближенияГаджеты для домашней автоматики – Датчик приближения
    Управление светодиодным освещением – Датчик приближения. Данный гаджет предназначен для управления внутренним освещением мебели. Датчик позволяет определить закрытие или открытие дверцы или ящика и при этом включать или выключать освещение. …
  • Проблемы классической светомузыкиПроблемы классической светомузыки
    Светомузыка – что это такое? Определение: Светомузыка  (жаргонное: цветомузыка)  — вид искусства, основанный на способности человека ассоциировать звуковые ощущения со световыми восприятиями. Такое явление в неврологии получило название – синестезии. …
  • Дисплей KD035C-3A подключение и управлениеДисплей KD035C-3A подключение и управление
    Дисплей KD035C-3A производиться компанией SHENZHEN STARTEK ELECTRONIC TECHNOLOGY CO.,LTD его характеристики Параметр Спецификация Единицы измерения Размер дисплея 70.08(H)*52.56(V) (3.5inch) mm Тип дисплея TFT active matrix Цветовая гамма 65K/262K colors Разрешение 320(RGB)*240 dots …
  • Датчик контроля протечки воды ch-c0020Датчик контроля протечки воды ch-c0020
    Как здорово летом под теплым дождем с тобою вдвоем оказаться. Как классно по лужам бежать босиком, с тобою играть и смеяться! Но совсем грустно оказаться под таким дождем, который течет с потолка…  И …
  • Проект с использованием MCC часть 08Проект с использованием MCC часть 08
    И так создадим проект в котором при помощи двух кнопок мы сможем управлять яркостью светодиодов. При использовании МСС у нас лафа полная, добрые дяди с Microchipa подготовили функции, которыи позволяет …



Tagged with →  
Share →

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Translate »

Copyright © Catcatcat electronics 2013-2019. Все права защищены.
Копирование разрешается только с указанием активной ссылки на правообладателя.

e-mail: catcatcat.electronics@gmail.com