Обзор отладочной платы JZ-F407VET6: возможности и применение

Прокомментировать Просмотры: 34

«Разработка прошивки без целевого оборудования — это всё равно что попытка изваять скульптуру по фотографии».

В этой статье я подготовил подробный обзор отладочной платы JZ-F407VET6, сердцем которой выступает микроконтроллер STM32F407VET6.

Основная сложность заключалась в том, что при покупке JZ-F407VET6 на маркетплейсах документация, включая принципиальную схему, практически отсутствует. Мне пришлось приложить немало усилий, чтобы разыскать в сети хоть сколько-нибудь внятную техническую документацию на эту плату. Результатами своих изысканий я делюсь ниже. Но давайте обо всем по порядку.

Визуально плата представляет собой компактный модуль в эстетичном синем исполнении. Этот «малыш» станет отличным инструментом для освоения основ разработки и отладки встроенного программного обеспечения.

 Внешний вид JZ-F407VET6
Внешний вид JZ-F407VET6

Габариты платы сопоставимы с двумя банковскими картами.

Устройство обладает весьма богатым набором периферии. Блок-схема печатной платы представлена ниже:

Перечень ключевых электронных компонентов (BOM) выглядит следующим образом:

Распиновка выводов микроконтроллера

Данная плата идентифицируется по названию установленного MCU: STM32F407VET6.

Преимущества платы JZ-F407VET6:
++ Наличие крепежных отверстий (3 мм) по углам позволяет надежно закрепить плату в корпусе устройства и использовать её как основу для встраиваемой системы.
++ Качественная шелкография значительно упрощает навигацию по компонентам платы.
++ Пин для отладки PLL (PA8/MCO1) выведен на разъем PLD P5.4, что весьма удобно.

++ Светодиоды (PE13 и PE14) подключены к аппаратному ШИМ-контроллеру (PWM).

Это позволяет программно регулировать их яркость без дополнительной нагрузки на процессор.

++ Выводы PA4 (DAC_OUT1) и PA5 (DAC_OUT2) выведены на разъем P4, что удобно для мониторинга значений переменных через осциллограф в режиме реального времени.

++ Предусмотрен интерфейс RS-232 (UART1), полезный для организации консоли управления (Shell).

++ Все элементы расположены на верхнем слое.
++ Наличие кнопки аппаратного сброса (S4) и трех пользовательских кнопок.

++ Поддержка часов реального времени (RTC) с питанием от батарейки CR1220.

++ Выведенные на разъемы GPIO и наличие двух CAN-трансиверов.

++ Память: 16 МБ SPI NOR Flash и EEPROM (256 Кбит) для хранения уникальных данных или серийных номеров.

++ Наличие Ethernet-контроллера DP83848IVV (стандарт IEEE 802.3u, 10/100 Mbps).

++ Слот для карт памяти microSD.

++ Два порта USB: Host и Device.

++ RS-485 трансивер для промышленного применения.

++ Стандартный JTAG-разъем для отладки.

Недостатки:
1— Полное отсутствие защиты интерфейсов: нет ни супрессоров, ни разрядников. По цепям питания защиты также не предусмотрено, даже на USB-порте.
2— Плата имеет острые края без фаски.
3— Отсутствие встроенного аппаратного крипто-модуля (было бы здорово увидеть серию STM32F415).
4— SD-карта подключена через SDIO, без возможности использования SPI.

5— Всего три светодиода (все красные), хотя на плате достаточно места для расширения.
6— Около слота microSD не хватает электролитического конденсатора для сглаживания импульсных токов при работе с картой памяти.
7— Наличие громоздкого разъема DB9 для RS-232, на мой взгляд, избыточно.
8— Использование 20-пинового JTAG вместо современных Tag-Connect или 6-пинового SWD — для ARM Cortex-M вполне достаточно 4-х проводов (SWD, SWC, Reset, SWO) для полноценной отладки.

Надеюсь, будущие ревизии этой платы учтут пожелания пользователей.

Идеи проектов для реализации:
— USB-CAN адаптер.
— Аппаратный менеджер паролей.
— Конвертер протоколов 100Base-TX — CAN.
— USB — RS-485 преобразователь.
— Эмуляция USB Flash-накопителя.
— Устройство чтения SD-карт.

Итоги

Плата JZ-F407VET6 — достойный инструмент для обучения, прототипирования и отладки программных решений. Это по-настоящему доступная «электронная парта» для всех, кто хочет глубоко погрузиться в программирование микроконтроллеров.

Ссылки

Название

URL

Техническая аналитика (BOM, Pinout)

https://docs.google.com/spreadsheets/d/1B8NtdEGcoOGraCgoRHgIbni_forendMX4anhD_ZhTGg/edit?gid=0#gid=0

Процесс сборки прошивки @andreyzaostrovnykh

https://habr.com/ru/companies/timeweb/articles/793152/

Исходный код для JZ-F407VET6

https://github.com/art103/JZ-F407VET6

STM32 + GCC + CMake + Windows 10

https://habr.com/ru/articles/1019118/

Характеристики идеальной платы

https://habr.com/ru/articles/655879/

Сканирование шины RS-485

https://habr.com/ru/articles/752292/

Работа с SD по SPI

https://habr.com/ru/articles/974076/

CLI через Segger J-Link RTT

https://habr.com/ru/articles/1018168/

Сборка STM32 прошивки через IAR + GNU Make

https://habr.com/ru/articles/1010484/

Запуск DWT таймера на Cortex-M

https://habr.com/ru/articles/1005622/

Разметка памяти STM32F4

https://habr.com/ru/articles/1001268/

Пошаговая отладка STM32 через GDB

https://habr.com/ru/articles/979122/

MPU на ARM Cortex-M

https://habr.com/ru/articles/950298/

Код из оперативной памяти (RAM)

https://habr.com/ru/articles/935360/

Основы GNU Make

https://habr.com/ru/articles/748162/

Обзор Black Pill V2.0

https://habr.com/ru/articles/745580/

Отладка ARM через GDB в Windows

https://habr.com/ru/articles/694708/

Настройка Toolchain (GCC+C+Makefile)

https://habr.com/ru/articles/673522/

USB-CAN адаптер на JZ-F407VET6

https://habr.com/ru/articles/988688/

Стандарты PCB для STM32 @danil_12345

https://habr.com/ru/articles/979482/

Схема JZ-F407VET6

https://github.com/seelpro/JZ-F407VET6/tree/main

Купить плату

https://aliexpress.ru/item/1005009621108167.html?spm=a2g2w.orderdetail.0.0.9a254aa6dtJXg0&sku_id=12000049658849814

 

Источник

Поделиться:

Похожие статьи

Поиск по играм, новостям и статьям…

Введите не менее двух символов

Введите не менее двух символов