Views: 3008
Часть вторая – Первая программа на PIC32.
Музыкальная тема к статье, слушаем:
Для начала изучения PIC32 надо иметь или демоплату или самому её изготовить имея микроконтроллер. Начнем из трудоемкого варианта я имею микроконтроллер PIC32MZ1024ECG064 и теперь задача как его подключить и как его запрограммировать. Для программирования и имею PICkit4, который работает быстрее ICD3, поэтому на этапе невозможности приобрести ICD4 рекомендую его или в последнее время в ГАММЕ появился программатор MPLAB Snap по очень интересной цене.
Схема для подключения нашего МК может быть выглядеть так:
MPLAB® Harmony - или как это просто! Часть 2. Схема подключения 155.12 KB 514 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 43 downloads
MPLAB® Harmony - или как это просто! Часть 2. Демопроект...В этой главе главное была задача работа на результат и он получен, как? Это пока не важно, но что не так, читайте в Часть третья – копнём немного глубже.
Это может быть интересно
Game, exercise machine – Logic Gates.Views: 44 Game, exercise machine – Logic Gates. A game, a simulator, a gift – the development of logical thinking. The game is designed to develop logical thinking in children, …
Мультимедийная сеть – AVC-LAN TOYOTAViews: 5925 AVC LAN – протокол обмена данными мультимедийных систем автомобиля. Кодирование данных. При кодировании различаться три типа данных : преамбула – её назначение, это сообщение устройствам на шине, что начинается передача данных. …
Проект с использованием MCC часть 10Views: 1138 Алгоритм управления освещением от нажатия кнопки. Обработка удержания кнопки: Мы должны проверить кнопка в настоящий момент нажата и флаг удержания установлен, если да Проверить таймер удержания “отработал” – …
Просто о внешних переменныхViews: 951 Часто возникает задача когда необходимо предавать данные между модулями программы. Например, передать данные между файлами, или управлять работой модулей. Для этого создаем заголовочный файл и описываем наши переменные как …
Toyota Auto Fader – Модуль включения усилителяViews: 2133 Toyota Auto Fader – Модуль включения усилителя. Часто автолюбители прибегают к замене штатного головного устройства на универсальное мультимедийное, в котором значительно расширены функциональные возможности. Если возникает желание оставить …
Индикатор температурыViews: 2863 Проект для начинающих, на демо плате BB-2T3D-01. Простой индикатор температуры. Проект никак не задумывался, просто на витрину магазин Ворон нужна была демонстрационная модель на макетной плате, чего нибудь работающего. Остановились на индикаторе …
Development Boards PIC18F47Q84Views: 8489 Microchip тішить новими мікроконтролерами. Особливістю цього MCU – це багата інтелектуальна периферія, що дозволяє вирішувати такі завдання на 8 бітних MCU, які неможливо реалізувати на деяких навіть 32 …
AD9833 – Programmable Waveform GeneratorViews: 3089 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я использовал советский Г3-112, но он себя давно изжил. Все думал купить …
Проект с использованием MCC часть 07Views: 1278 Модуль PWM – широтно импульсная модуляция (ШИМ). ПИК контроллеры часто на борту имеют модули ШИМ. На их основе строятся многие узлы управления электро приводами. В нашем варианте мы …
Универсальный терморегулятор ch-c3000Views: 3237 Терморегулятор ch-c3000 предназначен для управления системами регулирования температуры в пределах от – (минус) 55 до + 125 С. Регулятор может использоваться как в системах отопления, так и в …



















Комментарии