KEMBAR78
Stm32 Intro | PDF | Digital Electronics | Office Equipment
0% found this document useful (0 votes)
9 views29 pages

Stm32 Intro

The document provides an overview of microcontrollers, specifically focusing on the STM32 family from STMicroelectronics, which utilizes ARM Cortex-M cores. It details the different types of STM32 development boards, including Nucleo, Discovery, and Evaluation boards, highlighting their features and applications. Additionally, it covers the architecture, programming flow, and hardware abstraction layer associated with STM32 microcontrollers.

Uploaded by

Veerasai Kolli
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views29 pages

Stm32 Intro

The document provides an overview of microcontrollers, specifically focusing on the STM32 family from STMicroelectronics, which utilizes ARM Cortex-M cores. It details the different types of STM32 development boards, including Nucleo, Discovery, and Evaluation boards, highlighting their features and applications. Additionally, it covers the architecture, programming flow, and hardware abstraction layer associated with STM32 microcontrollers.

Uploaded by

Veerasai Kolli
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Microcontroller

Introduction
First things first

What is Microcontroller ?

What is Arm ?

What is STM32 ?
Processor vs
Controller(Cortex-M
vs STM32)
• Arm is the leading technology provider of
processor IP, offering the widest range of
processors to address the performance,
power, and cost requirements of every
device.
• STM32 is a family of 32-bit microcontroller
integrated circuits by STMicroelectronics.
• The STM32 is a family of microcontroller ICs based on
various 32-bit RISC ARM Cortex - M
cores. STMicroelectronics licenses the ARM Processor
IP from ARM Holdings.
• The ARM core designs have numerous configurable
options, and ST chooses the individual configuration to
use for each design. ST attaches its own peripherals to
the core before converting the design into a silicon die.
• The STM32 chips are grouped into related series that
are based around the same 32-bit ARM processor core:
Cortex-M0, Cortex-M0+, Cortex-M3, Cortex-M4,
Cortex-M7, Cortex-M33.
Different families of
STM32 Cortex - M
Types of STM32 Development
Boards
Discovery Boards

Nucleo Boards

Evaluation Boards
Nucleo Boards
• The STM32 Nucleo board series are based on ARM
Cortex-M 32-bit RISC cores optimised for high
performance and energy efficiency.
• STM32 Nucleo boards can easily be extended with a
large number of specialized application hardware
add-ons like Arduino Uno Rev3 and ST morpho
connectors on Nucleo-144 and Nucleo-64 and Arduino
Nano connectors on Nucleo-32.
• On-board ST-LINK debugger/programmer and it also
provides Virtual COM port.
• Ex : STM32F411RE,STM32L152RE etc
Discovery Boards

• STM32 discovery kits provide affordable


and complete solutions to evaluate the
application-specific features of STM32
MCUs and MPUs.
• Most discovery boards have additional
peripherals like displays, external
memory, sensors etc. The STM32
discovery board is rich in features
compared to the Nucleo board.

• Ex : STM32F407VGT6, STM32F051R8T6
etc
Evaluation
Boards
• The STM32 eval boards have been designed as a complete
demonstration and development platform for the STM32 MCUs
and MPUs.
• They carry external circuitry, such as transceivers, sensors,
memory interfaces, displays and many more. The evaluation
boards can be considered as a reference design for application
development.
• Ex : STM32G0C1VE , STM32H753XI etc
Nucleo Hardware
Block diagram
Embedded ST-LINK/V2-1

• The ST-LINK/V2-1 programming and debugging tool is integrated into the


STM32 Nucleo board.
• Virtual COM port interface on USB

Jumper States
Connecting the
STM32 Nucleo
board to
program the on-
board STM32
Using ST-LINK/V2-
1 to program the
STM32 on an
external
application
CN4 Pinout :

Pin CN4 Designation


1 VDD_TARGET VDD from application
2 SWCLK SWD clock
3 GND ground
4 SWDIO SWD data input/output
5 NRST RESET of target STM32
6 SWO Reserved
• The tricolor LED (green, orange, red) LD1 (COM) provides
information about ST-LINK communication status. LD1 default
color is red. LD1 turns to green to indicate that
communication is in progress between the PC and the ST-
LINK/V2-1, with the following setup:

• Slow blinking Red/OFF: at power-on before USB


initialization

LEDs •


Fast blinking Red/OFF: after the first correct
communication between the PC and ST-LINK/V2-1
Red LED ON: when the initialization between the PC and
ST-LINK/V2-1 is complete
• Green LED ON: after a successful target communication
initialization
• Blinking Red/Green: during communication with the
User LD2: The green LED is a user LED target
• Green ON: communication finished and successful
• Orange ON: Communication failure

LD3 PWR: The red LED indicates that the STM32 part is powered and +5V power is available.
Nomenclature

Type
Core

No Of Pins
Flash Size

Package
 P  TSSOP(Thin Shrink Small Outline Package)
 H  BGA(Ball Grid Array)
 U  UFQFPN(7mm X 7mm)
 T  LQFP(Low-profile Quad Flat Package)
 Y  WLCSP(Wafer Level Chip Scale Package)
Temperature Range
STM32F411RET6
STM32411RE
Block Diagram
(Refer data sheet Pg No 15)
• In STM32F411xC/E, the main system consists of 32-bit
multilayer AHB bus matrix that interconnects:
 Six masters:
• Cortex®-M4 with FPU core I-bus, D-bus and S-bus
• DMA1 memory bus
• DMA2 memory bus
System • DMA2 peripheral bus
Architecture  Five slaves:
• Internal Flash memory ICode bus
• Internal Flash memory DCode bus
• Main internal SRAM
• AHB1 peripherals including AHB to APB bridges and APB
peripherals
• AHB2 peripherals
Multi-AHB
Bus Matrix
Documentation(Might vary for other boards)

Board MCU CPU


level level level
Reset sequence of Processor

• After reset, PC is loaded with the address 0x00000000.


• Processor read the value from 0x00000000 location in to MSP.
• Then processor reads the address of the reset handler from the location 0x00000004
• Then it jumps to reset handler and start executing the instructions
• Then you can call your main() function from reset handler.
• Reset handler is a C or assembly function written by programmer to carry out required
initializations.
Reset Sequence flow
Main()
RESET
First Next
0x20004000 0x20002000
Instruction Instruction
0x00000000 0x00000004 0x20002000

MSP = 0x20004000 PC = 0x20002000 Reset handler Memory Address


Programming flow

Cube MX

HAL

Register Programming
Hardware Abstraction Layer(HAL)

The hardware abstraction layer reside below the It bridges the gap between hardware and
application programming interface (API) in a software and makes developer work easy.
software stack.
STM32Cube IDE

You might also like