Программирование ARM Сборка STM32F4DISCOVERY Thu, February 25 2021  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Сборка STM32F4DISCOVERY Печать
Добавил(а) microsin   

Популярная плата разработчика STM32F4DISCOVERY* - открытый проект [1], и каждый желающий может заказать себе такую печатную плату на JLCPCB и собрать её самостоятельно [2].

Примечание *: новое название для этой платы STM32F407G-DISC1.

Схема STM32F4DISCOVERY довольно сложная и в ней много дефицитных компонентов, но если необходим только работоспособный микроконтроллер STM32F407, то можно собрать только часть схемы.

STM32F4DISCOVERY assembly main MCU

RefDes Ном. Описание
R23 47 Подача напряжения питания на VREF+, выв. 21 STM32F407VGT6.
R24 220 Через этот резистор ножка выхода кварцевого генератора HSE (выв. 13 STM32F407VGT6) соединена с кварцевым резонатором X2 8 МГц.
R25 0 Перемычка, соединяющая ножку входа кварцевого генератора HSE (выв. 12 STM32F407VGT6) с кварцевым резонатором X2 8 МГц.
R26 ? Резистор для эмуляции питания VBAT (выв. 6 STM32F407VGT6), подает на эту ножку +3V от VDD. Если функция энергонезависимой памяти не используется, то этот резистор можно не устанавливать. Также этот резистор не устанавливается, если для VBAT используется батарейное питание.
R28 0 Перемычка, соединяющая с землей ножку питания VSS (выв. 99 STM32F407VGT6).
R30 510 Резистор, через который можно подать лог. 0 на ножку BOOT0 (выв. 94 STM32F407VGT6), если замкнуть перемычку SB18. По умолчанию эта перемычка должна быть замкнута, что обеспечивает при сбросе загрузку программы из FLASH микроконтроллера.
R31 10k Резистор, через который на ножку BOOT0 подается лог. 1 от VDD (+3V).
R32 510 Резистор, через который можно подать лог. 0 на ножку BOOT1/PB2 (выв. 37 STM32F407VGT6), если замкнуть перемычку SB19. По умолчанию эта перемычка не должна быть замкнута, что обеспечивает при сбросе загрузку программы из FLASH микроконтроллера.
R34 10k Резистор, через который на ножку BOOT1/PB2 подается лог. 1 от VDD (+3V).
R35 330 Защитный резистор, соединяющий кнопку пользователя B1 User с ножкой порта PA0 через перемычку SB20.
R36 680 Токоограничительный резистор для оранжевого светодиода LD3 (зажигается при выводе лог. 1 на ножку порта PD13).
R38 100 Токоограничительный резистор, ограничивающий ток разряда конденсатора C38 100 nF, возникающий при нажатии кнопки пользователя B1 User. Если С38 не запаян, то R38 запаивать также необязательно.
R39 220k Через этот резистор на ножку порта PA0 подается лог. 0 (если установлен R35 и запаяна перемычка SB20). Это нагрузочный резистор для кнопки B1 User, на котором появляется лог. 1 при нажатии кнопки.
R40 510 Токоограничительный резистор для зеленого светодиода LD4 (зажигается при выводе лог. 1 на ножку порта PD12).
R41 680 Токоограничительный резистор для красного светодиода LD5 (зажигается при выводе лог. 1 на ножку порта PD14).
R42 Токоограничительный резистор для синего светодиода LD6 (зажигается при выводе лог. 1 на ножку порта PD15).
C14 20pF Балансировочный конденсатор для кварцевого генератора HSE. Если не нужно обеспечивать точные паспортные значения рабочей частоты кварца, то устанавливать не обязательно.
C15
C21 100nF Конденсатор фильтра для VREF+ (выв. 21 STM32F407VGT6).
C22 1uF Конденсатор фильтра для VDDA (выв. 22 STM32F407VGT6).
C23 Конденсатор фильтра для VREF+ (выв. 21 STM32F407VGT6).
C24 100nF Конденсатор фильтра для VDD (+3V).
C25 Конденсатор фильтра для VDDA (выв. 22 STM32F407VGT6).
C26 Конденсатор фильтра для VDD (+3V).
C28 1uF Конденсатор фильтра для VBAT (выв. 6 STM32F407VGT6).
C29 100nF Конденсатор фильтра для VDD (+3V).
C30
C31
C32
C33 2.2uF Подключается к ножке VCAP1 (выв. 49 STM32F407VGT6).
C34 100nF Конденсатор фильтра для VDD (+3V).
C36 2.2uF Подключается к ножке VCAP2 (выв. 73 STM32F407VGT6).
C37 100nF Фильтр сигнала NRST, подключен параллельно кнопке B2 Reset.
L1 cm1608-0603 Фильтр для VREF+ и VDDA.
SB1   Перемычка, через которую подается сигнал сброса NRST, генерируемый кнопкой B2 Reset. Нужно запаять.
SB18   Подает лог. 0 на BOOT0 (выв. 94 STM32F407VGT6). По умолчанию должна быть запаяна, чтобы при сбросе выполнялась программа из FLASH.
SB20   Перемычка, размыкание которой позволяет освободить ножку порта PA0 от сигнала кнопки B1 User.
LD3 Orange Оранжевый светодиод в корпусе 0603 (зажигается при выводе лог. 1 на ножку порта PD13).
LD4 Green Зеленый светодиод в корпусе 0603 (зажигается при выводе лог. 1 на ножку порта PD12).
LD5 Red Красный светодиод в корпусе 0603 (зажигается при выводе лог. 1 на ножку порта PD14).
LD6 Blue Оранжевый светодиод в корпусе 0603 (зажигается при выводе лог. 1 на ножку порта PD15).
B1 User Кнопка, нажатие на которую подает лог. 1 на ножку порта PA0 (если запаяна перемычка SB20 и установлен резистор R35).
B2 Reset Кнопка, нажатие на которую вызывает генерацию сигнала NRST и сброс STM32F407VGT6, если запаяна перемычка SB1.
X2 8 МГц Кварцевый резонатор HSE.
U4 STM32F407VGT6* Микроконтроллер в корпусе LQFP100, 1 мегабайт памяти Flash, 192 килобайт RAM.

Примечание *: можно установить другой микроконтроллер в таком же корпусе. Например, STM32F407VET6 с 512 килобайт FLASH 192 килобайт RAM.

[Питание]

STM32F4DISCOVERY power

RefDes Ном. Описание
R14 1k Токоограничительный резистор для светодиода LD2, который показывает наличие питания +3V на плате.
LD2 Red Светодиод, который показывает наличие питания +3V на плате.
D1 BAT60JFILM Диод Шоттки, соединяющий шины питания U5V (приходит с ножки 1 коннектора CN1 miniUSB встроенного отладчика ST-LINK) и 5V (вход LDO стабилизатора U1 LD3985M33R).
D3 Диод Шоттки, соединяющий выход LDO стабилизатора U1 LD3985M33R и шину питания 3V.
C1 1uF Конденсатор фильтра шины питания 5V (вход LDO стабилизатора U1 LD3985M33R).
C2 100nF
C3 1uF Конденсатор фильтра выхода LDO стабилизатора U1 LD3985M33R.
С4 100nF
С5 10nF Конденсатор, подключенный между GND и выв. 4 стабилизатора U1 LD3985M33R.
U1 LD3985M33R LDO стабилизатор +3.3V.

У меня не было LD3985M33R, и я заменил его на NCP1117ST33T3G в корпусе SOT-223, прорезав на фольге заливки GND дополнительные контактные площадки.

STM32F4DISCOVERY power replace U1

[Отладчик]

Внешний отладчик SWD. Чтобы иметь возможность отладки с помощью внешнего ST-LINK, необходимо запаять коннектор CN2 SWD, резисторы R12, R15, коннектор для перемычек CN3, перемычки SB3, SB5, SB7, SB9.

Обратите внимание, что для подключения к отладчику через интерфейс SWD нужно только 3 провода - GND, SWCLK (сигнал T_JCLK на схеме) и SWDIO (сигнал T_JTMS на схеме). Поэтому резисторы R13, R16, R17, перемычки SB11 и SB12 запаивать не обязательно.

STM32F4DISCOVERY external SWD debug top

RefDes Ном. Описание
R12 22 Защитный резистор, соединен последовательно с сигналом T_JTCK. Соединяется с сигналом TCK/SWCLK через перемычки SB3, SB5, 1-2 CN3 и в конечном итоге приходит на ножку порта PA14 (выв. 76 STM32F407VGT6).
R13* 10k Не знаю, зачем этот резистор, устанавливать его не обязательно.
R15 22 Защитный резистор, соединен последовательно с сигналом T_JTMS. Соединяется с сигналом TMS/SWDIO через перемычки SB7, SB9, 3-4 CN3 и в конечном итоге приходит на ножку порта PA13 (выв. 72 STM32F407VGT6).
R16* 22 Защитный резистор, соединен последовательно с сигналом T_NRST. Соединяется с сигналом NRST через перемычку SB11 и в конечном итоге приходит на выв. 14 STM32F407VGT6.
R17* 22 Защитный резистор, соединен последовательно с сигналом T_SWO. Приходит на ножку порта PB3 через перемычку SB12 (выв. 89 STM32F407VGT6).

Примечание *: для отладки через интерфейс SWD эти компоненты не нужны.

Встроенный ST-LINK. На плате STM32F4DISCOVERY разведен свой отладчик, и если Вы захотите его собрать, то ничто не может помешать это сделать.

STM32F4DISCOVERY internal SWD debug top

RefDes Ном. Описание
R1 0 Перемычка, соединяющая анод красного компонента двухцветного светодиода L1 с шиной питания 3V.
R3 100 Токоограничительный резистор для зеленого компонента двухцветного светодиода LD1.
R4 100 Токоограничительный резистор для красного компонента двухцветного светодиода LD1.
R6 10k Board Ident: PC13=0. Назначение этого резистора мне непонятно. Подает лог. 0 на ножку порта PC13 микроконтроллера отладчика STM32F103CBT6.
R7 100k Подает лог. 0 на ножку BOOT0 микроконтроллера отладчика STM32F103CBT6.
R8   Подает лог. 0 на ножку ID коннектора miniUSB отладчика, CN1 выв. 4.
R9 1.5k Подает +3V на ножку D+ коннектора miniUSB отладчика, CN1 выв. 3. Это необходимо, чтобы хост PC определил встроенный отладчик как устройство USB High Speed.
R10 0 Перемычка, соединяет ножку D+ коннектора miniUSB отладчика, CN1 выв. 3, с сигналом USB_DP (ножка порта PA12, выв. 33 корпуса LQFP48 микроконтроллера отладчика STM32F103CBT6).
R11 Перемычка, соединяет ножку D- коннектора miniUSB отладчика, CN1 выв. 2, с сигналом USB_DM (ножка порта PA11, выв. 32 корпуса LQFP48 микроконтроллера отладчика STM32F103CBT6).
R12 22 Защитный резистор, соединен последовательно с сигналом T_JTCK. Соединяется с сигналом TCK/SWCLK через перемычки SB3, SB5, 1-2 CN3 и в конечном итоге приходит на ножку порта PA14 (выв. 76 STM32F407VGT6).
R15 22 Защитный резистор, соединен последовательно с сигналом T_JTMS. Соединяется с сигналом TMS/SWDIO через перемычки SB7, SB9, 3-4 CN3 и в конечном итоге приходит на ножку порта PA13 (выв. 72 STM32F407VGT6).
R18 100k RC-цепочка сброса, подает лог. 1 на ножку NRST микроконтроллера отладчика (выв. 7 корпуса LQFP48 STM32F103CBT6).
R20 Часть делителя напряжения R19R20, см. R19.
R68, R69 100 Назначение этих резисторов мне неизвестно. Устанавливаются с обратной стороны платы.
C7, C8, C10, C12 100nF Фильтрация шины питания 3V микроконтроллера STM32F103CBT6.
C11 Часть RC-цепочки сброса, см. R18.
C6, C9 20pF Конденсаторы на кварце X1 8 МГц. Эти конденсаторы устанавливать не обязательно.
X1 8 МГц Кварцевый резонатор HSE микроконтроллера отладчика STM32F103CBT6.
SB3, SB5   Эти перемычки находятся на обратной стороне платы. Их необходимо запаять, они вместе с перемычкой на коннекторе CN3 отвечают за прохождение сигнала SWCLK отладчика.
SB7, SB9   Эти перемычки находятся на обратной стороне платы. Их необходимо запаять, они вместе с перемычкой на коннекторе CN3 отвечают за прохождение сигнала SWDIO отладчика.
D1 BAT60JFILM Диод Шоттки, соединяет ножку VCC коннектора miniUSB (выв. 1 CN1) с шиной питания 5V. Подает напряжение на вход стабилизатора +3.3V U1 (см. выше описание сборки питания).
U2 STM32F103CBT6 Микроконтроллер встроенного отладчика ST-LINK.

После сборки прошейте микроконтроллер U2 через его встроенный загрузчик UART. Процедура прошивки и её обновления описана в статье [3].

[Ссылки]

1. STM32F407G-DISC1 CAD Resources site:st.com.
2. en.mb997_manufacturing.zip - печатная плата и схема, Gerber-файлы STM32F4DISCOVERY.
3. Обновление прошивки ST-LINK на плате STM32 DISCOVERY.

 

Добавить комментарий


Защитный код
Обновить

Top of Page