Introduction
Depuis l 'arrivée du premier microprocesseur dans les années 70 ( déjà plus de 30 ans ), conçu par INTEL les progrès en intégration de composants n 'ont cessé d 'évoluer, faisant de ce fait augmenter la puissance de calcul et la rapidité des microprocesseurs. Ce premier microprocesseur le "4004" deviendra peut être célèbre, en effet la sonde pionner 10 lancée dans les années 70 a quitté le système solaire en emportant avec elle le fameux circuit.
Un microprocesseur peut être assimilé à un circuit logique complexe exécutant une à une des ordres ( instructions ) enregistrés dans une mémoire de programme externe.
Un microprocesseur ne fonctionne jamais seul on lui associe toujours des périphériques d 'entrées- sorties afin de pouvoir exécuter une fonction particulière et dialoguer avec "l 'extérieur" ( prise en compte de l 'état d 'un capteur , commande d 'un relais , mémoire programme de l 'application , etc.. .).
Le grand avantage de cette logique programmable est que la modification d 'une fonction ou d'une tâche ne nécessite pas de câblage supplémentaire, mais uniquement un nouveau programme à loger en mémoire.
L 'arrivée du micro contrôleur qui est un microprocesseur auquel on a intégré les périphériques d 'entrées sorties, va faire que les montages et applications deviennent encore plus simple à mettre en oeuvre, avec un gain de temps, de vitesse et un coût réduit ( le pic 16f84 est à environ 50 f ).
Le PIC 16 F84 de la société Microchip est un micro contrôleur faisant partie de la famille RISC ( reduced instruction set computer ) dont les caractéristiques sont vitesse d 'exécution et jeu d 'instruction réduit ( le pic 16f84 ne comporte que 35 instructions ).
La mémoire de programme
C ' est dans cette mémoire que vous allez "loger" votre programme une fois compilé, la caractéristique essentielle de cette mémoire est qu 'elle conserve ses données même hors tension ( heureusement sinon il faudrait recharger le programme assez souvent... )
Le pic 16f84 possède une mémoire de programme interne ( périphériques intégrés ... ) de 1024 emplacements mémoire comprenant chacun 14 bits ( taille d 'une instruction ). Cette mémoire est du type "flash" , c' est de là que vient le "f" de 16f84...
La RAM
Lorsque un programme "tourne" il fait souvent des calculs intermédiaires par exemple un décomptage pour une temporisation, pour stocker ces calculs temporaires les micro contrôleurs possèdent de la mémoire RAM interne qui en cas de coupure secteur perdent bien évidemment leur contenu ( à ne pas confondre avec la mémoire de programme de type flash ).
Le PIC 16F84 intègre 68 octets de RAM. On appel également ces emplacements mémoire des registres à usage général.
L ' E²PROM
Il arrive parfois que l 'on souhaite mémoriser des événements survenants au cours d 'un programme en exécution, par exemple une alarme. Certain micro contrôleur ont la possibilité de sauvegarder cet événement dans une mémoire non volatile c'est à dire une mémoire qui conserve les données même hors tension , un peu comme la mémoire de programme au détail près que l 'on ne peut pas écrire dans la mémoire de programme lors de l ' exécution du programme.
Le PIC 16F84 met à votre disposition 64 octets de mémoire E²PROM.
Le Watchdog
Sous ce nom étrange nous allons découvrir une fonction capable de surveiller le bon fonctionnement du programme que le micro contrôleur exécute. Le rôle du Watchdog ( ou chien de garde ) est de "réseter" le micro contrôleur si l 'on ne remet pas à zéro périodiquement ( à intervalle définissable ) un registre interne grâce à l 'instruction clrwdt ( clear watchdog ), si le programme tourne par exemple dans une boucle sans fin ( c'est un bug ! ) , il ne peut remettre à 0 le chien de garde et ainsi le micro contrôleur se reset afin de relancer le programme. Cette fonction est bien sûr désactivable au moment de la programmation du micro contrôleur, c' est la directive d 'assemblage __config qui définie cette fonction.
Le TIMER
Un timer est un registre interne au micro contrôleur , celui-ci s 'incrémente au grès d' un horloge, ce registre peut servir par exemple pour réaliser des temporisations, ou bien encore pour faire du comptage ( par l 'intermédiaire d 'une broche spécifique : RA4/TOKI ).
Le PIC 16F84 possède un timer sur 8 bits ( il compte jusqu ' à 256 ) configurable par logiciel.
Les entrées - sorties
Que serait un micron contrôleur ne possédant pas de broche d 'entrées- sorties ? ( difficile d 'y répondre ) .
Lorsque vous envisagez de créer une application, en générale celle-ci commande un relais, une led ou bien tout autre actionneur, de même votre programme qui tourne peut évoluer selon des informations extérieures , l 'état d 'un contact par exemple ou bien d 'un interrupteur. Pour vous aidez à réaliser votre application le PIC 16F84 possède 13 entrées sorties configurables individuellement broches RA0 à RA4 et RB0 à RB7
Le brochage du PIC 16 F 84
RA0 à RA4 : broches d 'entrée-sortie configurables
RB0 à RB7 : broches d 'entrée-sortie configurables
OSC1 - OSC2 : oscillateur ( quartz par exemple )
MCLR/VPP : broche de raz
VSS : 0V VDD : +5V
Pour résumer ...
Le PIC 16F84 est un micro contrôleur comportant un jeu d 'instructions réduit
La mémoire de programme est du type mémoire flash elle peut loger un programme de 1024*14 bits
La mémoire ram utilisateur est de 68 octets
La mémoire E²prom est de 64 octets
Le pic 16f84 possède un timer intégré
13 entrées - sorties configurables individuellement
Un watchdog intégré