Vous êtes sur la page 1sur 8

Chapitre II

Architecture des microcontrôleurs


STM32F407

1
I. Micro-processeur Cortex-M
I.1. Architecture
Mémoire
adresses Flash
Données

: :
0x300C 5
0x3008 2
0x3000 : D-bus
: Retrouver ou
: : Cortex-M
: S-bus Périphériques
: processor core
: Envoyer des
: E0835001 Données
0x2008 I-bus
E5923000
0x2004 E5901000
0x2000 :
:
Instructions

2
Pré-exécution du programme Exécution du programme
I. Micro-processeur Cortex-M
I.2. Intégration dans un microcontrôleur STM32F407

ROM

3
I. Micro-processeur Cortex-M
I.2. Intégration dans un microcontrôleur STM32F407

AHB bus Matrix

4
II. Le microcontrôleur STM32F407

package

Die : puce

Bond wire

Pins
II. Le microcontrôleur
STM32F407
Périphériques accessibles via les
bus AHB et APB.
Horloge

• AHB (Advanced High


performance Bus) GPIO L
• APB (Advanced Peripheral Bus)

Utilisés dans tout système basé


sur microprocesseur ARM TIMER

TIMER

DAC
ADC
6
III. Interface entre μP et périphérique
Périphérique I-bus

Registre
Cortex-M paramétrage
processor
Registre

mécanisme
Core
donnée
AHB/APB
Registre
synchronisation

Registre pour
autres fcts

• Le μP configure les registres du périphérique suivant le besoin (I/O, données, clock


frequency, …).
• Chaque registre possède une adresse mémoire appelé adresse offset
• Adresse registre = adresse de base + adresse offset 7
IV. Plage mémoire
Plage d’adresses Interfaces Périphériques BUS
(memory map)
0xA000 0000 - 0xA000 0FFF Autres périphériques AHB3
0x5000 0000 - 0X5006 0BFF Autres périphériques AHB2
La mémoire programme, la 0x4002 3C00 - 0x4002 4000
Autres périphériques
mémoire donnée, les
registres des périphériques 0x4002 3800 - 0x4002 3BFF RCC AHB1
tous sont organisées dans un 0x4002 3000 - 0x4002 33FF Autre périphérique
même espace d’adressage. 0x4002 0000 - 0x4002 23FF Tous les GPIO’s
0x4001 4000 - 0x4001 4BFF TIM9, 10 et 11

0x4001 2C00 - 0x4001 3FFF Autres périphériques


APB2
Adresse de base: ADC1, 2 et 3
0x4001 2000 - 0x4001 23FF
Utilisée dans la programmation USART 1 et 6
0x4001 1000 - 0x4001 17FF
du périphérique.
0x4001 0000 - 0x4001 07FF TIM1 et 8
0x4000 7400 - 0x4000 77FF DAC
• L’adresse offset d’un registre
est ajouté à l’adresse de base. 0x4000 2800 - 0x4000 73FF USART, SPI, I2C , CAN,
RTC et autres APB1
• μP utilise l’adresse de base + 0x4000 1800 - 0x4000 23FF TIM12, 13 et 14
offset pour accéder au registre 0x4000 0000 - 0x4000 17FF TIM2 jusqu’à 7
d’un périphérique 0x2000 0000 - 0x3FFF FFFF SRAM AHB2,
8
0x0000 0000 - 0x1FFF FFFF Mémoire Flash D, I

Vous aimerez peut-être aussi