0% ont trouvé ce document utile (0 vote)
35 vues20 pages

Sys Emb 5

Systèmes embarqués

Transféré par

Ababacar Sadikh Faye
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
35 vues20 pages

Sys Emb 5

Systèmes embarqués

Transféré par

Ababacar Sadikh Faye
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 20

2018-09-24

MSP430

EMB7000, Ch. 2

Les microcontrôleurs MSP430


de Texas Instrument

Copyright 2009 Texas Instruments


All Rights Reserved
Traduit et adapté de l’anglais

Objectifs d’apprentissage

• Survol d’une famille de microcontrôleurs


typique
– Famille MSP430 de Texas Instrument
• Outils de développement logiciel

Traduit et adapté de l’anglais

1
2018-09-24

Processeurs de TI pour systèmes embarqués


TI Embedded Processors
Microcontrollers (MCUs) ARM®-Based Processors Digital Signal Processors (DSPs)

16-bit ultra- 32-bit 32-bit ARM ARM Ultra


DSP Multi-core
low power real-time Cortex™-M3 Cortex-A8 Low power
MCUs DSP+ARM DSP
MCUs MCUs MPUs DSP

C2000™ Sitara™ C6000™


Delfino™ Stellaris® DaVinci™ C6000™ C5000™
MSP430™ ARM® Cortex™-M3
ARM® Cortex™-A8
& ARM9
Piccolo™ video processors
OMAP™ 24.000
Up to 40MHz to Up to 300MHz to 300MHz to >1Ghz MMACS Up to 300 MHz
25 MHz 300 MHz 100 MHz >1GHz +Accelerator +Accelerator
Flash Flash, RAM Flash Cache, Cache Cache Up to 320KB RAM
1 KB to 256 KB 16 KB to 512 KB 8 KB to 256 KB RAM, ROM RAM, ROM RAM, ROM Up to 128KB ROM
Analog I/O, ADC PWM, ADC, USB, ENET USB, CAN, USB, ENET, SRIO, EMAC USB, ADC
LCD, USB, RF CAN, SPI, I2C MAC+PHY CAN, PCIe, EMAC PCIe, SATA, SPI DMA, PCIe McBSP, SPI, I2C
ADC, PWM, SPI
Measurement, Motor Control, Connectivity, Security, Industrial computing, Floating/Fixed Point Telecom test & meas, Audio, Voice
Sensing, General Digital Power, Motion Control, HMI, POS & portable Video, Audio, Voice, media gateways,
Purpose Lighting, Ren. Enrgy Industrial Automation data terminals base stations Medical, Biometrics
Security, Conferencing
$0.25 to $9.00 $1.50 to $20.00 $1.00 to $8.00 $5.00 to $20.00 $5.00 to $200.00 $40 to $200.00 $3.00 to $10.00

Software & Dev. Tools

La famille TMS430
• Architecture RISC de 16 bits
• Consommation de courant compatible avec
l’alimentation par batterie ; aussi peu que :
– 100 nA‐ en mode de sommeil profond
– 0.7‐2.5 uA‐ en mode sommeil avec réveil par horloge
– 100 uA/MHz en mode actif
– Réveil en moins de 1‐5 us
– Courant de fuite des lignes d’e/s < 50 nA

• Plus de 400 membres!

Traduit et adapté de l’anglais

2
2018-09-24

Plusieurs modes d’opération pour la


conservation d’énergie
Mode CPU et horloges
Active CPU active. All enabled clocks
active
LPM0 CPU, MCLK disabled. SMCLK,
ACLK active
LPM1 CPU, MCLK disabled. DCO
disabled if not used for SMCLK.
ACLK active
LPM2 CPU, MCLK, SMCLK, DCO
disabled. ACLK active
LPM3 CPU, MCLK, SMCLK, DCO
disabled. ACLK active
LPM4 CPU and all clocks disabled

• La consommation en courant dépend essentiellement du


nombre d’horloges actives et de leurs fréquences
– Utilisation de modes de dormance pour l’optimisation
Traduit et adapté de l’anglais

Horloges
• Au moins 4 sources avec diviseurs
de fréquence
 Cristal : basse (32KHz) et
haute fréquence (ex. 4 MHz)
 DCOCLK (Digitally‐Controlled Oscillator clk) :
Interne calibrée à haute fréquence
 VLOCLK (Very Low‐power clk) :
Interne de ~12kHz
• Trois signaux utilisables
 MCLK (Main clk) et SMCLK (Sub‐main clk)
toutes sources possibles; horloges du CPU et
des périphérique quand le CPU est dormant
 ACLK : Auxiliary clock (conserve l’énergie)
Traduit et adapté de l’anglais

3
2018-09-24

Horloges actives et modes d’opération


Mode CPU et horloges
Active CPU active. All enabled clocks
active
LPM0 CPU, MCLK disabled. SMCLK,
ACLK active
LPM1 CPU, MCLK disabled. DCO
disabled if not used for SMCLK.
BOR ACLK active
LPM2 CPU, MCLK, SMCLK, DCO
POR disabled. ACLK active
PUC LPM3 CPU, MCLK, SMCLK, DCO
disabled. ACLK active
Active Mode LPM4 CPU and all clocks disabled

LPM4.5
LPM0 LPM4

LPM1 LPM3
LPM3.5
LPM2

Traduit et adapté de l’anglais


43

Usage des modes d’opération


Mode d’opération Impact Courant typique Usage typique

Dépend de l’horloge
Normal (« Active ») Opération normale
~2‐3 mA typique
Applications utilisant les
Somnolant CPU : ralenti , 35‐75% du courant
périphériques avec peu
(« Doze ») Périphériques : normal en mode normal
de traitement

Repos (« idle ») – CPU : arrêt 10‐25% du courant Attente d’un évènement


LPM0‐LPM3 Périphériques : variable en mode normal sur un périphérique

Dormant (« sleep ») CPU : arrêt Attente d’un évènement


~100 nA
–LPM4 Périphériques : arrêt externe peu fréquent

Applications avec faible


Sommeil profond
LPM4 avec RAM non ratio normal/dormant
(« Deep Sleep ») – ~ <100 nA
conservée ou longues périodes de
LPM4.5 ‐5
dormance
Source : www.ecnmag.com/article-Utilizing-Microcontrollers-Low-Power-Modes-and-Peripherals-060109.aspx

Traduit et adapté de l’anglais

4
2018-09-24

La source affecte la consommation


d’énergie
Clock Frequency Precision Current Draw Crystal
Required

High-Frequency
DCO 100kHz – 60MHz Low 60uA

HFXT1/ 4 - 32MHz High 260uA/12MHz X


XT2
MODOSC 5MHz n/a n/a
Low-Frequency
RTC
LFXT1 32kHz High 300nA X
VLO ~10kHz Low 60nA
REFO 32kHz Medium/High 3uA

Traduit et adapté de l’anglais


41

MSP430 Generations
Category 2xx 4xx 5xx
CPU Clock (max) 16MHz 8MHz 25MHz
Active Current 515uA @ 1MHz 600uA @ 1MHz 290uA @ 1MHz
(@ 3.0V, typical) 4.2mA @ 8MHz 4.8mA @ 8MHz 1.84mA @ 8MHz  230 uA/MHz
9.1mA @ 16MHz N/A 8.90mA @ 25MHz
120KB / 8KB (Flash / RAM) 120KB / 8KB (Flash / RAM) 256KB / 16KB (Flash / RAM)
Wake-up Time From LPM3 1us 6us 5us
Standby LPM3 Current 0.9 – 1.1uA 1.1 – 2.5uA 1.9uA (RTC, WDT, SVS enabled)
LPM4 Current 0.1uA 0.1uA 1.2uA (LPM4) / 0.1uA (LPM4.5)
Flash ISP Minimum DVCC 2.2V 2.7V 1.8V
Port I/O Interrupt Capability P1/P2 P1/P2 P1/P2
Some devices also P3/P4
Prog. Port Pin Drive Strength N/A N/A All port pins
Prog. Pull-ups / Pull-downs All port pins N/A All port pins
12-bit A/D Internal Reference 500 uA 500 uA 100 uA*
Current
12-bit A/D Active Conversion 800 uA 800 uA 150 uA*
Current
Available MCLK Sources DCO FLL FLL
LFXT1 LFXT1 LFXT1 / XT1
XT2 (if available) XT2 (if available) UCS XT2 (if available)
VLO VLO
REFO
Available FLL Reference N/A LFXT1 LFXT1, REFO,
Clocks & XT2 (if present)

* 2xx, 4xx – ADC12; 5xx - REF & ADC12_A


6

5
2018-09-24

MSP430 Roadmap
FR57xx
FRAM
Device F6/563x
Production BGM, Catalog
F53xx
Development Gen Purpose
F550x
USB
F51x2 L092
100+ devices Lighting 0.9V Native
2xx-Catalog F261x
• 16 MIPS
• 120 kB Flash
F241x CC430
• 8 kB RAM F23x-F24x F552x RF The New Generation
• 500 nA Standby USB 5xx-6xx
• 1.8 – 3.6V • 25MIPS
F23x0F23x0
F541x F543xA •

256 kB Flash
16 kB RAM
G = Value Line F22xx • 1.8 – 3.6V
F = Flash • FRAM, USB, RF

FR = FRAM F21x2 • 6xx: LCD Controller


• 160 uA/MIPS
F21x1
F20xx F15x-F16x FG461x
F471xx
F13x-F14x
G2xx5 Fx43x
G2xx2 F43x
G2xx1 F12xx F44x 100+ devices
Fx47x 4xx: LCD
75+ devices F11xx Fx42x
1xx-Catalog F47x4 •

16 MIPS
120 kB Flash
• 8MIPS
Fx42x0 • 8 kB RAM
• 60 kB Flash
F41x2 • LCD Controller, 160
• 10 kB RAM F41x FE42x2 segments
• 1.8 – 3.6 V • 1.8 – 3.6V

La famille MSP430 : Architecture générale

• Bus de données interne de 16 bits et externe de 8 bits


• Jusqu’à 20 bits d’espace d’adressage
• Interface JTAG (Joint Test Action Group) pour la programmation/débogage (Spy‐by‐wire)
• Site web de TI

Traduit et adapté de l’anglais

6
2018-09-24

La famille TMS430 : Le CPU


• Architecture RISC à architecture de Von
Neumann (mémoire commune pour les
instructions et les données)
• Seize registres de 16‐20‐bits
– 4 registres sont à fonctions dédiées
(PC, SP, SR, et générateur de constantes)
– 12 sont à usage général (R4 ‐R15)
• Unité arithmétique et logique (ALU):
– Addition, soustraction, comparaison et
opérations logiques (AND, OR, XOR) ;
– Sémaphores pour débordement, zéro,
négatif et bit de retenue
• Architecture optimisée pour les
compilateurs du langage c

Traduit et adapté de l’anglais

La famille TMS430 : 27 Instructions de base

• Moins d’instructions => décodeur d’instructions simplifié => consommation


d’énergie plus faible

Traduit et adapté de l’anglais

7
2018-09-24

La famille TMS430 : 24 instructions émulées

• Remplacées par des instructions de base dans le programme


d’assemblage du code

15
Traduit et adapté de l’anglais

La famille TMS430 : 51 instructions au total

Traduit et adapté de l’anglais

8
2018-09-24

La famille TMS430 : Mode d’adressage


• 7 modes pour la source :

• 4 modes pour la destination :


– Register mode; Indexed mode; Symbolic mode; Absolute mode.
Traduit et adapté de l’anglais

5xx + RF faible puissance = SoC


CC430
CI Radio
MSP430 Low‐power
MCU RF SoC
Processeur pour
RF application et
protocole RF

Transmetteur RF MSP430
faible puissance 5xx MCU

• High sensitivity • Ultra‐low power


• Low current consumption • High analog performance
• Excellent blocking performance • High level of integration
• Flexible data rate & modulation format • Ease of development
• Backwards compatible • Sensor interface

• TI offre aussi un portfolio basé sur le uC 8051 d’Intel ou un ARM,


offrant des solutions qui couvrent les protocoles VelociTI (propriétaire),
Zigbee, Bluetooth et Wi‐Fi à 2.4 MHz (CC2xxx et CC3xxx)

9
2018-09-24

Portfolio partiel de produits LPRF


Sub 1 GHz 2.4 GHz
Narrowband Proprietary ZigBee / IEEE802.15.4 Proprietary

Z-Stack
Software SimpliciTI TIMAC SimpliciTI
SimpliciTI

Protocol CC2480
Processor

CC2530
CC430
System CC2431 CC251x
on Chip CC111x
CC2430

CC1101
Transceiver CC1020 CC2520 CC2500
CC1100E

Transmitter CC1070 CC1150 CC2550

RF CC2591
Front End CC2590

Design
Diagramme d’un exemple d’application LPRF

Antenna
LPRF System on Chip
CC111x / CC251x / CC243x / CC253x / CC430

RF
MCU SPI
Transceiver PA \ LNA
CC1101, C1020, CC2590
MSP430 CC2500, CC2591
CC2480*, CC2520

Minimum BOM:
Composants additionnels :
• LPRF Système sur Puce or
Power • CC259x extendeur de portée
MSP430 MCU + transmetteur RF
Supply • Antenne externe (flexible (whip)
• Antenne (PCB) & Composants TPS76933 ou monopuce (chip)) pour une
d’adaptation RF meilleure performance RF
• Alimentation à batterie ou autre
*ZigBee network processor

10
2018-09-24

La famille TMS430 : Périphériques intégrés


• Choix varié
 CAN 10/12 bits SAR, 16 bits Sigma  Chien de garde
Delta  UART/LIN
 CNA 12 bits  I2C
 Comparateur analogique  SPI
 Contrôleur LCD  IrDA
 Moniteur d’alimentation  USB
 Amplificateurs opérationnels  Multiplieur en matériel
 Temporisateurs à 16 et 8 bits  Contrôleur DMA
 LDO/PMM  Capteur de température
 RF  Horloge temps‐réel

Traduit et adapté de l’anglais

MSP430F5438A Block Diagram

Traduit et adapté de l’anglais


22

11
2018-09-24

La famille TMS430 : L’espace d’adressage

• Distribution uniforme:
– Couvre la mémoire (RAM et Flash/ROM), les registres spécialisés (SFRs), les
registres dédiés aux périphériques et les vecteurs d’interruption.

Memory Address Description Access

– Carte : End:
Start:
0FFFFh
0FFE0h
Interrupt Vector Table
Word/Byte

End: 0FFDFh
Flash/ROM
Word/Byte
0F800h
Start *:
01100h

010FFh
End *:
0107Fh Information Memory Word/Byte
Start: 01000h (Flash devices only)
End: 0FFFh Boot Memory
Word/Byte
Start: 0C00h (Flash devices only)

09FFh
End *:
027Fh RAM Word/Byte
Start: 0200h
End: 01FFh
16-bit Peripheral modules Word
Start: 0100h
End: 00FFh
8-bit Peripheral modules Byte
Start: 0010h
End: 000Fh
Special Function Registers Byte
Start: 0000h

Traduit et adapté de l’anglais 23

La famille TMS430 : sources d’interruption


• Vecteurs situés en haut de l’espace mémoire (16 deniers mots de la mémoire
Flash/ROM): 0FFE0h ‐ 0FFFEh ;
• La priorité de service est implicite en partant de la plus haute adresse

Reset

Traduit et adapté de l’anglais 24

12
2018-09-24

Kits de démarrage (Launchpad)


USB Emulator
Connection
Famille G2x
Embedded
Emulation
6-pin eZ430
•16kB Flash Connector
• 512B RAM
• 2 Timer_A3’s Crystal Pads
• 8 Ch. Comp_A+ Chip
• 8 Ch. ADC10 Pinouts Part and Socket
• USCI

P1.3 Button Power Connector


LEDs and Jumpers
Reset Button
P1.0 & P1.6

• <10 $, livraison incluse (4.30$ à l’origine!)


• Design largement inspiré de l’Arduino
Traduit et adapté de l’anglais

Kits de démarrage plus avancés

MSP430F5529 (~13$) MSP430FR6989 (~22$)

• Plus de muscle, de mémoire et de périphériques


Traduit et adapté de l’anglais

13
2018-09-24

Traduit et adapté de l’anglais

Booster packs
• Modules qui s’enfichent sur le Launchpad et
permettent d’augmenter sa fonctionnalité
– Permettent le prototypage et la validation rapides
– Inspirés des shields de l’Arduino

Traduit et adapté de l’anglais

14
2018-09-24

Kits de démarrage eZ430‐F2xx 1/2


• Le MSP430 USB stick peut servir à concevoir des projets à
base de microcontrôleurs F2012 et F2013
• Un projet peut être développé comme système autonome
ou comme partie d’un système plus grand en y intégrant le
circuit imprimé détachable contenant le microcontrôleur
• Le port USB fournit suffisamment d’énergie pour opérer le
MSP430

• 20 $!

Traduit et adapté de l’anglais

Kits de démarrage eZ430‐F2xx 2/2


• Toutes les 14 broches d’entrées/sorties du microcontrôleur
MSP430F2013 sont accessibles sur le circuit imprimé détachable
• Une des broches d’e/s est reliée à une diode LED,
• Caractéristiques du microcontrôleur MSP430F2013 et
périphériques intégrés :
– Performance de 16‐MIPS
– Convertisseur A‐N Sigma‐Delta avec 16 bits de résolution
– Compteur/temporisateur de 16 bits
– Temporisateur de surveillance (« Watchdog timer »)
– Détecteur de sous‐tension d’alimentation (« Brownout detector »)
– Module sériel synchrone supportant SPI and I2C
– 5 modes d’opération à faible courant (0.5 μA en mode standby)

Traduit et adapté de l’anglais

15
2018-09-24

Kits de démarrage eZ430‐RF2500 1/2


• Outil de développement pour le microcontrôleur MSP430F2274 et le
transmetteur sans fil 2.4 Ghz CC2500;
• Circuit imprimé cible Z430‐RF2500T détachable : peut être utilisé seul,
intégré dans un système, ou avec l`interface de débogage USB;
• Peut communiquer avec un PC par le biais du UART intégré dans le
MSP430.
• Alimentation autonome ou via le port USB
• 50 $

Traduit et adapté de l’anglais

Kit de démarrage eZ430‐RF2500 2/2


• Performance de 16‐MIPS;
• Convertisseur A‐N à approximations successives avec 10 bits de
résolution et fréquence d`échantillonnage jusqu’à 200 ke/s
• Compteur/temporisateur de 16 bits
• 2 amplificateur opérationnels intégrés
• Compteur/temporisateur de 16 bits
• Chien de garde (« Watchdog timer »)
• Module sériel universel supportant UART/LIN, (2) SPI, I2C, or IrDA
• Taux de transfert de données programmable jusqu’à 500 kb/s
• 5 modes d’opération à faible courant (0.7 μA en mode standby)
• Transmetteur RF 2.4‐GHz externe (CC2500)
Traduit et adapté de l’anglais

16
2018-09-24

MSP‐EXP430F5438
• Easy power select
– USB, JTAG, Battery
• USB communication
• Microphone
• Filtered PWM audio output
– Active, selectable gain
– Headphone compatibility
• 2‐axis accelerometer
• Dot‐matrix LCD (138x110)
– Integrated backlight
• 1 x 5‐direction switch
• 2 x push‐button switches
• RF Interface
– CCxxxx EVMs
– EZRF I/F (6 & 18‐ pin)

Please ensure 2 x AA Load your F5438A into the


batteries are in place on socket in the appropriate
the back of the board orientation

Traduit et adapté de l’anglais


23

MSP-EXP430FG4618
• Connector for
CC1100/CC1101/
CC2500/CC2420 EMs
• Includes support for the
CC2480 ZigBee Processor

• SW examples and function


library available at
www.ti.com/ccmsplib

Traduit et adapté de l’anglais


79

17
2018-09-24

Et plus encore…
 Le kit chronos permet de faire du
développement à base de 5xx tout
en ayant une montre, un altimètre,
un thermomètre, un compteur de
rythme cardiaque et un transmetteur
sans-fil quant on ne s’en sert pas!
 8 ans d’autonomie de batterie avec
un cycle d’éveil de 5%

Traduit et adapté de l’anglais


75

Development de code
• Demande un ordinateur hôte et une carte
contenant le microcontôleur cible
• Un environnement de développement logiciel
– Code Composer Studio (basé sur Eclipse)
– IAR
– GNU…

Development environment Target processor

36
Traduit et adapté de l’anglais

18
2018-09-24

Cycle de développement logiciel


• Demande des logiciels qui
s’exécutent sur un
Fichier c Fichier c Fichier
asm ordinateur hôte
– Compilateur et assembleur
Compilateur Assembleur
pour le MCU ciblé
Fichier de
code object
Fichier de
code object
Fichier de
code object
– Éditeur de liens pour générer
le code exécutable final du MCU
Editeur de Débogueur
ciblé
liens
Librairie
– Débogeur pour surveiller
Fichier de code l’exécution sur le
exécutable
microcontrôleur
Phase de validation dans la
Phase de codage par l’hôte cible
• L’exécution peut aussi être
simulée sur l’hôte

Traduit et adapté de l’anglais

Exemple de
processus global EDITOR

de génération de source file (*.s)

code ASSEMBLER list file (*.lst)


Other object files
from assembler relocatable object file (*.o)

• Des fichiers intermédiaires or HLL compilers


LINKER linker map file (*.map)
sont générés
relocatable linked object file
• Des fichiers d’information
sont aussi générés LOCATOR locator map file (*.map)

• Un fichier de configuration absolute executable file (*.axf)


est aussi requis pour l’éditeur
HEXTarget
Conversion
de liens

Traduit et adapté de l’anglais

19
2018-09-24

Exécution du EDITOR

code généré source file (*.s)

ASSEMBLER list file (*.lst)


Other object files
from assembler relocatable object file (*.o)
or HLL compilers
LINKER/
map file (*.map)
LOCATOR

absolute executable file (*.axf)

Target Device ADuC7026


Device Simulator HEX JTAG POD
ULink JTAG Pod
Simulator conversion

Device Target
ADuC7026
Programmer Hardware
hardware

Traduit et adapté de l’anglais

20

Vous aimerez peut-être aussi