• I






      
           

Научно-популярный образовательный ресурс для юных и начинающих радиолюбителей - Popular science educational resource for young and novice hams

Основы электричества, учебные материалы и опыт профессионалов - Basics of electricity, educational materials and professional experience

КОНКУРС
language
 
Поиск junradio

Радиодетали
ОК
Сервисы

Stock Images
Покупка - продажа
Фото и изображений


 
Выгодный обмен
электронных валют

Друзья JR



JUNIOR RADIO

 

Первые шаги с открытой платформой разработки STM32 Nucleo (часть1)

 

 

Сегодня мы представляем первые шаги с советами разработчиков NUCLEO, выпускаемыми STMicroelectronics , которые могут помочь нам продвинуться в 32-битном мире ARM с простотой и отличными характеристиками, сохраняя совместимость с разъемами расширения Arduino, чтобы мы могли использовать его общедоступные разъемы. Успех Arduino  в последние годы вызвал появление нескольких совместимых плат. Среди них действительно интересное решение представляет семейство плат разработки NUCLEO, выпускаемое компанией STMicroelectronics, компанией-лидером полупроводников. В этой статье мы рассмотрим плату NUCLEO F401RE, которая является одной из лучших в серии, не только потому, что она основана на процессоре ARM с тактовой частотой 84 МГц, флэш-памятью 512 КБ и интегрированным блоком с плавающей точкой, но также рядом интересных функций, которые мы увидим вместе. Мы также рассмотрим, как запрограммировать его и протестировать, используя некоторые доступные среды разработки и первую примерную программу. Название платы происходит от микроконтроллера, установленного на плате ( STM32F401), который является его сердцем. Вся серия плат разработки NUCLEO оснащена микроконтроллером STM32 на базе семейства ARM Cortex-M, который использует 32-битную архитектуру RISC. Каждая плата NUCLEO отличается показателями производительности, потребляемой мощности, тактовой частотой и флэш-памятью микроконтроллера STM32 на рисунке.

 

Семья NUCLEO.

 

Тем не менее, все платы имеют тот же макет и ту же форму, что показано на следующем рисунке.

 

Плата  NUCLEO

 

Здесь мы проанализируем модель NUCLEO F401, и мы переместим наши первые шаги программирования, но многие аспекты и функции, которые мы увидим позже, будут действительны для любой другой платы NUCLEO. Одним из первых аспектов, которые мы можем отметить, является наличие множества контактов на границе карты, в том числе знаменитый женский контактный разъем, совместимый с экраном Arduino. Внешне, однако, две двойные полосы контактов "папа"(по одной на каждую сторону) - это то, что STM называет «Morpho», которое используется на других платах разработки STM. На рисунке вырез Arduino показан в фиолетовом цвете, а пин-ром Morpho - синим: обратите внимание на то, как все контакты Arduino перепрофилируются точно на внутренней полосе Morpho (разъемы CN7 и CN10): это позволяет нам всегда иметь доступ к разводке Arduino. Что помогает нам легко отлаживать программное обеспечение и использовать эти выходы.

 

Разъемы платы NUCLEO

 

Штырьки разъемов CN7 и CN10 не подключены к разъему, совместимому с Arduino, и они обеспечивают другой проприетарный ввод-вывод или разъем питания, типичный для микроконтроллеров STM32. Это позволяет использовать карту в других проектах, требующих большей возможности подключения. Существует больше соединителей Morpho CN7 и CN10 располагаются также на задней стороне платы (всегда с полосками для контактов), что позволяет монтировать плату NUCLEO на другой плате. Еще одна интересная особенность - наличие на плате NUCLEO области PCB, которая всегда является частью платы, но служит исключительно для ее программирования и отладки. Это часть PCB, которая близка к двум маленьким кнопкам и которая легко может быть разделена физически; Помогает уменьшить размер платы NUCLEO, который фактически запускает приложения.

 

0/af425bb5ff3023019c24b89906d5e11a.jpg

Макет платы NUCLEO.

 

Часть схемы не зависит от остальной части и всегда оснащена микроконтроллером STM32, соответствующим образом запрограммированным во время производства, для управления функциями программатора и отладчика для семейств микроконтроллеров STM8 и STM32. В частности, это отладчик ST-LINK / V2 , выпускаемая компанией STMicroelectronics, которая в нашем случае интегрирована на одной плате без необходимости дополнительного оборудования (и затрат). Фактически, тот же USB-кабель, который используется для включения питания, также будет служить для программирования и отладки нашей платы NUCLEO, как мы увидим позже. После того, как вы запрограммировали свою плату, вы можете отторгнуть плату отладчика и таким образом создать очень компактную плату микроконтроллера. Всегда можно будет запрограммировать и отладить плату NUCLEO снова, подключив внешние кабели, SWD-разъем (CN4) на отладочной плате к контактам Morpho (CN7) 15 и 17 на плате NUCLEO. Протокол SWD (Serial Wire Debug), недавно введенный ARM и реализованный во всех семействах микроконтроллеров Cortex-M, фактически транспортируется только из двух проводов вместо пятипроводного JTAG, к которому мы обычно привыкли.Таким образом, если не нужны особые потребности и, по крайней мере, на этих ранних стадиях разработки, мы не рекомендуем отделять эти платы, потому что все интегрированные функции намного более удобны для нашей цели (первые шаги с нашей системой STM32. Поскольку мы говорим об энергоснабжении, давайте обсудим далее тему: плата NUCLEO (отладчик ST-LINK / V2 и плата с микрофоном STM32) питается от разъема MINI-USB, который обеспечивает 5 В.  Мы также можем использовать внешний источник питания. Поэтому мы можем подключить штыревой разъем VIN CN6 (совместимый с Arduino), если у нас есть источник питания между 7 В и 12 В или штырьковый разъем E5V на разъеме CN7, если у нас стабильный 5В. В обоих случаях, однако, мы должны помнить, чтобы переместить тройную перемычку JP5 (подключенную по умолчанию к U5V) в положение E5V. Также важно отметить, что если вы используете внешний источник питания, всегда будет возможно запрограммировать и отладить устройство, заботясь о том, чтобы вставить USB-кабель только после питания платы, иначе конфликт будет иметь место, и программирование потерпит неудачу.Чтобы завершить первое описание этой платы, обратите внимание на две кнопки и два светодиода на плате NUCLEO; B1 - это кнопка, используемая программатором и подключенная к контакту 23 разъема Morpho (CN7), а B2 - кнопка сброса. При подключении экрана сверху NUCLEO хорошо снимать крышки с цветных кнопок, в противном случае кнопки B1 и B2 могут быть случайно нажаты. Светодиод LD2 можно использовать программатором и подключается к контакту 6 разъема CN5 (также в этом случае поддерживается совместимость с Arduino Uno, поскольку его D13 подключен к «пользовательскому светодиоду»), а светодиод LD3 красный и светится Когда плата регулярно питается. Наконец, на секции платы ST-LINK / V2 имеется многоцветный светодиод LD1, который идентифицирует различные этапы связи между отладчиком и микропроцессором STM32. Каждый цвет и мигающий рисунок указывают на фазу программирования. Не вдаваясь в подробности, скажем, что этот светодиод будет быстро мигать во время фазы программирования, сплошной зеленый горит когда оно будет успешно. Наконец, перемычка JP6 (называемая IDD), расположенная в NUCLEO, может быть отключена, если мы хотим контролировать потребление энергии микроконтроллером во время операций; Для этого подключите к перемычке JP6, чтобы измерить постоянный ток (JP6 последовательно с напряжением 3,3 В, которое питает микроконтроллер).Знание реального времени работы NUCLEO позволяет узнать доступную емкость аккумулятора (если приложение предназначено для работы на батареях).Перемычка JP1 в ST-LINK / V2 обычно остается несвязной, но должна быть закорочена, если плата питается от USB-разъема, подключенного к зарядному устройству, а не к ПК (иначе светодиод LD3 не переключается).

 

Борис Ландони 

 




Необходимо добавить материалы...
Результат опроса Результаты Все опросы нашего сайта Архив опросов
Всего голосовало: 379



          

Радио для всех© 2024