INITIATION AUX MICROCONTRÔLEURSdemay.iut.lr.free.fr/doc/1A/Informatique/I2-2 - Programmation... ·...
Transcript of INITIATION AUX MICROCONTRÔLEURSdemay.iut.lr.free.fr/doc/1A/Informatique/I2-2 - Programmation... ·...
IUT Réseaux & Télécoms - La Rochelle
INITIATION AUX MICROCONTRÔLEURS
MICROCHIP PIC 18F4520Programmation en langage C
IUT R&T 2
Généralités
Les microcontrôleurs de la société ont la dénomination de PIC (Peripheral Interface Controller).
Un PIC est une unité de traitement de l’information de type microprocesseur à laquelle on a ajouté des périphériques internes permettant de réaliser des montages sans nécessiter l’ajout de composants externes.
Un microcontrôleur peut donc fonctionner de façon autonome après programmation.
IUT R&T 3
Structure interne
La majorité des microcontrôleurs PIC intègrent :
➢ mémoire programme➢ mémoire données➢ ports d'entrée-sortie (numériques,
analogiques, PWM, UART, bus I²C, etc.)
➢ circuits d'horloge➢ compteurs/timers
Certains modèles disposent de port et d'unités de traitement de l'USB.
IUT R&T 4
ArchitectureLes microcontrôleurs 8 bits PIC sont basés sur une architecture Harvard
IUT R&T 5
PerformancesLes microcontrôleurs Microchip sont équipés d'un processeur RISC (Reduce Instruction Set Computer). Ceci permet d'obtenir un fonctionnement plus rapide.
IUT R&T 6
Famille PIC 18Fxx20Les PIC du type 18F sont des microcontrôleurs dont l'architecture est optimisée pour les compilateurs C.
IUT R&T 7
Brochage PIC18F4520
IUT R&T 8
Caractéristiques PIC18F4520
IUT R&T 9
Structure interne (1)
IUT R&T 10
Structure interne (2)
IUT R&T 11
Ports d'entrées/sorties● Le PIC18F4520 dispose de 5 ports d'E/S. Chaque port
est associé à 3 registres :➢ TRISx : Registre de direction de données (DDR)➢ PORTx : Pour la lecture des niveaux présents sur les
broches.➢ LATx : Buffer de sortie (Output Latch).
Exemple du PortB :
IUT R&T 12
Configuration des registresLe modèle simplifié d'une ligne de port est le suivant :
La configuration d'un bit du registre TRISx correspondant à une ligne du port x configure cette ligne soit en entrée '1', soit en sortie '0' :
IUT R&T 13
Programmation des ports●Pour utiliser les ports d'E/S d'un PIC, il faut :● Configurer les broches du port en écrivant
directement dans le regitre de direction du port concerné ●Ex : TRISB = 0x0F ; /* RB0 à RB3 : entrée – RB4 à RB7 : sortie */● TRISC = 0b11111100 ; /* RC0 à RC1 : sortie – RC2 à RC7 : entrée */
● Lire ou écrire sur le port :●Ex : PORTB = 0x20 ; /*RB5 à l'état haut */
● var = PORTA ; /* la variable var contient l'état des broches d'entrées du Port A */
● Lire ou écrire sur un seul bit d'un port :●Ex : TRISBbits.TRISB0 = 0 ; /* RB0 en sortie */
● PORTBbits.RB0 = 1 ; /* RB0 au niveau haut */
IUT R&T 14
Développement
IUT R&T 15
La carte PICDEM 2+