WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Etude et application de microcontroleur 16f84

( Télécharger le fichier original )
par Mustapha BOUZIANE
Université de Mascara, Algérie - Génie électrique et électronique 2007
  

sommaire suivant

République Algérienne démocratique Et populaire

UNIVERSITE DE MASCARA
FACULTE DES SCIENCES ET DE LA TECHNOLOGIE
Génie Electrique Et Electronique

Pour obtenir
Diplôme d'Etude Universitaire Appliquée

Thème

Présenté par :

- Mr BOUZIANE MUSTAPHA - Mr BESSAIM

BENALI

Encadré par : Mr Chaouche
Membre du jury :

Président du jury : M r AZZEDDINE Examinateurs : M r TAYBI

: M elle MESKINE

Année universitaire : 2006 / 2007

Je dédie ce modeste travail à :

Ma grand-mère pour leur aides et leur
soutien durant toute la période de mes études
Ma mère et mon père,
la lumière de ma vie
Tous mes frères, ma famille et mes oncles
Et tous les habitants d'Adrar.
Mon binôme et tous mes amis

En fin à tout les étudiants
de génie électrique & électronique.

Bouziane Mustapha

Je dédie ce modeste travail à :

Mes chers parents pou leur patience,
leur soutien et leur confiances

Mes frères, mes soeurs et mes oncles
A toute ma famille

A toute la familles Bessaïm

A mon binôme, notre encadreur et tous mes amis

En fin à moi-même et tous les étudiants
de génie électrique & électronique.

Bessaïm Benali

Tous d'abord nous remercions

Le plus puissant qui nous donne le courage
de résoudre tout les problèmes.
Nous tenons à remercier tout ce qui nous ont
aidés de prés ou de loin par leur conseilles,
informations et leur encouragements pour
réaliser ce projet de fin d'étude ,ainsi à notre

encadreur Mr" Djamel chaouche ".

Nous remercions aussi tous les enseignants
de département de Génie Électrique.
En fin nous remercions tous nos amis
et les étudiants de 3éme année Génie
Électrique & Électronique

étude de PIC 16F84

1. Qu'est-ce qu'un PIC ? (PIC : Programmable Intelligent Contrôler).

- Un PIC n'est rien d'autre qu'un microcontrôleur, c'est à dire 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.

- Les PICs sont des composants dits RISC (Reduce Instruction Construction Set),ou encore composant à jeu d'instructions réduit. Pourquoi ? Et bien, sachez que plus on réduit le nombre d'instructions , plus facile et plus rapide en est le décodage , et plus vite le composant fonctionne.

- On trouve sur le marché 2 familles opposées , les RISC et les CISC (Complex Instructions Construction Set).Chez les CISC ,on diminue la vitesse de traitement, mais les instructions sont plus complexes , plus puissantes , et donc plus nombreuses. Il s'agit donc d'un choix de stratégie.

[1]

2. Les différentes familles des PICs :

La famille des PICs est subdivisée à l'heure actuelle en 3 grandes familles : La famille Base-Line , qui utilise des mots d'instructions de 12 bits, La famille Mid-Range , qui utilise des mots d'instructions de 14 bits , La famille High-End, qui utilise des mots d'instructions de 16 bits.

[1]

3. Identification d'un PIC :

Pour identifier un PIC, vous utiliserez simplement son numéro .

-Les 2 premiers chiffres indiquent la catégorie du PIC , 16 indique un PIC Mid-Range.

Vient ensuite parfois une lettre L : Celle-ci indique que le PIC peut fonctionner avec une plage de tension beaucoup plus tolérante . Ensuite, vous trouvez :

C : indique que la mémoire programme est une EPROM ou plus rarement une EEPROM

CR : pour indiquer une mémoire de type ROM .

F : pour indiquer une mémoire de type FLASH.

- Notez à ce niveau que seule une mémoire FLASH ou EEPROM est susceptible d'être effacée,

- Puis vous constatez que les derniers chiffres identifient précisément le PIC (84) .

- Finalement vous verrez sur les boîtiers le suffixe <<-XX >> dans lequel XX représente la fréquence d'horloge maximale que le PIC peut recevoir. Exemple -04 pour un 4MHz.

- Donc, un 16F84-04 est un PIC Mid-Range (16) donc la mémoire programme est de type FLASH (F) donc réinscriptible de type 84 et capable d'accepter une fréquence d'horloge de 4MHz. [1]

4. Brochage du PIC 16f84 :

- Le PIC 16f84 c'est un circuit intégré, boîte de 18 branches. - Le brochage proposé à la (figure : 1-1)

( Figure : 1-1) Brochage du PIC 16 F84

4.1 Les branches ( les pattes ) :

- Les ports d'entrées / sorties :

- Permettent de dialoguer avec l'extérieur du microcontrôleur, pare exemple pour prendre en compte l'état d'un interrupteur (entrée logique) ou encore pour commander un relais ( sortie logique ) .

- Le PIC 16F84 possède 13 lignes d'entrées / sorties : RB0 à RB7 et RA0 à RA4.

RA0 à RA4 : Constituent le (PORTA) du microcontrôleur ce port bidirectionnel . -La ligne RA4de type drain ouvert en sortie peut aussi être utilisée comme entrée d'horloge du compteur (Timer) , TMR0 .

RB0 et RB7 : Constituent le PORTB du microcontrôleur , ce port bidirectionnel. - La ligne RB0 peut servir d'entrée de demande d'interruption externe .

VDD et VSS : Ce sont les connexions d'alimentation du circuit .Il est alimenté avec une tension de 5 volts VSS = 0 v , VDD = +5 v .

MCLR :Cette connexion active au niveau 0, est l'entrée de Reset (Master CLear Reset ) elle permet aussi le branchement de la haute tension VPP nécessaire à la programmation du composant .

OSC1 et OS : Ces connexion permettent l'entrée des signaux nécessaires au fonctionnement de l'horloge . [3]

5. Organisation du PIC 16F84:

- Nous allons maintenant nous intéresser à la structure interne du PIC 16f84 avec lequel nous allons travailler ( figure : 1-2 ).

( figure : 1- 2 ) Structure interne du PIC 16F84 [2]

5.1. La mémoire de programme :

-C'est une mémoire contient le code binaire correspondant aux instructions que doit exécuter le microcontrôleur . la capacité de cette mémoire est variable selon les PICs . -Le PIC 16F84 possède une mémoire de programme de 1024 × 14 bits . (figure : 1- 3 ) [2]

( figure : 1-3 ) La mémoire de programme , PIC 16F84

5.2. La mémoire RAM :

-C'est une mémoire qui sauvegarde temporairement des données. La capacité de cette RAM est variable selon les PICs . le PIC 16F84 possède une mémoire RAM de 68 octets . ( figure : 1-4 ) [2]

5.3. La mémoire EEPROM :

-La mémoire EEPROM (Electrical Erasable Programmable Read Only Memory), est constituée de 64 octets que vous pouvez lire et écrire depuis votre programme . -Ces octets sont conservés après une coupure de courant et sont très utiles pour conserver des paramètres semi permanents.

-Leur utilisation implique une procédure spéciale car ce n'est pas de la RAM , mais
bien une ROM de type spécial. Il est donc plus rapide de la lire que d'y écrire.

[1]

5.4. Unité Arithmétique et Logique : ( UAL ) ou ALU en anglais .

- UAL est chargée effectuer toutes les opérations arithmétiques de base ( addition ,
soustraction , etc.) ainsi que les opérations logiques de base ( ET ,OU logique , etc.).

[2]

5.5. Horloge système :

-L'horloge fournie au PIC est pré divisée par 4 au niveau de celle-ci. C'est cette base de temps qui donne le temps d'un cycle.

L'horloge du microcontrôleur peut utiliser différents systèmes il faut configurer le PIC en fonction du câblage réalisé et de ses caractéristique de fonctionnement .

( Voire tableau : 1 ).

OSC1

OS

Type d'oscillateur

0

0

Oscillateur avec réseau résistance capacité Fmax = 4 MHz .

1

0

Oscillateur XT à quartz ou oscillateur extérieur Fmax = 4 MHz .

0

1

Oscillateur HS à quartz grande vitesse Fmax = 10 MHz .

1

1

Oscillateur LP à quartz basse consommation Fmax = 200 KHz .

(tableau : 1 ) Choix de l'oscillateur [3]

5.6. Définition du reset :

- Après avoir placé le programme en mémoire on peut se demander comment faire pour le lancer et ainsi mettre en route l'application, l'opération reset permet ce démarrage .

- Cette procédure d'initialisation interne est déclenchée soit à la mise sous tension du composant c'est le Power On Reset (P.O.R), soit par un niveau bas appliqué sur la connexion MCLR (Master Clear Reset ).

- le POR est généré grâce à un détecteur de niveau quand la montée de la tension d'alimentation atteint un seuil 1,2 et 1,7 volt . le reset initialise un certain nombre de registres.

5.7. Chien de garde ( Watch Dog ) :

- C'est un système de protection contre un blocage du programme . Par exemple , si le programme attend le résultat d'un système extérieur ( conversion analogique numérique par exemple ) et qu'il n'y a pas de réponse, il peut rester bloquer. Pour en sortir on utilise un chien de garde . Il s'agit d'un compteur qui , lorsqu'il arrive en fin de comptage , permet de redémarrer le programme. Il est lancé au début du programme.

- En fonctionnement normal , il est remis à zéro régulièrement dans une branche du programme qui s'exécute régulièrement. Si le programme est bloqué ,il ne passé plus dans la branche de remise à zéro et le comptage va jusqu'au bout, déclenche le chien de garde qui relance le programme.

[1]

5.8. Les registres fondamentaux :

5.8.1 Le registre ( W ) :

-Ce registre de travail que l'on peut appeler accumulateur est un registre utilisé pou réaliser des calculs , le résultat d'un calcul peut être sauvegardé dans un emplacement RAM (F) ou dans le registre de travail (W) .(il n'y a pas d'adresse ) . [3]

5.8.2. Le registre pointeur de pile : ( PP ou SP en anglais ) .

- Est essentiellement utilisé lorsque l'on réalise un sous-programme .le pointeur de pile est chargé de mémoriser l'adresse courante que contient le compteur de programme avant le saut à l'adresse du sous-programme .lorsque le sous-programme est terminé, le pointeur restitue l'adresse sauvegardée vers le compteur de programme .

[2]

5.8.3. Le registre d'instruction :

- Contient tous les codes binaires correspondant aux instructions à réaliser par le microcontrôleur, le PIC 16F84 comporte 35 instructions . [2]

Observation : On a autres registre , registre compteur de programme (PC ) et registre d'état ( STATUS ) et on a aussi des registres spéciaux on fait détaille on suit .

6. Les interruptions :

- Une interruption comme son nom l'indique , interrompt un programme en cours (programme principal) pour faire exécuter à le microcontrôleur un autre travail (suite d'instructions appelée aussi sous-programme ). celui-ci se termine par une instruction de retour d'interruption (RETFIE) qui permet à le microcontrôleur de reprendre le programme principale ou il a été quitté.

[3]

7. Le Pré diviseur :

- C'est un diviseur de fréquence de l'horloges , un prédiviseur , partagé avec le chien de garde, est disponible. La période de l'horloge d'entrée est divisée par une valeur comprise entre 2 et 256 suivant les bits PS2, PS1 et PS0 (respectivement OPTION_REG 2, 1 et 0). -Le bit PSA (OPTION_REG . 3) permet de choisir entre la prédivision de timer0 (PSA=0) ou du chien de garde (PSA=1).

[1]

8. Les registres spéciaux : ( les registres internes du PIC 16F84 ) .

-Le tableau suivant (:2).Fait découvrir de nouveaux registres directement accessibles par l'utilisateur , ce sont en réalité des cases mémoires RAM regroupées dans une zone appelée par le constructeur FILE .

-Certains de ces registre sont situés en page 0 entre les adresses 00 et 0B , et d'autre sont situés en page 1 entre les adresses 80 et 8B , il y a deux pages mémoire donnant accès a certains emplacements:en positionnant le bit RP0 du registre STATUS ( registre d'état ) à 0 , on accède aux registre de la page mémoire 0 ; en positionnant ce bit à 1 , on accède à la page mémoire 1 . Il en a 16 registres plus le registre ( W, Pointeur de pile et registre d'instruction ), et sont si importants qu'ils conditionnent véritablement la programmation .

sommaire suivant











9Impact, le film from Onalukusu Luambo on Vimeo.



Bitcoin - Magic internet money - Join us !