uc16f877
TRANSCRIPT
-
8/13/2019 uC16F877
1/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 1/37
TRAITEMENT PROGRAMME
DE L'INFORMATION
- PARTIE 6
Le microcontr!leur PIC 16F877
-
8/13/2019 uC16F877
2/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 2/37
SOMMAIRE
1 MISE EN SITUATION...................................................................................................................................................3
2 DESCRIPTION ET STRUCTURE INTERNE............................................................................ ..................................3
2.1 C.P.U. (Microprocesseur).......................................................................................................................................... 5
2.2 M#moires programmes..............................................................................................................................................5
2.3 M#moires de donn#es................................................................................................................................................5
2.3.1 Organisation m#moire du PIC16F877..............................................................................................................62.3.2 La m#moire ram des donn#es...........................................................................................................................7
2.3.3 La m#moire FLASH PROGRAMME et la MEMOIRE DONNEES EEPROM..................................................8
2.4 L&interface parallle................................................................................................................................................10
2.4.1 Les Ports du PIC16F877 ................................................................................................................................10
2.5 L&interface s#rie......................................................................................................................................................15
2.5.1 Les liaisons s#ries synchrones du PIC16F877.................................................................................................16
2.5.2 La liaison SPI ................................................................................................................................................18
2.5.3 La liaison I2C en mode slave .........................................................................................................................19
2.5.4 La liaison s#rie asynchrone du PIC16F877.....................................................................................................20
2.6 Le CAN. .................................................................................................................................................................212.6.1 Le Can du PIC 16F877..................................................................................................................................21
2.7 Le timer. .................................................................................................................................................................23
2.8 Le chien de garde....................................................................................................................................................30
2.9 Les signaux d&horloge.............................................................................................................................................30
2.10 Les Particularit#s du PIC16F877.............................................................................................................................31
3 MODE DE FONCTIONNEMENT...............................................................................................................................34
3.1 Le fonctionnement en interruptions. ........................................................................................................................34
3.2 Instructions et modes d&adressages..........................................................................................................................35
3.3 Les Instructions du PIC16F877. ..............................................................................................................................36
4 STRUCTURE D$UN PROGRAMME. .........................................................................................................................37
5 EXEMPLES DE MICROCONTR%LEURS................................................................................................................37
-
8/13/2019 uC16F877
3/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 3/37
LE MICROCONTROLEUR PIC 16F877
1 Mise en situation.
Un objet technique, intgrant de l#lectronique, fait souvent appara$tre des fonctions ayant pour r'le le traitementd#informations : oprations arithmtiques (addition, multiplication...) ou logiques ( ET, OU...) entre plusieurssignaux d#entre permettant de gnrer des signaux de sortie.
Ces fonctions peuvent )tre ralises par des circuits intgrs analogiques ou logiques. Mais, lorsque l#objettechnique devient complexe, et qu#il est alors ncessaire de raliser un ensemble important de traitements
d#informations, il devient plus simple de faire appel *une structure *base de microcontr'leur.
2 Description et structure interne.Un microcontr'leur se prsente sous la forme d#un circuit intgr runissant tous les lments d#une structure *base de microprocesseur. Voici gnralement ce que l#on trouve *l#intrieur d#un tel composant :
w Un microprocesseur (C.P.U.),w De la mmoire de donne (RAM et EEPROM),w De la mmoire programme (ROM, OTPROM, UVPROM ou EEPROM),w Des interfaces parall-les pour la connexion des entres / sorties,
w Des interfaces sries (synchrone ou asynchrone) pour le dialogue avec d#autres units,w Des timers pour gnrer ou mesurer des signaux avec une grande prcision temporelle,w Des convertisseurs analogique / numrique pour le traitement de signaux analogiques.
Avantages :Encombrement rduit,Circuit imprimpeu complexe,Faible consommation, Co.t rduit.
Inconvnient : Syst-me de dveloppement onreux,Programmation ncessitant un matriel adapt.
Unitde traitementlectronique
Interfa#aged'entre
Unitcentrale detraitement
Interfa#age desortie
CAPTEURS
ACTIONNEUR
OPERATEUR
ORGANISATION FONCTIONNELLE D'UN SYSTEME A MICROCONTROLEUR"
Signaux analogique,
numrique et/ou logique
Signaux numriques traitsSignaux numriques#traiterSignaux analogique,numrique et/ou logique
-
8/13/2019 uC16F877
4/37
-
8/13/2019 uC16F877
5/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 5/37
2.1 C.P.U. (Microprocesseur).Un microprocesseur excute squentiellement les instructions stockes dans la mmoire programme. Il estcapable d#oprer sur des mots binaires dont la taille, en bits, est celle du bus des donnes (parfois le double pourcertains microcontr'leurs). Il est gnralement constitudes lments suivants :
w Un ou plusieurs registres accumulateurscontenant temporairement les oprandes ainsi que les rsultats desoprations,w Des registresauxiliairespermettant de relayer les accumulateurs,w Des registresd#indexpour le mode d#adressage indirect,w Un compteur programmepointant l#adresse de la prochaine instruction *excuter, sa taille est celle du busdes adresses,w Une unit arithmtique et logique (ALU) permettant d#effectuer des oprations entre l#accumulateur et uneoprande,w Un registre code condition indiquant certaines particularits en ce qui concerne le rsultat de la derni-reopration (retenu, zro, interruption...).
On peut noter qu#il existe 2 catgories de microprocesseur : les CISC et les RISC.
CISC (Complex Instruction Set Computer) : Ce microprocesseur poss-de un nombre important d#instructions.Chacune d#elles s#excute en plusieurs priodes d#horloges.
RISC (Reduced Instruction Set Computer) : Ce microprocesseur poss-de un nombre rduit d#instructions.Chacune d#elles s#excute en une priode d#horloge. C#est le cas du microcontr'leur PIC16F877 de chezMicrochip
2.2 Mmoires programmes.Ce dispositif contient les instructions du programme que doit excuter le microprocesseur. Ce type de mmoire(appele mmoire morte), est uniquement accessible en lecture. Sa programmation ncessite une procdureparticuli-re et un matriel adquate.
Il en existe diffrents types selon leur mode de programmation :
wDe la ROM dont le contenu est programmlors de sa fabrication.wDe la PROM programmable lectriquement une seule fois par le dveloppeur (appele aussi OTPROM),wDe la EPROM programmable lectriquement et effa3able aux U-V (appele aussi UVPROM),wDe la EEPROM programmable et effa3able lectriquement.
2.3 Mmoires de donnes.Ce dispositif permet de mmoriser temporairement les donnes gnres par le microprocesseur pendant lesdiffrentes phases du traitement numrique (rsultats d#oprations, tats des capteurs...). Ces mmoires sontaccessibles en criture et en lecture.
On en trouve 2 types :
w De la mmoire vive (RAM) volatile (donnes perdues en cas de coupure de l#alimentation) ayant un temps delecture et criture assez court (quelques ns),w De la mmoire morte (EEPROM) non-volatile (donnes conserves en cas de coupure de l#alimentation) ayantun temps d#criture assez lev(quelques ms) par rapport au temps de lecture qui est assez faible (quelques ns).
-
8/13/2019 uC16F877
6/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 6/37
2.3.1 Organisation mmoire du PIC16F877.
Le plan m#moire
Le PIC 16F877 poss-de un PC de 13 bits (PC0-PC12)est permet donc une capacitd#adressage de 8K X 14 del#adresse 0 *$1FFF . La partie haute(PC8-PC12) du PC est accessible dans le registre PCLATH.
Il dispose de trois types de mmoire :
La mmoire flash programme
La mmoire de donnes RAM
La mmoire de donnes EEPROM
Il est *noter que la mmoire programme et l#Eeprom sont sur les m)mes bus et que leur accs se diffrencie parle bit EEPGD (bit7) du registreEECON1.
La mmoire de donne est, quant *elle, indpendante.
Stack: pile dans laquelle est
sauvegard# ltat du
microprocesseur (PC,W) lors
d&appel ' sous-programmes ou
d&interruptions.
Vecteur Reset: contient l&adresse
de d#but de programme (2 octets)
Interrupt Vecteur : contient
l&adresse du d#but de programme
d&interruption quand on utilise les
interruptions.
Page: z)ne de m#moire contenant
des registres de configuration, des
donn#es variables ou du programme
-
8/13/2019 uC16F877
7/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 7/37
2.3.2 La mmoire ram des donnes
Elle contient les diff#rents registres
-
8/13/2019 uC16F877
8/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 8/37
Avant d&acc#der 'un de ces registres il convient de s&assurer
que la banque de registres est bien correctement choisie.
En positionnant les bits RP1 et RP0 du status register
2.3.3 La mmoire FLASH PROGRAMME et la MEMOIRE DONNEES EEPROM
C&est le registre EECON1 qui permet de d#finir 'laquelle on veut acc#der.
Exemple de proc#dures de lecture, #criture vers EEPROMDATA ou
FLASH PROGRAM MEMORY
-
8/13/2019 uC16F877
9/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 9/37
-
8/13/2019 uC16F877
10/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 10/37
2.4 L$interface parall(le.Ce type d#interface, rpartie sur plusieurs ports (maximum 8 bits), permet de prendre en compte des tatslogiques appliqus en entre (tat de capteurs) ou de gnrer des signaux binaires en sortie (commanded#actionneurs). Les broches de ces ports peuvent donc )tre configures en entre ou en sortie, avecdiffrentes options (rsistances de rappel, sorties collecteurs ouverts, interruption...). La configuration ainsi que
l#tat logique de ces broches est obtenue par des oprations d#criture ou de lecture dans diffrents registresassocis *chaque port. On trouve gnralement :
w Un registre de direction pour une configuration en entre ou en sortie,w Un registre de donne recopiant les tats logiques de chaque broche de port,w Un registre d#option permettant plusieurs configurations en entre ou en sortie.
2.4.1 Les Ports du PIC16F877
Certaines lignes de port en plus de pouvoir ,tre configur#es en entr#e ou en sortie , ont la
particularit# de pouvoir remplir d&autres fonctions comme sortie PWM, ligne usart, ligne I2C,
lignes SPI-
Le PORT A
-
8/13/2019 uC16F877
11/37
-
8/13/2019 uC16F877
12/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 12/37
Le PORT B
-
8/13/2019 uC16F877
13/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 13/37
Le PORT C
Le PORT D
-
8/13/2019 uC16F877
14/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 14/37
Le PORT E
-
8/13/2019 uC16F877
15/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 15/37
2.5 L$interface srie.Ce type d#interface permet au microcontr'leur de communiquer avec d #autres syst-mes *base de microprocesseur. Les donnes envoyes ou re3ues se prsentes sous la formed#un succession temporelle (sur un seul bit) de valeurs binaires images d #un mots. Il y a 2
types de liaison srie : synchrone et asynchrone. Liaison srie synchrone.
Dans ce dispositif la transmission est synchronispar un signal d#horloge mis par l#unitma$tre.
UNIT6
MA8TRE
UNIT6
ESCLAVE
Sout
Sin
Sclk
t
t
SCLK
SINouSOUT
D7 D6 D5 D4 D3 D2 D1 D0
Liaison srie asynchrone.
Ce dispositif ne poss-de pas de signal d#horloge de synchronisation. Les units en liaisonposs-dent chacune une horloge interne cadence *la m)me frquence. Lorsqu#une unitveut mettre un mot binaire, elle gn-re un front descendant sur sa ligne mettrice. A la finde l#mission de ce mot, la ligne repasse au niveau haut. La donn e * transmettre peutcontenir un bit supplmentaire appel0parit1et servant *la correction d#erreurs.
UNIT6
MA8TRE
UNIT6
ESCLAVE
TXD
t
TXD
RXD RXD
TXD D0 D5D4D3D2D1 D6
OU
RXD
BIT
DESTART
BIT
DE
STOP
PARIT6
TRAMES
P
PARAMETRES RENTRANT EN JEU POUR LA NORME RS232 :
w Longueur des mots :7 bits (ex : caract-re ascii) ou 8 bitsw La vitesse de transmission :elle est dfini en bits par seconde ou bauds. Elle peut prendredes valeurs allant de 110 *115 200 bds.w Parit : le mot transmis peut )tre suivi ou non d'un bit de parit qui sert * dtecter les
erreurs ventuelles de transmission.w Bit de start :la ligne au repos est *l'tat logique 1 pour indiquer qu'un mot va )tre transmisla ligne passe * l'tat bas avant de commencer le transfert. Ce bit permet de synchroniserl'horloge du rcepteur.w Bit de stop :apr-s la transmission, la ligne est positionne au repos pendant 1, 2 ou 1,5priodes d'horloge selon le nombrede bits de stop.w Niveau de tension :Un 001logique est matrialispar une tension comprise entre 3 et 25V,un 011par une tension comprise entre -25 et -3 V. Des circuits sp cialiss comme le MAX 232ralise la conversion *partir de niveau TTL.
-
8/13/2019 uC16F877
16/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 16/37
2.5.1 Les liaisons sries synchrones du PIC16F877
Le PIC16F877 permet par son module MASTER SYNCHRONOUS SERIAL PORTDe communiquer suivant deux protocoles :
:Serial Peripheral Interface (SPI):Inter-Integrated Circuit (I2C)Pour chacun de ces protocoles existent deux modes, le mode MASTER et le mode SLAVE.. Enmode Master c#est le microcontr'leur qui g-re la ligne SCK, alors qu#en mode SLAVE, cettehorloge est pilot par un ma$tre externe et de ce fait le microcontr'leur ne pilote pas latransmission mais la subit.
Ces liaison se configurent par les registres suivants
-
8/13/2019 uC16F877
17/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 17/37
-
8/13/2019 uC16F877
18/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 18/37
2.5.2 La liaison SPI
-
8/13/2019 uC16F877
19/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 19/37
2.5.3 La liaison I2C en mode slave
-
8/13/2019 uC16F877
20/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 20/37
2.5.4 La liaison srie asynchrone du PIC16F877
Cette liaison peut aussi )tre configure en mode synchroneASYNCHRONOUS RECEIVER
TRANSMITTER (USART):Synchronous - Master (half duplex)
En emission
En rception
-
8/13/2019 uC16F877
21/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 21/37
2.6 Le CAN.Le CAN intgrdans les microcontr'leurs est gnralement du type 0Approximations successives1. Il poss-deplusieurs entres multiplexes accessibles via les broches des ports de l#interface parall-le. Le CAN poss-denormalement 2 registres :
w Un registre de donnes contenant le rsultat de la conversion,w Un registre de contr'le permettant de lancer et de surveiller la conversion.
2.6.1 Le Can du PIC 16F877
Le can interne du PIC 16F877 permet de convertir une tension d&entr#e analogique en
combinaison num#rique sur 10 bits contenue dans les registres ADRESH et ADRESL.
Les registres suivants permettent de configurer et de lancer la conversion en fixant notamment
Vref utilis#e pour la conversion.
-
8/13/2019 uC16F877
22/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 22/37
-
8/13/2019 uC16F877
23/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 23/37
2.7 Le timer.Le Timer permettent de raliser les fonctions suivantes :
w Gnration d#un signal priodique modulou non en largeur d#impulsion,w Gnration d#une impulsion calibre,
w Temporisation,w Comptage d'vnements.
Plusieurs registres associs au Timer permettent de configurer les diffrents modes dcrits prcdemment.
Les timers du PIC16F877.
Le Pic16F877 comporte trois timers qui sont :
* le timer 0 qui est un compteur sur 8 bits dont on peut choisir le front de d#clenchement, le
rapport de division et l&horloge interne ou externe
-
8/13/2019 uC16F877
24/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 24/37
le timer 1 qui est un compteur sur 16 bits dont on peut choisir le fonctionnement enmode comptage ou en mode temporisateur.
-
8/13/2019 uC16F877
25/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 25/37
le timer 2 qui est un compteur sur 8 bits
-
8/13/2019 uC16F877
26/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 26/37
Le module capture comparaison CCP1/2
qui permet entre autre associ#au timer 2 de g#n#rer des signaux PWM ou MLI (modulation en
largeur d&impulsion).
-
8/13/2019 uC16F877
27/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 27/37
mode capture
mode comparaison
-
8/13/2019 uC16F877
28/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 28/37
mode pwm
-
8/13/2019 uC16F877
29/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 29/37
-
8/13/2019 uC16F877
30/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 30/37
2.8 Le chien de garde.Ce dispositif est un syst-me anti-plantage du microcontr'leur. Il s#assure qu#il n#y ait pasd'excution prolongd#une m)me suite d#instruction.
Un compteur prchargeable se dcrmente rguli-re au rythme de la frquence d#horloge.Si aucun prchargement n#est effectu avant qu#il n#atteigne la valeur 001 un Reset estgnrrelan3ant ainsi le microcontr'leur. Il faut donc penser *prcharger rguli-rement cechien de garde par programme lorsqu #il est activ.
Le chien de garde. Du PIC16F877
2.9 Les signaux d$horloge.Le signal d#horloge permet de cadencer le fonctionnement du microcontr'leur. Ce dernier int-gregnralement une porte Trigger de Schmitt afin de raliser un oscillateur. Pour l#obtenir on place un quartzentre les deux broches 0OscIn1et 0OscOut1comme l#indique le schma suivant :
OSCin
OSCout
Q1
8MHzC1
22pF
C222pF
11 2
Microcontrleur
-
8/13/2019 uC16F877
31/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 31/37
2.10Les Particularits du PIC16F877
a) Le choix de configuration
On trouve dans cette configuration des choix concernant la protection des pages de m#moire
programme, de data EEPROM, de validation du chien de garde (watchdog), de s#lection du type
d&oscillateur pour le circuit d&horloge, de configuration du mode de RESET
-
8/13/2019 uC16F877
32/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 32/37
b) Le reset
Il existe diffrentes situation pouvant entra$ner un reset du circuit : Power on reset: la tension d#alimentation descend en dessous du seuil de 1,2 *
1,7v. Brown on reset : la tension d#alimentation reste vers un niveau de 4 v pendant un
temps assez long Watcdog reset : action du chien de garde MCLR/ activ:action sur l#entre MCLR
Le reset initialise les diffrents contenus des registres concerns. (voir doc technique)
-
8/13/2019 uC16F877
33/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 33/37
c) L-horloge
-
8/13/2019 uC16F877
34/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 34/37
3 Mode de fonctionnement
Le microprocesseur excute squentiellement les instructions codes en binaire etprsentent dans la mmoire programme. L#initialisation de cette squence peut se faire de
diff
rentes mani-
res selon le mode de fonctionnement.
3 Le fonctionnement en interruptionsLe microcontr'leur, dans son environnement, est destin * traiter des informations en0 temps rel 1. L#application est couple au monde extrieur, par l#change frquent demessages et de signaux *des instants prvus. Il est dans l #obligation de changer d #tat enfonction des priorits relatives de l#opration en cours et de celle qui lui est demand. Ilinterrompt ou non le droulement normal du programme en fonction d #une demandeexterne.
Quelque soit l#entre d#interruption active, le microprocesseur ralise des t;ches
identiques :- dans tout les cas, le programme principal est interrompu ;- le processeur doit sauvegarder le contenu du PC dans la pile ;- le processeur excute une squence privilgie, reflet du type de traitement d #interruption
- la prise en compte d#une interruption ne se fait jamais pendant l #excution d#uneinstruction.
Les interruptions du PIC16F877
-
8/13/2019 uC16F877
35/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 35/37
En ce qui concerne le PIC 16F877, les interruptions peuvent provenir soit d #une ligne deport configure comme telle, soit par les timers en fi de comptage, soit par le CAN poursignaler la fin de conversion, soit lors d #vnements de transmissions sur les diffrentsinterfaces et liaison sries.
3 2 Instructions et modes d$adressages.Les instructions contenues dans la mmoire programme sont une suite de mots binaires dcods puis excutspar le microprocesseur, appele langage machine. Ces codes sont difficilement comprhensibles par leprogrammateur. C#est la raison pour laquelle ils sont traduits en diffrents mots faisant partis du langageassembleur. Le codage d#une instruction s#effectue de la fa3on suivante :
LDI A,0FFh
Code opration
Oprandes
Langage machine Langage assembleur
17 FF
Code opration
Oprandes
Adresse
08E1 LABEL
Les modes d#adressages sont les diffrents moyens qui permettent au microprocesseur d#accder *une oprandeen vue de tester ou de modifier le contenu d#un registre ou d#une mmoire.
Mode d-adressage inhrent ou implicite.
L#adressage inhrent concerne les instructions qui ne comportent pas d#oprande, cette derni-re tantimplicite. Il s#agit gnralement des oprations de mise *0 et d#incrmentation ou de dcalage de bits
Mode d-adressage immdiat.
Ce mode d#adressage permet de charger les registres internes du microprocesseur directement avec la valeurde l#oprande.
Mode d-adressage direct.
Dans ce mode d#adressage l#oprande correspond *une adresse o2est situe la donne de l#opration .
Mode d-adressage indexou indirect.
Ce mode d#adressage s#applique aux registres d#index. Ces derniers contiennent une adresse mmoire danslaquelle est place la donne de l#opration.
Mode d-adressage relatif.
Ce mode d#adressage est rserv pour les instructions de rupture de squence conditionnel. La conditionprovient gnralement du rsultat de l#opration prcdente (rsultat nul, ayant entra$nune retenue ...) o2de l#tat d#un bit.
Mode d-adressage tendu.
Ce mode d#adressage permet d#effectudes ruptures de squence sans condition afin d#atteindre une adressenon successive dans la mmoire programme.
-
8/13/2019 uC16F877
36/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
%C16F877.doc 36/37
3.3 Les Instructions du PIC16F877.
-
8/13/2019 uC16F877
37/37
Gnie Electronique#2ime ann#e de formation Traitement programmde l'information - 6
4 Structure d$un programme.
La saisie d#un programme, que 3a soit en langage assembleur ouvolu, doit suivre la structure suivante.
1- Directives d'assemblage ou de
2- Dclaration des constantes
3- Dclaration des variables
4- Sous-programmes
compilation
5- Programme principal
6- Programme d'interruption
5 Exemples de microcontr*leurs.
REFERENCE
FABRICANT
VITESSE
RAM
ROM/
EPROM
/FLASH
EEPROM
E/SLOGIQUES
TIMER
ENTREES
ANALOGIQUES
PARTICULARITE
8051 Intel 12 Mhz 128 o 4 Ko X 32 2 016C71 Microchip 20 Mhz 36 o 1Kx14 X 13 1 4 RISC
6805 S2 Motorola 4 MHz 64 1 Ko X 16 2 868HC11 A1 Motorola 8 MHz 256 o X 512 22 1 8 Etendu
AT90S 8515 Atmel 20 MHz 512 o 4 Ko 512 32 3 8 RISCST 6265 Thomson 8 MHz 128 o 4 Ko 64 o 21 2 13
PIC 16F8XX Microchip 20 MHz 128 o 8Kx14 128o 3 5 RISCSX28AC SCENIX 20MHZ