Documente Academic
Documente Profesional
Documente Cultură
INDUSTRIELLE
Filière ingénieur
Conception et Production Industrielles « FI CPI »
Semestre 2
GROUPE : 1
1
I. Introduction
1. Eléments essentiels du PIC 16F887
Parmi les éléments essentiels du PIC16F887, on peut citer :
Mémoire programme de type EEPROM flash de 8K mots de 14 bits,
Mémoire EEPROM de 256 octets,
RAM donnée de 368 octets,
5 ports d'entrée sortie (8 bits), PORTA, PORTB, PORTC, PORTD,
PORTE (4 bits),
Convertisseur Analogiques numériques 10 bits à 14 canaux,
USART, Port série universel, mode asynchrone (RS232) et mode
synchrone,
MSSP, Port série synchrone supportant I2C,
Trois TIMERS TMR0, TMR1 et TMR2
Deux modules de comparaison et Capture CCP1 et CCP,
Un chien de garde,
13 sources d'interruption,
Générateur d'horloge, à quartz (jusqu’ à 20 MHz) ou à Oscillateur RC
Protection de code,
Fonctionnement en mode sleep pour réduction de la consommation,
Programmation in-situ ICSP (In Circuit Serial Programming) 12V ou 5V,
Possibilité aux applications utilisateur d’accéder la mémoire programme,
Tension de fonctionnement de 2 à 5V,
Jeux de 35 instructions
2
Figure 1 : Les éléments constitutifs du PIC 16F887
2. Brochage du 16F887
3
Figure 2: PIC16F882 SPECIAL FUNCTION REGISTERS
4
Figure 3: PIC16F884/PIC16F887 BLOCK DIAGRAM
5
Figure 4: PROGRAM MEMORY MAP AND STACK FOR THE
PIC16F886 / PIC16F887
6
II. Manipulation
Logiciels utilisés :
MPLab
Isis
Maquette NX-887
a. Le montage du circuit
Schéma électrique avec PIC16F887
7
a. L’organigramme du programme
Début
Accès au bank 0
Accès au bank 1
Accès au bank 3
Accès au bank 0
Temporisation 0.5s
OUI NON
Test si le carry égale à 0
8
b. L’organigramme de l’interruption
Interruption RB0/INT
NON
Test si RB0 égale à 0
BP n’est pas déclenché
OUI
NON
BP est pas déclenché Test si RB0 égale à 1
Retour d’interruption
9
c. Le programme en langage assembleur
10
11
12
d. Simulation avec ISIS-Proteus
13
a. Le montage du circuit
b. L’organigramme du programme
Début
Accès au bank 0
Accès au bank 1
Accès au bank 3
Accès au bank 0
14
Activation de l’interruption générale
et l’interruption de RB0/INT
Temporisation 0.5s
Temporisation 0.5 s
Mettre à 1 RD6
Temporisation 0.5 s
NON
Rotation des bits du port D avec le
carry à gauche grâce à l’instruction
RRF
OUI
Test si carry égale à1
15
Le programme admet le même organigramme d’interruption
16
17
18
19
d. Simulation avec ISIS-Proteus
20
Afficheur à 7 segments :
Clavier à 12 touches :
21
a. Le montage du circuit
b. L’organigramme du programme
Début
Accès au bank 0
Accès au bank 1
NON
Mettre à 1 les bits RD0, RD2, RD3,
RD4, RD5, RD6
OUI
NON
Mettre à 1 les bits RD0, RD3, RD6
OUI
NON
Mettre à 1 les bits RD0, RD1, RD3, NON
RD4, RD6 OUI
NON
Mettre à 1 les bits RD0, RD2, RD3,
RD5, RD6
23
OUI
NON
Mettre à 1 les bits RD0, RD1, RD2,
RD3, RD4, RD5
OUI
NON
Mettre à 1 les bits RD1, RD2, RD5,
RD6
OUI
NON
Mettre à 1 les bits RD0, RD1, RD5,
RD6 24
c. Le programme en langage assembleur
25
26
27
28
d. Simulation avec ISIS-Proteus
III. Vérification
PICkit est une famille de programmeurs pour microcontrôleur
PIC de Microchip Technology. Ils permettent de programmer les
microcontrôleurs et de déboguer les programmes in situ, ainsi que de
programmer certaines mémoires EEPROM.
On utilise le logiciel PICkit 2 pour importer le programme qui va être chargé
dans la maquette NX-887 à fin de vérifier le programme.
29
IV. Conclusion
30