cancel
Showing results for 
Search instead for 
Did you mean: 

stm32f7 custom pcb

con3
Senior
Posted on February 27, 2018 at 20:37

Hey everyone,

This is going to be a lengthy post but any help will really be appreciated!!

I'd like to integrate the MCU that I've been using into my final system(i.e no dev board)

I've designed PCB's in the past, but this feels a little more up there, so I just want a few checks

I've read the documentation although this is what I've gathered:

Documents used:

http://www.st.com/content/ccc/resource/technical/document/datasheet/group3/d6/11/13/15/f4/38/49/79/DM00330506/files/DM003305pdf/jcr:content/translations/en.DM003305pdf

http://www.st.com/content/ccc/resource/technical/document/application_note/b0/5c/ba/b2/cb/10/41/dd/DM001645pdf/files/DM001645pdf/jcr:content/translations/en.DM001645pdf

http://www.st.com/content/ccc/resource/technical/document/application_note/b9/9b/16/3a/12/1e/40/0c/CD001675pdf/files/CD001675pdf/jcr:content/translations/en.CD001675pdf

This is an overview of me designing the necessary hardware to get a device up and running. I have a few questions that I laid down in each section. I've split it into the same sections that the ''

http://www.st.com/content/ccc/resource/technical/document/application_note/b0/5c/ba/b2/cb/10/41/dd/DM001645pdf/files/DM001645pdf/jcr:content/translations/en.DM001645pdf

'' application note covers.

Power supplies:

The device needs a supply of 1.8V to 3.6 V.

http://www.analog.com/media/en/technical-documentation/data-sheets/ADM7pdf

.

I'll connect this to all peripheral supplies of the device(sdmmc and usb, etc.), therefore I can ignore the

https://imgur.com/DU8VCWP

I've also followed the following overview of the power supplies for the stm32f722ze:

0690X00000604QbQAI.jpg

And I've added all the specified parallel capacitors and followed the footnotes shown.

Voltage regulator:

https://imgur.com/Tg27zJo

Looking at my technical manual it refers to the pin for activation as

https://imgur.com/vI38DxE

https://imgur.com/fCcFF7p

Power supply supervisor:

I've set the power supply supervisor to be on and plan on using an external battery to run the RTC during low power modes.

Clocks

On startup the device uses the internal 16 MHz clock, after which a external clock (4 - 26 MHZ) can be selected. This will be scaled to 216 MHz using the PLL's within the device.

https://www.digikey.com/product-detail/en/ecs-inc/ECS-2520S33-250-FN-TR/XC2198CT-ND/6578505

for the main clock

Further a LSE clock can also be externally used.This will allow for the RTC to have a very accurate clock/calendar and for other timing functions.

https://www.mouser.co.za/ProductDetail/?qs=sFmtmVcT%2ffvMvdzcXdd8BQ==

Boot mode

For the bootmode, there are a few different sequences shown in the manuals and application note an26

https://imgur.com/plRJ6PI

patterns that can be applied depending on the chip.

https://imgur.com/YSyJwv7

. I'm not sure how to apply this to the board though.

I've read the following section from the ''Getting started with STM32F7 Series MCU hardware development'' application note. It seems that setting pin boot0 to 0V loads from flash and setting pin boot0 loads from flash? I'm not too sure about this though.

0690X00000604QXQAY.jpg

Debug management

To debug the board I plan on implementing the ST link that the nucloes come with.

0690X00000604QRQAY.jpg

It seems that I only need to decouple the jumpers(shown in red) and then use the swd pins shown in green to debug the board. I'll couple the pins shown in green to my custom board.

0690X00000604QWQAY.jpg

Looking at the nucleo-f722ze schematic for the header pins (shown above), I'm assuming I only need the following pins:

pin 2 : T_JTCK (SWCLK)

pin3 : connect to ground

pin 4 : T_JTMS (SWDIO)

Thanks in advance for any help, I really appreciate it

arm-cortex-m7 pcb-assembly pcb-design stm32f7

18 REPLIES 18
Posted on March 01, 2018 at 11:26

T J wrote:

... I use Kicad and Visual Studio

...

What extensions (arm related) are you using on VS?

Posted on March 01, 2018 at 20:51

I completely understand

Thank you for the detailed response. I really appreciate it.

Posted on March 01, 2018 at 23:21

Visual GDB  approx $150

Posted on March 02, 2018 at 06:56

That is all? When you start an STM32 project, you do everything manually? It allows you to chose the toolchain and microcontroller?

Posted on March 02, 2018 at 08:16

I use the Cube to initialise the subsystems on all my boards.

From the cube I work through the PCB in Kicad.

From VS I import the project from the cube folder.

Posted on March 02, 2018 at 09:33

Thank you T.J.!

Posted on March 03, 2018 at 11:07

Im curious why you don't use the atollic true studio by stm?

Posted on March 03, 2018 at 11:10

Good day

Sedlacek.Oliver

,

Thank you for the recommendations, I think the peripherals I'm using run at 108 or 216, but I'll definitely double check.

I'm still a little confused about the boot pins though.

I read the ref manual and app note an2606 but I feel like I'm missing something. This forum post seems to round off my understanding.

https://community.st.com/0D50X00009XkYDuSAN

The answer given by

Centauris.Alpha

seems to imply that the boot pins allow you to program the flash through a peripheral(uart/spi,etc) if its blank. And if using JTAG/SWD to program there's no reason to worry about the boot pins?

/external-link.jspa?url=https%3A%2F%2Felectronics.stackexchange.com%2Fquestions%2F336677%2Fdo-i-really-need-to-put-stm32-microcontroller-into-bootloader-mode-to-program-it

.

My understanding was setting the boot pins, sets where you program the device(SRAM/Flash and an address in this memory location) through SWD/JTAG or a peripheral. If Im using SWD, do I need to worry about the boot pin at all?

After this the question will be fully answered, thank you for all the help. I really appreciate it.

Posted on March 03, 2018 at 12:19

I can't quite remember how we came to the decision but on my project I ended up just tying the boot pin low. I don't think the inbuilt bootloader was any use because we were downloading application firmware over Ethernet.