25
Architecture introduction

Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Embed Size (px)

Citation preview

Page 1: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Architecture

introduction

Page 2: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Architecture de base

Alimentation

µC

Périphériques

Oscillateur

Page 3: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Alimentation

• Se constitue de deux éléments :– Une source de tension régulée

• Fournit une tension stable

– Un superviseur• Surveille les éventuelles chutes de tensions et

reset le µC si besoin est.• Evite le code aléatoire• Intégré dans les pic 18FXXXX (mais à activer)

Page 4: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Alimentation

• Penser à placer un condensateur de 100nF en parallèle des pattes d’alimentation des pic et circuits logiques

Page 5: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Oscillateur

• En général circuit constitué d’un quartz et deux condensateurs.

Page 6: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Port d’E/S

• Les ports d’entrée sortie d’un µC ne peuvent fournir qu’un courant très faibles

• La tension en sortie est 0 ou Vcc (tension d’alimentation)

• On peut lire ou écrire sur le port

• Attention de ne forcer matériellement et en écriture un port à des valeurs différentes (court-circuit et destruction du µC)

Page 7: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Périphériques

• Il en existe de tout types

• Les pics en embarquent un certains nombres

• Prévoir des ressources et les moyens de communication (bus) et le traitement par le µC.

Page 8: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Périphériques embarqués par les PICs

• CAN

• Compare and capture unit =>générateur PWM

• UART (liaison série)

• Et bien d’autres à voir dans la datasheet

Page 9: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Architecture

Spécificité des PIC

Page 10: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

ICD2

• Permet la programmation et le déboguage in-situ

• Nécessite une embase RJ-11 reliée aux pattes adéquates du µC

Page 11: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Programmation

bases

Page 12: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Langage utilisé et restriction

• Sous ensemble du langage C

• Utilisation des ressources à gérer proprement :– Par exemple ne pas mettre un long là ou un

char suffirait– Limiter l’utilisation des flottants

Page 13: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Syntaxe

• La syntaxe employée est celle du C standard.

• On n’utilise cependant pas les fonctions de stdio.h (sauf redirections)

• p18FXXXX.h à inclure dans la source.

Page 14: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Les registres

• Configurent ou permettent de lire l’état du microcontrôleur

Page 15: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Les registres

• Pour écrire dans le registre deux méthodes :– Registre=valeur; (par exemple T0CON=0x30;)– En accédant à chaque bit

Registresbits.Lebit=0 ou 1;

(exemple : T0CONbits.PSA=1;)

Page 16: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Exemple de code

• Void main (void)

{

while(1)

{

PORTA=0XFF-PORTA;}

}

Page 17: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Programmation

Périphériques

Page 18: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Scrutation

• Le µC va régulièrement lire les registres associés au périphériques pour traiter le cas échéant les données reçus

• Avantage– Facile à programmer à gérer

• Inconvénients– Occupe beaucoup le processeurs– Difficile à utiliser avec un beaucoup de

périphérique

Page 19: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Interruption

• Les périphériques interrompent l’exécution du programme principal selon leurs besoins

• En cas d’IT le processeur saute au vecteur d’interruption de la priorité associée.

• Nécessite moins de ressources que la scrutation

• Plus difficile à programmer.

Page 20: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Interruption How to 1/2• Configurer le périphérique, donner une priorité à son

IT(IPR1/2) et la démasquer (PIE1/2)• Activer les interruptions (INTCON {0,1})• Ajouter du code à l’image de ce qui suit#pragma code InterruptVectorHigh = 0x08voidInterruptVectorHigh (void){ _asm goto InterruptHandlerHigh //jump to interrupt routine _endasm• }

Page 21: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Interruption How to 2/2

• La fonction void InterruptHandlerHigh()doit alors lire les flags d’IT (registre PIR1/2) pour trouver la source, traiter les données et acquitter l’IT

• On doit répéter ces deux bouts de code pour les IT de priorité basse (en changeant le vecteur)

Page 22: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Montages et périphériques basiques

Page 23: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Pont en H• Contrôle le sens et la vitesse d’un moteur

à courant continue

• Peut etre connecté directement en sortie du µC si constitué de mosfet

Page 24: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

Générateur PWM

• Pulse Width Modulation.

• Génère un signal carré de rapport cyclique variable.

• Permet par exemple de faire varier la vitesse d’un moteur.

• Très utilisé en association avec le pont en H

Page 25: Architecture introduction. Architecture de base Alimentation µC Périphériques Oscillateur

CAN

• Convertisseur analogique numérique

• Retourne tous les Tconv une valeur numérique n sur N bit représentant la tension mesuré de telle sorte que

• V=n*(FULL-SCALE/(2^(N))

• Utile pour mesurer le retour d’un capteur par exemple.