MPLAB® Harmony – или как это просто! Часть 2.

Views: 2686


Часть вторая – Первая программа на PIC32.


Музыкальная тема к статье, слушаем:

Play


Для начала изучения PIC32 надо иметь или демоплату или самому её изготовить имея микроконтроллер. Начнем из трудоемкого варианта я имею микроконтроллер PIC32MZ1024ECG064 и теперь задача как его подключить и как его запрограммировать. Для программирования и имею PICkit4, который работает быстрее ICD3, поэтому на этапе невозможности приобрести ICD4 рекомендую его или в последнее время в ГАММЕ появился программатор MPLAB Snap по очень интересной цене.

Схема для подключения нашего МК может быть выглядеть так:

Значок

MPLAB® Harmony - или как это просто! Часть 2. Схема подключения 155.12 KB 476 downloads

Схема подключения PIC32MZ1024ECG064. ...

Загрузим MPLABX, создадим проект в формате гармони.

Выберем вариант создания проекта в формате Гармони, и жмем кнопку далее.

В этом окне во первых в строке путь к гармони проверяем путь, он должен указывать на последнюю загруженную версию

В строке расположение проекта надо будут указать где мы желаем хранить наш проект.

Для этого нажмем кнопку и выберите место хранения своего проекта.

В строке имя проекта введите имя, а отрывающемся списке целевое устройство выберите ваш микроконтроллер.

Если вы используете фирменную демоплату, вы можете указать это выбрав из списка доступных.

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

Нажмите символ настройки проекта.

Выберем общие параметры.

и в выпадающем списке выбреем кодировку Windows-1251 это будет корректно для кириллических шрифтов в Windows.

В параметре конфигурация, выберем версию языка программирования, и тип программатора.

Нажимаем ок, на этом предварительная настройка окончена (процесс компиляции пока касаться не будем). Перейдем в настройки гармонии. Откроем закладку настройка тактового генератора. Тут для начала только посмотрим, периферия настроена на тактовую 100 МГц, процессор на 200 МГц. На практике контроллер можно разгонять до 250, но тут надо смотреть на возможности запуска умножителя, у меня были версии которые стабильно запускались на 220, 230 МГц.

Переключимся на закладку диаграмма выводов. В этой закладке настроим наши выводы RB1 and RB0 на вывод. Клацаем на символе вывода откроется меню.

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

Тут видно возможности настройки портов микроконтроллера (глубоко не копаем). Далее необходимо нажать кнопку генерации проекта, для формирования файлов проекта.Откроется окно в котором конфигуратор спроси, куда необходимо сохранить файл конфигуратор, вы можете изменить место расположения, если в этом нет необходимости просто давим сохранить.

После этого откроется окно с выбором стратегии создания, если пока мы просто нажмем кнопку генерировать и создадим проект.

На это все претензии к гармонии окончены.

После этого в проекте появятся фалы откроем главный файл.

Чтобы проверить что-то у нас получилось или нет, заставим мигать наши светодиоды. Изменим наш проект следующим образом:

#define Clear_WDT() (WDTCONbits.WDTCLRKEY=0x5743)  

#define LED1    LATBbits.LATB0
#define LED2    LATBbits.LATB1



int main ( void )
{
    /* Initialize all MPLAB Harmony modules, including application(s). */
    SYS_Initialize ( NULL );

// настройка таймера 1 - функция интеграции
    PR1 = 0xFFFF;               // 
    T1CONbits.TCKPS = 0b11;     // 0b11 = 1:256 prescale value
    T1CONbits.ON = 1;           // включить

    LED1=1;

    while ( true )
    {
        /* Maintain state machines of all polled MPLAB Harmony modules. */
        SYS_Tasks ( );
        
        Clear_WDT();            // Сброс
        if(TMR1>50000) 
        {
            TMR1=0;
            LED1 = !LED1;
            LED2 = !LED2;
        }

    }

    /* Execution should not come here during normal operation */

    return ( EXIT_FAILURE );
}

Подключаем программатор к демоплате, и проверяем программирование, нашего микроконтроллера. Светодиоды должны попеременно мигать, с частотой близкой 0,5 герца!Выполнение прошивки МК.

Демоплата, которую я использовал для тестирования.

Вот так можно, быстро настроит МК для дальнейшей работы и перейти к самой сути проекта.

Значок

MPLAB® Harmony - или как это просто! Часть 2. Демопроект Гармони. 209.82 KB 30 downloads

MPLAB® Harmony - или как это просто! Часть 2. Демопроект...

В этой главе главное была задача работа на результат и он получен, как? Это пока не важно, но что не так, читайте в  Часть третья – копнём немного глубже.


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


  • MAX7219/21 и 8х8 LED дисплеиMAX7219/21 и 8х8 LED дисплеи
    Views: 931 MAX7219, MAX7221 предназначены для вывода информации на 8 разрядов семисегментного индикатора, но на нем легко организовать вывод на светодиодные индикаторы 8х8. продолжение следует…. Это может быть интересно
  • VU Meter Tower ARTVU Meter Tower ART
    Views: 1611 Стерео индикатор уровня аудио сигнала. Компактность и удобство проектирования устройств на светодиодах WS2812B, а также легкость реализации алгоритма родило идею созданию своей конструкции. В этом проекте я предоставлю …
  • MPLAB® Harmony – или как это просто! Часть 3.MPLAB® Harmony – или как это просто! Часть 3.
    Views: 2091 Часть третья – копнём немного глубже. Вы наверное заметили, что во второй главе, вроде сначала все шло как по маслу, а потом, что бы заморгали светики, я вставил …
  • Светодиоды со встроенным драйвером WS2812BСветодиоды со встроенным драйвером WS2812B
    Views: 931 Производитель http://www.world-semi.com Краткое описание продукции фирмы Каталог продукции” catcatcat_ws_19 catcatcat_ws_15 catcatcat_ws_11 catcatcat_ws_07 catcatcat_ws_03 catcatcat_ws_18 catcatcat_ws_14 catcatcat_ws_10 catcatcat_ws_06 catcatcat_ws_02 catcatcat_ws_05 catcatcat_ws_09 catcatcat_ws_13 catcatcat_ws_17 catcatcat_ws_16 catcatcat_ws_12 catcatcat_ws_08 catcatcat_ws_04 catcatcat_ws_01 This jQuery …
  • Development Boards PIC18F47Q84Development Boards PIC18F47Q84
    Views: 3169 Microchip тішить новими мікроконтролерами. Особливістю цього MCU – це багата інтелектуальна периферія, що дозволяє вирішувати такі завдання на 8 бітних MCU, які неможливо реалізувати на деяких навіть 32 …
  • I2C MODULE – PIC18F25K42 Device ID Revision = A001I2C MODULE – PIC18F25K42 Device ID Revision = A001
    Views: 1081 I2C MODULE Обход ошибок в версии I2C MODULE – PIC18F25K42 Device ID Revision = A001 В Серии K42 применен совершенно новый модуль шины I2C, который позволяет поддерживать все …
  • ESP8266  процедура получение данных даты и времени от серверов точного времени.ESP8266 процедура получение данных даты и времени от серверов точного времени.
    Views: 5884 Эта функция доступна уже в версии 1.6.1. Для многих приложений, необходимо часы реального времени,  если в вашем проекте есть модуль WiFI ESP8266, то легко можно сделать следующим образом. …
  • Сумеречное релеСумеречное реле
    Views: 1457 Реле управления освещением, датчик день-ночь – одним словом фотореле для управления освещением или формирования сигнала для системы умный дом о понижении или повышении освещенности относительно заданного уровня. Реле выполнено по классической схеме, конденсаторный блок питания, от сети переменного тока …
  • PIC18 – System ArbitrationPIC18 – System Arbitration
    Views: 572 Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый …
  • CLUBBEST – reasoning on the visualization of music.CLUBBEST – reasoning on the visualization of music.
    Views: 130 ВІД ЗАХОДУ ДО СВІТАНКУ АБО ПОБАЧИТИ МУЗИКУ.     Час доби, коли почуття людини загострюються, – це час від заходу до світанку. В цей час людина відкрита для …




 

Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

Продолжайте читать

НазадДалее

Комментарии

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

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