Автор: admin, 11 февраля, 2025
Краткое описание

Первая программа на К1986ВЕ92FI (MDR1211FI) на отладочной плате MDR32 Miluino

Настройка среды и платы

Для того, чтобы контроллер выполнял наши команды, его нужно запрограммировать. Для этого существуют различные среды, называемые IDE (Integrated development environment или Интегрированная среда разработки). В нашем случае будет использоваться среда Keil uVision 5 MDK-ARM от фирмы Keil. Данная среда предназначена для разработки встраиваемого программного обеспечения под микроконтроллеры с ядром ARM.

  • Устанавливаем и запускаем среду Keil uVision 5
  • Скачиваем библиотеки с официального сайта АО "ПКК Миландр" и устанавливаем их
  • Выбираем в списке меню "Project" первую директиву: New uVision Project… и нажимаем на неё. 
  • В диалоговом окне «Select Device for Target» выбираем Milandr -> 1986ВЕ92 (MDR32F9Q2I)
  • Далее в окне "Manage Run-Time Enviroment", ставим чек-боксы как показано на рисунке 1.
     

Рисунок 1. - Окно полключения библиотек

Кнопкой создать файл или через меню File->New создаем файл и сохраняем его с помощью команды Save As (сохранить как…) в папке проекта с расширением «.с», это например может быть «main.c» или «app.c».

После чего надо написать следующий код:

#include "MDR32Fx.h"                    // Device header


int main(void)
{
	MDR_RST_CLK->PER_CLOCK |= (1 << 21); // Тактирование порта А
        /* Скорость нарастания фронтов на А.1 PORT_PWR1_Msk прописан как аналог 0b0100 через директиву препроцессора в MDR32Fx.h*/
	MDR_PORTA->PWR |= PORT_PWR1_Msk; 
	MDR_PORTA->ANALOG |= 0x02; // Цифровой режим работы А.1
	MDR_PORTA->OE |= 0x02; // А.1 порта А настроен на выход
	
	while(1)
	{	
		for(int i = 0; i < 65535; i++);
		MDR_PORTA->RXTX ^= 0x02; // Данные на А.1 порта А 
		//поочередное инвертирование 1-0-1-0...			
	}
} 

Подключаем плату к USB ПК, выполняем компиляцию и подготовливаем плату к прошивке.

Рисунок 2. - Выбор типа программатора.

Прошиваем код, следим за его выполнением. Если в настройках среды не установлен режим автоматической перезагрузки контроллера, то надо нажать на плате кнопку "RESET" и программа начнет выполнятся.

Дополнительные файлы