Старт ARM. Прерывания на STM32F429I-DISCO. HAL

Всем привет!) сегодня продолжаем покорять stm32f4, в данной статье будем юзать stm32f429ZI (его DISCO) и использовать прерывания микроконтроллера. В момент возникновения прерывания необходимо будет зажигать светодиод на борде (их 2). Начнем с начала. Настраиваем(конфигурируем) GPIO в void MX_GPIO_Init(void). /*Configure GPIO pin : PA0 */ GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); PA0 - пин для пользовательской кнопки (user button) Прерывание ...
Далее

Старт ARM. STM32CubeMX. STM32 GPIO. HAL

Всем привет!) Продолжаем изучать ARM микроконтроллеры от компании ST, сегодня будем говорить, как можно быстро создать проект и включить светодиод не вдаваясь в глубокие познания архитектуры микроконтроллера. Для начала переходим по ссылке скачиваем программу STM32CubeMX и STM32CubeUpdater (один установочный пакет). Первая программа является генератором проектов, вторая является обновлением HAL-а для ST серии микроконтроллеров. 1. Запускам программу и создаем проект. 2. Выбираем микроконтроллер или борду ...
Далее

Старт ARM. Реализуем USB HID на STM32F4. Часть 2. HAL

Всем привет!) продолжаем работать с кастомным USB HID - ом, теперь на STM32F4 (STM32F4DISCOVERY). Будем юзать HAL, для начала необходимо скачать STM32CubeMX. После установки запускаем его (SMT32F4CubeMX - и обновляем его с помощью STM32CubeUpdater – необходимо скачать данную софтину), и создаем новый проект New Project, переходим во вкладку Board Selector и из приведенного списка выбираем Discovery STM32F4DISCOVERY STM32F407VG и нажимаем ОК. Алгоритм наших действий: ...
Далее

Старт ARM. Встроенная Flash.

Всем привет!) Продолжаем «мучать» ARM, сегодня речь пойдет про Flash. Адресное пространство Flash Имеем расширенный встроенный флэш-контроллер (EEFC), далее просто flash, имеет 32-разрядную внутреннею шину. Flash имеет 128-битный или 64-битный интерфейс памяти. Flash может программироваться, ее можно стирать, можно flash блокировать и разблокировать, flash используя полный набор команд. Одна из команд возвращает определение внедренного флэш дескриптора, который информирует систему об организации флэш, в результате ...
Далее

Старт ARM. Реализуем USB HID на SAM3U. Часть 1.

Всем привет!), сегодня речь пойдет об USB HID (основа Keil\ARM\Boards\...\...\HID). USB HID (human interface device) class — класс устройств USB для взаимодействия с человеком. Этот класс включает в себя такие устройства как клавиатура, мышь, игровой контроллер. Класс USB HID определен в нескольких документах, предоставляемых USB Implementers Forum, в частности, рабочей группой по работе с устройствами. Иногда всё-таки приходит время перехода с виртуальных com портов ...
Далее

Старт ARM. Работаем с UART-ом на SAM3N4C.

Всем привет!) Продолжаем изучать армы от атмел и сегодня поговорим про uart. UART (Universal Asynchronous Receiver-Transmitter - Универсальный асинхронный приёмопередатчик) работает аналогично RS-232, только на TTL уровне. Как организовать работа с этим интерфейсом на sam3n4c, для начала необходимо: 1. Разрешить PMC для clock pmc_enable_periph_clk(ID_UART0) или PMC->PMC_PCER0 = 1 << ID_UART0, UART0 имеет следующий адрес (0x400E0600U), информацию по регистрам uart-а можно найти в заголовочном файле ...
Далее

Старт ARM. Работа с графическим экраном SAM3N-EK. Часть 1-ая.

Всем привет!) Продолжаем серию уроков по программированию атмеловских АRМов. Сегодня речь пойдет о программирование и использовании графического экрана на борту отладочной платы sam3n-ek. На нашем evolution kitе стоит TFT экран TM020GDZ18 176x220 пикселей с интегрированным драйвером ILI9225B. Как всегда создаем новый проект с поддержкой ASF, ASF это фреймворк атмел для работы с микроконтроллерами, большое количество библиотек (p.s. совсем не джедайский путь). Работа с экраном ...
Далее

Костыли с J-link и stm32f4-discovery

В статье рассмотрим два костыля: работа с программатором J-link китайского производства и старт работы stm32f4-discovery. Начнем с первого костыля, китайский отладчик J-link (смотри рисунок снизу). С чего же началось, после зашивки программы на кристалл SAM3N4C, оставил отладчик подключенным usb порту, через час подхожу к компу смотрю, лампочка на отладчике потухла, попробовал прошить, тоже не получилось. Долго плевался, сразу подумывал поднять Atmel ICE (родной отладчик ...
Далее

Управляем шаговым двигателем с помощью Arduino UNO и uln2003a

Управляем шаговым двигателем с помощью Arduino UNO и uln2003a Шаговый двигатель. Шаговый электродвиигатель — это синхронный бесщёточный электродвигатель с несколькими обмотками, в котором ток, подаваемый в одну из обмоток статора, вызывает фиксацию ротора. Последовательная активация обмоток двигателя вызывает дискретные угловые перемещения (шаги) ротора. Одним прекрасным днём, попался мне в руки как-то, шаговый двигатель БМГ — 200 — 265 Ф. И сразу же захотелось немного ...
Далее

Старт ARM. GPIO SAM3N. Atmel Studio 6.

Всем привет! Сегодня речь пойдет про Atmel Studio. Устанавливаем Atmel Studio, для этого необходимо зарегистрироваться на atmel.com и скачать программу Atmel Studio 6 (6.1 или 6.2). После установки AtmelStudio 6.1, запускаем среду для программирования микроконтроллеров (ARM и AVR), нас сразу приветствует стартовое окно «Начальная страница». В центре экрана присутствует окно с вкладками, в этих вкладках мы можем просматривать последнюю новостную информации от компании Atmel, ...
Далее

Кубок БГТУ по робототехнике RoboCUP 2014

В Белорусском государственном технологическом университете(https://www.belstu.by/) прошел кубок по робототехнике RoboCUP 2014, это первое мероприятие такого рода в университете, где участники и их роботы не только состязались в уверенном прохождении трассы по линии, но и в рамках кубка попробовали свои силы в миниконкурсах: программирование на базе Arduino (решение аппаратно-программных задач), проверка знаний по общей автоматике и решение задач по оптимальному управлению. С лева направо: ассистен-стажер ...
Далее