Summary+STM32F4+-+English
Summary+STM32F4+-+English
Revision 1
Summary STM32F4
Prepared by: Flávio Cavalieri
Summary
Document History .................................................................................................................. 3
Trainer .................................................................................................................................... 3
Training hours........................................................................................................................ 3
Goals....................................................................................................................................... 3
Index ....................................................................................................................................... 4
Methodology .......................................................................................................................... 8
Document History
Rev. Date Comments Rev. by
1 05.04.22 Initial document FGC
Trainer
Name Company Email
Flávio Cavalieri Eletrocursos [email protected]
Training hours
Video Lessons
16 h
Goals
1. Explore the features of the STM32F407 microcontrollers by knowing its electrical characteristics, its
main registers and applications;
2. Explore many resources of the STM32CubeIDE as well as software libraries, HAL API, and a bunch of
middlewares to accelarate the development task;
3. Provide practical skills for diagnosing common programming failures through the use of
STM32CubeIDE embeeded debugger tools, or even by monitoring and terminal tools as
STM32CubeMonitor;
4. Develop applications integrating microcontroller peripherals such as ADC, USART, USB, TIM, RTC,
SPI, GPIO, IWDG, etc. With those peripherals and their software resources, develop solutions for
Graphic Display and Touch controller, uSD Cards, Ethernet interface and much more.
Index
INITIAL CONSIDERATIONS
MCU CONCEPTS
GPIO CMSIS
Explore CMSIS concepts and implement a solution interfacing GPIO and TIM
Video lesson 3 peripherals using microcontroller registers.
GPIO HAL
Video lesson 4
Explore HAL and LL reference document. Create na application mixing a delay
solution implemented with register direct manipulation and a GPIO solution using HAL
API functions instead.
EXTI HAL
Understand External Interrupt main features and it’s concept. Implement a EXTI
solution and use IDE embeeded debugging features in order to solve common
software issues. Install STM32CubeMonitor tool and set it for working as a debugger
Video lesson 5 auxiliary graphical tool.
PWM
IC
TIM
IWDG
ADC Basis
Understand STM32 main ADC characteristics and create a polling application in order
to test the peripheral. Explore and observe results using a graphical monitoring
Video lesson interface with STM32CubeMonitor.
10
Complementary material: (st.com)
• RM0090 STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm®-based 32-bit MCUs
• UM1725 Description of STM32F4 HAL and low-layer drivers
• AN3116 STM32™’s ADC modes and their applications
ADC DMA
Understand STM32 main DMA controller concepts. Use this peripheral to transfer ADC
input data directly to RAM memory.
Video lesson Complementary material: (st.com)
11
• RM0090 STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm®-based 32-bit MCUs
• UM1725 Description of STM32F4 HAL and low-layer drivers
• AN3116 STM32™’s ADC modes and their applications
• AN4031 Using the STM32F2, STM32F4 and STM32F7 Series DMA
controller
RTC
USART Basis
USART Advanced
Apply advanced technics using serial port idle interrupt and DMA to create a variable
lenght serial port reception with low MCU processing resources.
Video lesson
14 Complementary material: (st.com)
• RM0090 STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm®-based 32-bit MCUs
• UM1725 Description of STM32F4 HAL and low-layer drivers
• AN4031 Using the STM32F2, STM32F4 and STM32F7 Series DMA
controller
USB HID
Understant the USB device library concepts. Implement a USB HID application and
test it with a demonstrator executable file from ST.
Video lesson Complementary material: (st.com)
15 • RM0090 STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm®-based 32-bit MCUs
• UM1725 Description of STM32F4 HAL and low-layer drivers
• UM1734 STM32Cube™ USB device library
• UM0551 USB HID demonstrator
• USB HID Demonstrator V1.0.2
EEPROM Emulation
FATFS uSD
Develop a FAT file system application using FatFs Middleware. Use SDIO as hardware
peripheral connection to uSD card. Perform step by step debugging in order to execute
Video lesson open, read, write and close instructions.
17
Complementary material: (st.com)
• RM0090 STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm®-based 32-bit MCUs
• UM1725 Description of STM32F4 HAL and low-layer drivers
• UM1721 Developing applications on STM32Cube™ with FatFs
LWIP
Video lesson
18 With a LAN8720 ETH board and using the LwIP Middleware and the TCP/IP stack
demonstration project from ST, develop a interesting TCP server project. Use Hercules
3.2.8 as TCP terminal tool.
ETH IAP
Follow STM32F4 firmware examples to implement IAP over the ethernet. Use
TFTPD64 tool and Hercules 3.2.8 to load MCU program throught TFTP protocol.
Video lesson
19 Complementary material: (st.com)
• RM0090 STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm®-based 32-bit MCUs
• UM1725 Description of STM32F4 HAL and low-layer drivers
• AN3968 Implementing IAP over the Ethernet on the
STM32F407/STM32F417
LCD + Touch
(ILI9341 + XPT2046)
With a touch display based on ILI9341 and XPT2046 controllers, develop a HMI
application using TouchGFX Middleware and graphical tool.
Video lesson Complementary material:
20 • RM0090 STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm®-based 32-bit MCUs
• UM1725 Description of STM32F4 HAL and low-layer drivers
• TouchGFX Documentation
• Library Files
• ILI9341 Datasheet
• XPT2046 Datasheet
Methodology
• STM32F407 Development board + aditional peripheral boards and display
• Video lessons, handouts, softwares and manuals;
Necessary resources
• Microcomputer with at least two free USB ports, software and drivers installed: