"Разрабатывать firmware без устройства - это то же, что лепить скульптуру по фотографии."
В этой заметке я произвел обзор учебно-треннировочной электронной платы JZ-F407VET6 с микроконтроллером STM32F407VET6 на борту.
Трудность в том, что при покупке JZ-F407VET6 на Ozone нет схемотехники. И мне пришлось упорно потрудиться, чтобы отыскать в интернете на эту PCB хоть какую-н мало-мальскую документацию и электрическую цепь на JZ-F407VET6. Результат представлен в тексте. Но обо всем по-порядку.
Внешний вид платы таков. Приятная синяя пластинка. С помощью этой малютки Вы сможете сделать свои первые шаги в написании и отладке настоящих микропрограмм.

Плата размером ровно с две кредитные карты.

Устройство весьма хорошо нафаршировано периферией. Блок-схема PCB выглядит так

Ключевые микросхемы из перечня элементов (BOM) тут такие


PCB находится по названию микроконтроллера STM32F407VET6.

Достоинства PCB JZ-F407VET6
++Есть отверстия 3мм по углам. Можете взять отвертку привинтить PCB к какому-н агрегату и использовать плату, как бортовую вычислительную аппаратуру.
++Шелкография позволяет удобно ориентироваться по площади пластинки.
++Пин для отладки PLL PA8 MCO1 удобно выведен на PLD разъем P5.4.

++По крайней мере две лампочки (PE13 и PE14) удачно выведены на аппаратный PWM.

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

++PA4 (DAC_OUT1) PA5 (DAC_OUT2) удачно выведены на PLD разъём P4.6 P4.3 соответственно. Это позволяет отлаживать прошивки осциллографом отображая содержимое конкретной переменной в DAC пин.

++Заложен интерфейс RS232 (UART1) для возможной отладки через консоль управления (shell).

++Все компоненты в верхнем слое
++Кнопка S4 для MCU HW reset. Плюс 3 пользовательские кнопки.

++Часы реального времени RTC с батареей CR1220

++GPIO выходящие на PLD разъём
++Присутствуют два CAN трансивера,

++Заложено 16MByte SPI NOR Flash памяти и отдельно 256 I2C EERPOM для серийного номера .

++ Вмонтирован Ethernet в исполнении DP83848IVV от Texas Instruments. Это IEEE 802.3u (10BASE-T и 100BASE-TX).

++Заложен гараж для SD micro карты памяти J2.

++Заложено два USB порта: Host и device.

++Заложен RS485-трансивер для подключения промышленного оборудования

++Удобный интерфейс JTAG для пошаговой отладки и RTT.

Недостатки PCB JZ-F407VET6
1--Интерфейсы никак не защищены: ни супрессоров, ни разрядников. По питанию тоже никаких защит. Даже на USB пожалели поставить какой -нибудь ESD компонент.
2--Острые углы без фасок.
3--В выбранном МК нет аппаратного крипто модуля. Хотелось бы увидеть какой-н STM32F415xx
4--На SD карту не заходит аппаратного SPI. Только SDIO.

5--Мало LEDов. Всего три. Все красные. Хотелось бы 5 LEDов. Место на PCB позволяет.
6--Около microSD нет крупного конденсатора, который бы не помешал, в процессе работы карточка может потреблять серьёзные импульсные токи.
7--Как по мне, ненужный и громоздкий RS232. Достаточно просто UART вывести на PLD.
8--Хотелось бы программировать через разъём Tag-Connect и по интерфейсу SWD. Зачем на таких платах ставят полноразмерный JTAG? JTAG-20 пинов, SWD - 6 пинов. Для полноценной отладки ARM Cortex - ядерных микроконтроллеров достаточно SWD: GND и 4 сигнальных проводов: SWD, SWC, Reset, SWO, причём последние 2 нужны далеко не всегда.
Надеюсь, что у этой твердотельной электронной платы будут новые ревизии, учитывающие многочисленные пожелания трудящихся.
Идеи учебных проектов на основе PCB JZ-F407VET6 :
--Переходник с USB на CAN.
--Аппаратный менеджер паролей
--Медиа конвертор с 100Base-TX на CAN
--Преобразователь с USB на RS485
--USB Flash-ка
--SD Card Reader
Итоги
Надеюсь кому-нибудь пригодится PCB JZ-F407VET6 для обучения, прототипирования и отладки программных компонентов. Сложно найти что-то похожее. Это настоящая народная электронная парта для обучения программированию микроконтроллеров.
Ссылки
Название |
URL |
Аналитика по PCB: BOM, WireTable |
https://docs.google.com/spreadsheets/d/1B8NtdEGcoOGraCgoRHgIbni_forendMX4anhD_ZhTGg/edit?gid=0#gid=0 |
STM32. Процесс компиляции и сборки прошивки @andreyzaostrovnykh |
|
JZ-F407VET6 code |
|
STM32 + GCC + CMake + Win10 |
|
Атрибуты Xорошей PCB |
|
Сканирование шины RS485 |
|
Подключение SD карты по SPI (Капсула памяти) |
|
CLI через Segger J-Link RTT на ARM Cortex-M |
|
Сборка прошивки STM32 компилятором IAR при помощи GNU Make скрипта (IAR+Make=CI/CD) |
|
Пуск DWT Таймера на ARM Cortex-M (или Ядерный Таймер) |
|
Типовая разметка памяти STM32F4 |
|
Пошаговая GDB отладка прошивки STM32 из консоли cmd |
|
ARM Cortex-M: пуск Memory Рrotection Unit (MPU) |
|
ARM Cortex-M: Исполнение кода из RAM памяти |
|
Основы по GNU Make |
|
Обзор платы Black Pill V2.0 |
|
Пошаговая GDB отладка ARM процессора из консоли в Win10 |
|
Настройка ToolChain(а) для Win10+GCC+С+Makefile+ARM Cortex-Mx+GDB |
|
Переходник с USB на CAN из Отладочной Платы JZ-F407VET6 |
|
Что должно быть на каждой PCB с STM32 @danil_12345 |
|
JZ-F407VET6 schematic |
|
Ссылка на покупку |
Комментарии (12)

NutsUnderline
10.04.2026 18:25цена стала выглядеть интереснее даже с доставкой. у меня в закладках давно лежала с ценой 2200 в сомнительном магазине - других предложений просто не было. я глядел на эту плату больше изза ethernet - а с ним платы на esp32 есть дешевые и популярные.
для can еще дешевле выйдет взять макетку с контроллером любой серии, хоть с 407 хоть с 103 хоть с 431- и подпаять готовый модуль с can физикой

ATmegAdriVeR
10.04.2026 18:25Небольшое уточнение, на плате, видимо, стоит MAX3232esa, а не MAX232esa, как указано на диаграмме: 232 не умеет работать от 3,3 вольт и ей нужны конденсаторы 1 мкф, а не 0,1 как на плате.
В целом хорошая плата для отладки в "настольных" условиях, но вот в промышленное применение она никак не укладывается: интерфейсы никак не защищены: ни супрессоров, ни разрядников. По питанию тоже никаких защит. Даже на USB зажали поставить какую-нибудь USBLC6.
Ещё в качестве потенциальных граблей вижу, кто около microSD нет крупного конденсатора, который бы не помешал, в процессе работы карточка может пожирать серьёзные импульсные токи.
Поставили полноценный DB9 разъём, а развести полноценный RS232 поленились. К чему тогда такой разъём городить, поставили бы 3 пина и всё.
Стоит осциллятор для Ethernet, а для микроконтроллера поставили отдельный обычный кварц... Странное решение.
Но все эти косячки не являются чем-то смертельным, за такую цену эта плата "топ за свои деньги".
И, может, кто-нибудь раскроет великую тайну, зачем на таких платах ставят полноразмерный JTAG? Для полноценной отладки Cortex-ядерных микроконтроллеров достаточно SWD: GND и 4 сигнальных проводов: SWD, SWC, Reset, SWO, причём последние 2 нужны далеко не всегда.

m039
10.04.2026 18:25Почему плата народная, но пришлось с трудом найти схемотехнику? Разве не должно быть наоборот?

aabzel Автор
10.04.2026 18:25Почему плата народная,
Потому что очень доступная по цене. Всего 2100 RUR.
https://aliexpress.ru/item/1005010551850168.html?shpMethod=CAINIAO_STANDARD&sku_id=12000052789184874&spm=a2g2w.productlist.search_results.9.de4376bayJoZ47
sergyk2
ну вот еще бы и учебные проекты для начинающих приложить)
Mcublog
Погуглил по названию платы https://github.com/art103/JZ-F407VET6
Но вообще это стм32 для них огромное количество примеров есть, а чтобы было поинтереснее, то можно адаптировать их к плате)
sergyk2
наверное у меня гугл не той системы, я самостоятельно ничего не смог найти по этой плате, кроме карточек на макркетплейсах
Mcublog
Кроме шуток может быть и другой, сейчас поиск черти как работает из-за внедрения ИИ.
aabzel Автор
Вот хотя бы этот.
Переходник с USB на CAN из Отладочной Платы JZ-F407VET6
https://habr.com/ru/articles/988688/
aabzel Автор
Вот методичка про то с какой стороны подходить к платам на основе STM32
Настройка ToolChain(а) для Win10+GCC+С+Makefile+ARM Cortex-Mx+GDB https://habr.com/ru/articles/673522/
aabzel Автор
Вот, пожалуйста, проект загрузчика для платы JZ-F407VET6
https://github.com/aabzel/trunk/tree/main/source/projects/jz_f407vet6_mbr_gcc_m