You are on page 1of 12

PIC16F887 Le PIC16F887 est un produit bien connu par Microchip.

Il dispose de tous les composants qui microcontrleurs modernes ont normalement. Pour ses prix bas, large gamme d'application, de haute qual-bilit et de facilit d'accs, c'est une solution idale dans les applications telles que le contrle de procds dans l'industrie, les dispositifs de commande de machine, les diffrentes valeurs etc.. Certaines de ses principales caractristiques sont numres ci-dessous.

LES CARACTRISTIQUES DE BASE PIC16F887 :


L'architecture RISC o seulement 35 les instructions pour apprendre o tout seul cycle instructions sauf les branches
Frquence de fonctionnement 0-20 MHz Prcision oscillateur interne
o calibr en usine o gamme de frquence slectionnable par logiciel de 8MHz 31khz
Tension d'alimentation 2.0-5.5V

o consommation : 220uA (2.0V, 4 MHz), 11uA (2.0 V, 32kHz) 50nA

(mode veille)
Le Mode veille d'conomie d'nergie Brown-out Reset (BOR) avec option de contrle de logiciel broches d'entre/sortie 35

o source/descente actuel lev entranement direct de LED o logiciel et la rsistance de pull-up individuellement programmables o broche o interruption-sur-Change
8K de mmoire ROM en technologie FLASH

o puce peut tre reprogramm jusqu' 100.000 fois


La possibilit de programmation srie en Circuit

o puce peut tre programm mme incorpor dans l'appareil cible


mmoire d'EEPROM de 256 octets

o o donnes peut tre crites plus de 1.000.000 fois


mmoire de 368 octets de RAM Convertisseur A/D :

o 14 canaux o rsolution de 10 bits


3 indpendant tempo/compteurs Minuterie - chien de garde

Module de comparateur analogique avec

o Deux comparateurs analogiques o rfrence de tension fixe (0.6V) o rfrence de tension sur puce Programmable
PWM sortie commande de direction Module USART amlior

o supporte RS-485, RS-232 et LIN2.0 o Dtection automatique de dbit


Master Synchronous Serial Port (MSSP)

o supporte le mode SPI et I2C

DESCRIPTION DE BROCHAGE :
La plupart des broches du microcontrleur PIC16F887 sont multifonctionnels comme on le voit sur la figure ci-dessus. Par exemple, l'indicateur RA3/AN3/Vref + / C1IN + pour la cinquime broche du microcontrleur indique qu'il a les fonctions suivantes : RA3 Port une troisime entre/sortie numrique Troisime AN3 entre analogique Rfrence de tension Vrf + positif

Comparateur C1 C1IN + entre positive Ces fonctionnalits de pin sont trs utile car il rend le paquet microcontrleur plus compact sans affecter son fonctionnement. Ces diverses fonctions de broche ne peuvent pas tre utilises simultanment, mais peuvent tre modifies tout moment au cours de l'opration. Les tableaux suivants mentionnent le microcontrleur PDIP 40.

nom RE3/MCLR/Vpp

Numro (DIP40) 1

Description RE3 MCLR


Rinitialiser le code pin. Niveau logique bas sur cette broche rinitialise le microcontrleur Tension de programmation Usage gnral I/O port A A/N entre du canal 0. Stand by mode dsactivation d'entre Comparateur C1 negetive d'entre ou C2

Vpp RA0/AN0/ULPWU/C12IN0- 2 RA0 AN0 ULPWU C12IN0RA1/AN1/C12IN13 RA1 AN1 C12IN1RA2/AN2/Vref/CVref/C2IN+ 4 RA2 AN2 Vref

Usage gnral I/O port A A/N canal 1 Comparateur C1 negetive d'entre ou C2

Usage gnral I/O port A A/N canal 2 Entre de tension ngative A/D de rfrence

CVref C2IN+ RA3/AN3/Vref+/C1IN+ 5 RA3 AN3 Vref C1IN+ RA4/T0CKI/C1OUT 6 RA4 TOCKI C1OUT RA5/AN4/SS/C2OUT 7 RA5 AN4 SS C2OUT RE0/AN5 8 RE0 AN5 RE1/AN6 9 RE1 AN6 RE2/AN7 10 RE2 AN7

Sortie de rfrence tension comparateur Entre positive comparateur C2 Usage gnral I/O port A A/N canal 3

de de

Entre de tension ngative A/D de rfrence Entre positive comparateur C1 Usage gnral I/O port A Temps de l'horloge d'entre Sortie de comparateur de C1 Usage gnral I/O port A A/N canal 4 Entre de module SPI (slection de l'esclave). Sortie de comparateur de C2 Usage gnral I/O port E A/N canal 5 Usage gnral I/O port E A/N canal 6 Usage gnral I/O port E A/N canal 7 de

Vdd Vss RA7/OSC1/CLKIN

11 12 13

+ RA7 OSC1 CLKIN

alimentation positive Masse (GND). Usage gnral I/O port A Oscillateur quartz d'entre Sortie d'horloge externe. Oscillateur quartz de sortie FOSC/4 sorties Usage gnral I/O port A Usage gnral I/O port C Temps de sortie oscillateur T1 Horloge T1 d'entre Usage gnral I/O port C Temps dentre oscillateur T1 CCP1 et PWM1 module I/O Usage gnral I/O port C PWM module Dentre CCP1 et PWM1 module I/O Usage gnral I/O port C Module MSSP l'horloge I/O en mode SPI

RA6/OSC2/CLKOUT

14

OSC2 CLKO RA6

RC0/T1OSO/T1CKI

15

RC0 T1OSO T1CKI

RC1/T1OSO/T1CKI

16

RC1 T1OSI CCP2

RC2/P1A/CCP1

17

RC2 P1A CCP1

RC3/SCK/SCL

18

RC3 SCK

SCL RD0 RD1 RD2 RD3 RC4/SDI/SDA 19 20 21 22 23 RD0 RD1 RD2 RD3 RC4 SDI SDA RC5/SDO 24 RC5 SDO RC6/TX/CK 25 RC6 TX CK RC7/RX/DT 26 RC7 RX DT RD4 RD5/P1B 27 28 RD4 RD5 P1B

Module MSSP l'horloge I/O en mode I2C Usage gnral I/O port D Usage gnral I/O port D Usage gnral I/O port D Usage gnral I/O port D Usage gnral I/O port A MSSP module saisie des donnes en mode SPI MSSP module des donnes en mode I2C Usage gnral I/O port C MSSP module sortie donnes en mode SPI Usage gnral I/O port C Sortie asynchrone USART Temps asynchrone USART Usage gnral I/O port C Ente asynchrone USART Les donnes USART asynchrone des

Usage gnral I/O port D Usage gnral I/O port D

Sortie PWM

RD6/P1C

29

RD6 P1C

Usage gnral I/O port D

Sortie PWM
Usage gnral I/O port D

RD7/P1D

30

RD7 P1D

Sortie PWM
Masse (GND) alimentation positive Usage gnral I/O port B A/N canal 12

Vss Vdd RB0/AN12/INT

31 32 33

+ RB0 AN12 INT

RB1/AN10/C12INT3-

34

RB1 AN10 C12INT3-

Usage gnral I/O port B A/N canal 10 Comparateur C1 negetive d'entre ou C2

RB2/AN8

35

RB2 AN8

Usage gnral I/O port B A/N canal 8 Usage gnral I/O port B A/N canal 9 Programmation enable code pin Comparateur C1 negetive d'entre ou C2

RB3/AN9/PGM/C12IN2-

36

RB3 AN9 PGM C12IN2-

RB4/AN11

37

RB4

Usage gnral I/O port B

AN11 RB5/AN13/T1G 38 RB5 AN13 T1G RB6/ICSPCLK 39 RB6 ICSPCLK RB7/ICSPDAT 40 RB7 ICSPDAT

A/N canal 11 Usage gnral I/O port B A/N canal 13

Temps dentre

T1

externe

Usage gnral I/O port B Horloge de programmation srie Usage gnral I/O port B Programmation enable code pin

UNIT DE PROCESSEUR CENTRAL (CPU) :


Nous n'allons pas vous ennuyer avec le fonctionnement de la CPU ce stade. Toutefois, on sera juste dire que le CPU est fabriqu avec la technologie RISC comme c'est un facteur important pour dcider quel microcontrleur utiliser. RISC signifie rduit Instruction Set Computer, qui donne les PIC16F877 deux grands avantages : Le processeur ne reconnat que 35 instructions simples. Pour ne citer qu'afin de programmer les autres microcontrleurs en langage d'assemblage, il est ncessaire de connatre plus de 200 instructions par cur. La dure d'excution est le mme pour presque toutes les instructions et dure pendant 4 cycles d'horloge. La frquence de l'oscillateur est stabilise par un cristal de quartz. La dure d'excution des instructions de saut et de la direction gnrale est de 2 cycles d'horloge. Cela signifie que si la vitesse de fonctionnement du microcontrleur est 20MHz, le temps d'excution de chaque instruction sera 200nS, c.--d. le programme excutera les 5 millions d'instructions par seconde !

MMOIRE :

Le PIC16F887 dispose de trois types de mmoire ROM, RAM et EEPROM. Chacun d'eux sparment discutera puisque chacun a organisation, des caractristiques et des fonctions spcifiques.

MMOIRE ROM :
Mmoire ROM permet d'enregistrer en permanence le programme en cours d'excution. C'est pourquoi on l'appelle souvent programmer la mmoire . Le PIC16F887 a 8 Ko de ROM (8192 emplacements au total). Puisque la mmoire ROM est fabrique avec la technologie FLASH, son contenu peut tre modifi en fournissant une tension de programmation spciale (13V). Cependant, il n'est pas ncessaire de l'expliquer en dtail comme tant automatiquement ralise au moyen d'un programme spcial sur le PC et un dispositif lectronique simple, appel le programmeur.

MMOIRE EEPROM :
Semblable la mmoire de programme, le contenu de l'EEPROM est dfinitivement sauv, mme quand le courant est hors tension. Toutefois, contrairement la ROM, le contenu de l'EEPROM peut tre modifi au cours de l'opration du microcontrleur. C'est pourquoi cette mmoire (256 emplacements) est parfaite pour l'enregistrement de certains des rsultats cr et utilis lors de l'opration en permanence.

MMOIRE RAM :
Il s'agit de la troisime et la partie la plus complexe de la mmoire du microcontrleur. Dans ce cas, il se compose de deux parties : registres usage gnral et registres fonction spciale (SFR). Tous ces registres sont diviss en quatre blocs de mmoire pour tre expliqu plus loin dans le chapitre. Mme si les deux groupes de registres sont dsactives lorsque l'alimentation s'teint, et mme si ils sont fabriqus de la mme manire et Loi de la mme manire, leurs fonctions n'ont pas en commun beaucoup de choses.

REGISTRES USAGE GNRAL :


Registres usage gnral sont utiliss pour stocker des donnes temporaires et rsultats crs au cours de l'opration. Par exemple, si le programme effectue le comptage (produits sur la chane de montage), il est

ncessaire de disposer d'un registre qui est synonyme de ce que nous avons dans la vie quotidienne appellent somme . tant donn que le microcontrleur n'est pas du tout cratif, il est ncessaire de spcifier l'adresse de certains Registre d'usage gnral et l'assigner cette fonction. Un programme simple pour incrmenter la valeur de ce registre par 1, aprs que chaque produit passe par un capteur, devrait tre cr. Maintenant, le microcontrleur peut excuter le programme comme il sait quoi et o la somme incrmenter est. De mme, chaque variable de programme doit tre prattribu certains des registres universel. REGISTRES FONCTION SPCIALE (SFR) : Spcial-fonction registres sont galement des emplacements de mmoire RAM, mais la diffrence des registres usage gnral, leur but est prdtermine pendant les processus de fabrication et ne peut pas tre modifi. tant donn que leurs morceaux est raccords des circuits particuliers sur la puce (convertisseur A/N, module de communication srie, etc.), toute modification de leur contenu affecte directement le fonctionnement du microcontrleur ou certains de ses circuits. Par exemple, le registre ADCON0 contrle le fonctionnement du convertisseur A/N. En changeant ses bits on dtermine quel port pin est tre configurs en tant que convertisseur d'entre, le moment de commencer la conversion est ainsi que la vitesse de conversion. Une autre caractristique de ces lieux de mmoire, c'est qu'ils ont leurs noms (registres et leurs bits), ce qui simplifie considrablement le processus d'criture d'un programme. tant donn que les langages de programmation haut niveau peuvent utiliser la liste de tous les registres avec leurs adresses exactes, il suffit de spcifier le nom d'un registre pour lire ou modifier son contenu.

BANCS DE MMOIRE RAM :


La mmoire RAM est partitionne en quatre banques. Avant d'accder tout registre durant le programme d'criture (pour lire ou modifier son contenu), il est ncessaire de choisir la Banque qui contient ce registre. Deux bits du Registre STATUS sont utiliss pour la slection de la Banque qui sera discut plus tard. Afin de simplifier l'opration, les SFRs plus couramment utiliss ont la mme adresse dans toutes les banques, qui leur permet d'tre facilement accessible.

You might also like