SoC
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
  • Arm Cortex M3
  • Contact
Reading: What is the specification of STM32F407G?
SUBSCRIBE
SoCSoC
Font ResizerAa
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Search
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Have an existing account? Sign In
Follow US
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
© S-O-C.ORG, All Rights Reserved.
Arm

What is the specification of STM32F407G?

Elijah Erickson
Last updated: October 5, 2023 9:55 am
Elijah Erickson 7 Min Read
Share
SHARE

The STM32F407G is a high-performance microcontroller from STMicroelectronics based on the ARM Cortex-M4 core. It offers a balance of processing power, peripheral set, speed, and power consumption making it suitable for a wide range of embedded applications.

Contents
OverviewProcessor CoreMemoryClock SystemPeripheralsDigital PeripheralsAnalog PeripheralsTimers and PWMsOther PeripheralsInput/Output PinsDevelopment Tools and SupportUse CasesConclusion

Overview

The STM32F407G has the following key features:

  • ARM Cortex-M4 core running at up to 168 MHz
  • 1 MB flash memory
  • 192 KB SRAM
  • Extensive peripheral set including USB, CAN, Ethernet, LCD interface, timers, ADCs, DACs, and more
  • Operating voltage range of 1.7V to 3.6V
  • Temperature range of -40°C to 105°C
  • 100-pin LQFP package
  • Industrial temperature range

With its Cortex-M4 core, the STM32F407G offers digital signal processing (DSP) capabilities, floating point unit (FPU), and memory protection unit (MPU) not found on the Cortex-M3. This combination of features makes the STM32F407G suitable for more computationally intensive tasks compared to lower-end STM32 parts.

Processor Core

As mentioned, the STM32F407G utilizes an ARM Cortex-M4 core running at up to 168 MHz. The M4 architecture includes a 3-stage pipeline, allowing for greater throughput and efficiency. The core also includes a single-precision FPU, allowing faster floating point calculations in software. Some key attributes of the Cortex-M4 are:

  • 32-bit RISC architecture
  • 168 MHz max clock speed
  • 3-stage pipeline
  • Single-cycle multiply
  • Hardware divide
  • Memory Protection Unit (MPU)
  • Embedded Trace Macrocell (ETM)
  • Thumb-2 instruction set
  • Single precision FPU (up to 60 MFLOPS)
  • DSP instructions

The MPU allows configuring restricted memory regions for safety critical applications. The ETM provides instruction trace capabilities for debugging and profiling. And the DSP extensions speed up digital signal processing algorithms.

Memory

The STM32F407G contains 1 MB of flash memory for storing code and data. For RAM, it has 192 KB of SRAM. The flexible memory architecture allows allocating RAM usage between code and data as needed by the application.

The flash memory supports read-while-write capabilities. This allows executing code from one part of flash while simultaneously updating another part of flash. The RAM includes 64 KB of Core Coupled Memory (CCM) which runs at the same frequency as the core for faster access.

Clock System

The clocking system on the STM32F407G provides flexibility in configuring the microcontroller for different power and performance points. It contains multiple clock sources:

  • High speed external oscillator (4-26 MHz)
  • Low speed external oscillator (32 kHz)
  • Internal 16 MHz oscillator
  • Internal low power RC oscillators (40 kHz, 8 MHz)

These clock sources can be combined using PLLs to derive the system clock which drives the core, peripherals, and bus interfaces. There are 3 PLLs allowing for plenty of configuration options. The maximum system clock speed is 168 MHz.

Peripherals

The STM32F407G contains an extensive set of peripherals giving the microcontroller connectivity, interfacing, timing, data conversion, and control capabilities.

Digital Peripherals

  • 3x USARTs, 3x SPIs, 2x I2Ss
  • 3x I2Cs
  • 2x CANs
  • USB 2.0 OTG
  • 10/100 Ethernet MAC
  • SD/SDDIO/MMC interface

Analog Peripherals

  • 3x 12-bit ADCs with 24 channels total
  • 2x 12-bit DACs
  • 2x operational amplifiers
  • Temperature sensor

Timers and PWMs

  • 12x 16-bit timers, 2x 32-bit timers
  • 2x watchdog timers
  • 13x capture/compare channels
  • 12x PWM outputs

Other Peripherals

  • True random number generator (TRNG)
  • CRC calculation unit
  • 96-bit unique ID

This collection covers pretty much any connectivity, interfacing, timing, processing, control, and data conversion need. The availability of multiple instances of peripherals like USART, SPI, I2C, and timers provides a lot of flexibility to developers.

Input/Output Pins

There are up to 114 GPIO pins on the LQFP100 package of the STM32F407G. Most peripherals are mapped to one or more GPIO allowing flexibility in assigning function to specific pins. Key highlights:

  • Up to 114 pins on LQFP100 package
  • 6x SPIs, 3x I2Cs, 8x USARTs, 2x CANs, 1x SD card, and 1x Ethernet mapped to GPIO
  • Up to 16 external interrupt lines
  • Up to 16 ADC channels

The pins support various features including multiplex with peripherals, external interrupt, analog input, and more.

Development Tools and Support

There are many options for development tools that support the STM32F407G and allow unlocking its capabilities:

  • STM32CubeIDE integrated development environment (IDE)
  • STM32CubeMX pin, peripheral, and middleware configuration tool
  • ARM Keil MDK toolkit featuring μVision IDE and debugger
  • IAR Embedded Workbench IDE and debugger
  • GCC-based IDEs such as System Workbench for STM32
  • STMCWB online compiler tool

The STM32Cube tools from STMicro provide a huge amount of software infrastructure including drivers, middleware stacks, code examples, and more. There are also many 3rd party libraries and RTOS platforms that can accelerate development with the STM32F407G.

Use Cases

With its high performance, extensive peripheral set, and software support, the STM32F407G is an excellent choice for many embedded systems including:

  • Industrial equipment
  • Programmable logic controllers (PLCs)
  • Human machine interfaces (HMIs)
  • Robotics
  • Motor control
  • Power conversion
  • Fire and security systems
  • Automotive body applications
  • Networking equipment
  • Digital camera/camcorders
  • Battery powered devices

Basically any application that needs a mix of processing power, connectivity, and advanced peripherals can benefit from using the STM32F407G microcontroller.

Conclusion

The STM32F407G microcontroller offers an outstanding combination of performance, features, and flexibility. The Cortex-M4 core with FPU provides computational power while maintaining power efficiency. The extensive peripheral set enables interfacing with all types of external systems from CAN to USB. And there are tons of development tools and software available to tap into the capabilities of the STM32F407G. Whether you need a core controller for your product or just need a high-performance general purpose MCU, the STM32F407G is an excellent choice.

Newsletter Form (#3)

More ARM insights right in your inbox

 


Share This Article
Facebook Twitter Email Copy Link Print
Previous Article How much RAM does STM32F407 have?
Next Article What are the key characteristics of ARM Cortex M0?
Leave a comment Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

2k Followers Like
3k Followers Follow
10.1k Followers Pin
- Sponsored-
Ad image

You Might Also Like

Workarounds for Inefficient Code Generated by GNU-ARM for ARMv6-M CPUs

The ARM Cortex-M0 and Cortex-M0+ processors based on the ARMv6-M…

4 Min Read

Common Causes of Hard Faults on Cortex-M0/M0+ MCUs

Hard faults on Cortex-M0/M0+ microcontrollers are often caused by software…

5 Min Read
Arm

Cortex-M4 vs Cortex-M7: How Do ARM’s Mid-Range and High-End Cores Compare?

The Cortex-M4 and Cortex-M7 are both widely used 32-bit ARM…

6 Min Read

Arm WFF Instruction

The ARM WFF instruction stands for Wireless Fast Forwarding instruction.…

6 Min Read
SoCSoC
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
Welcome Back!

Sign in to your account