16FXXX
16FXXX
MASTER
Présenté par :
BERNAOUI Sif Eddine
Soutenu le : 10 Juin 2012
MASTER
Cachet et signature
اﻟﺠﻤﮭﻮرﯾﺔ اﻟﺠﺰاﺋﺮﯾﺔ اﻟﺪﯾﻤﻘﺮاﻃﯿﺔ اﻟﺸﻌﺒﯿﺔ
République Algérienne Démocratique et Populaire
وزارة اﻟﺘﻌﻠﯿﻢ اﻟﻌﺎﻟﻲ و اﻟﺒﺤﺚ اﻟﻌﻠﻤﻲ
Ministère de l’enseignement Supérieur et de la Recherche scientifique
RESUME
Le microcontrôleur est d’une haute importance aujourd’hui dans
notre vie comme des étudiants en électronique ou des électroniciens
amateur ou professionnel, car on le trouve dans les différents domaines
industriels et il soit une source pour les projets de fin d’étude.
Notre projet a pour but d’étudier et de réaliser un kit de
développement d’application à base de pic de la famille 16fxxx et dans
notre projet on’ a choisit le pic 16F877, et on’ a essayer de réaliser et de
simuler des applications avec ce pic et d’autres modules et on’ a
programmée le pic a avec le logiciel Micro C, afin d’obtenir des bons
résultats et on ’a programmée le pic en circuit sans l’enlever a partir d’un
programmateur de pic en circuit.
Remerciment
Remerciement
Dédicace
Au nom d’Allah, tout Miséricordieux le très Miséricordieux
Je viens de dédier
Le fruit de modeste effort à :
Cette qui était la source intarissable de tendresse, dans le paradis est au dessus
de ses pied, cette qui possède tout mon cœur « ma chère mère »
Qui je lui souhaite le guérisson plus vite inchaalah.
Celui qui fait sons mieux pour moi mon suprême idéal
« Mon père »
A mon frère Adnane et sa petite famille et Walid et Iman et Amira et
Khouloud et Chahinaz ce qui présentent mon appui dans la vie mes chers frères
et mes sœurs et
Toute ma famille « BERNAOUI»
Et mes amis
« Hammadi,Mounir,Moussa,Jamel,Oussama,Tarek,Malek,Dassi,
Salah ,Youcef,Bilel,Walid»
« A la promotion 2012 »
Sommaire:
Introduction générale……………………………………………………………………01
Chapitre I:Présensentation de microcontrôleur 16F877:
I. Introduction………………………………………………………………...………….02
I.1. Définition de microcontrôleur………………………………………………………...02
I.2.Les avantages de microcontrôleur……………………………………………….........02
I.3. Le choix d’un microcontrôleur ……………………………………………….………03
I.4. Définition de pic……………………………………………………………………....04
I.4.1. Structure minimale d'un PIC……………………………………………...............04
I.4.2. Les différentes familles des PIC ....……………………………………….….......05
I.4.3. Identification du PIC ………………………………………………....………......05
I.5.Pic 16F877……………………………………………………………………………..06
I.5.1. Identification de Pic 16F877……………………………………………………...06
I.5.2. Les particularités électrique……………………………………………………....08
I.5.3. Les PINS de 16F877 ……………………………………………………………..10
I.6. Les différentes mémoires de pic 16F877……………………………………………...12
I.6.1. La mémoire FLASH (programme) .. ……………………………………………..12
I.6.2. La mémoire RAM…………………………………………………………………13
I.6.3. La mémoire EPROM interne ……………………………………………………..13
I.7.Les ports entrée/sortie de Pic 16F877………………………………………………....13
I.7.a. Le port A…………………………………………………………………………..13
I.7.b. le PORT B…………………………………………………………………………14
I.7.c. Le PORT C ………………………………………………………………………..14
I.7.d. Le PORT D ……………………………………………………………………….15
I.7.e. Le PORT E ………………………………………………………………………..15
I.8. Les Timers …………………………………………………………………….……...15
I.9. L’unité centrale ……………………………………………………..…………….…..16
I.9.1. Organisation mémoire………………………………………..…………….……..16
I.10.Les interruptions……………………………………………………………..……….16
I.10.1. Présentation………………………………………………………………..…...16
I.10.2.Fonctionnement……………………………………………………………..…..17
Sommaire
IV.7.3.commande de RS232…………………………………………………………….62
IV.8. Conclusion…………………………………………………………………………..63
Conclusion Générale………………………………………………………………………64
Bibliographie……………………………………………………………………………...65
Annexe……………………………………………………………………………………67
Introduction Génerale
Introduction Générale:
Un kit de développement à base du PIC 16Fxxx est un système qui associe un
ensemble des fonctions (Prog., RS232) gérées par un microcontrôleur de la famille PIC
16Fxxx.
Alors le but de notre projet est d'étudier et réaliser une Kit de développement, autour
d’un PIC, qui permette de manipuler les applications de base et de réaliser des études des
systèmes électroniques basées sur le microcontrôleur.
Le kit doit permettre de programmer le microcontrôleur qu’elle l’associe et de
1
chaPItRE I :
PREsEntatIon dE
PIc 16f877
Chapitre 1: Présentation de microcontrôleur 16F877.
I. Introduction:
Ce chapitre est consacré à la présentation du microcontrôleur tout en illustrant ces
différentes caractéristiques afin de mieux l’exploiter.
À cause de la difficulté ou la complexité en terme mieux de la réalisation pratique de
certaines fonctions de traitement d'informations complexe à base les circuits classiques, tels
que les circuits logiques et les circuits analogiques.
Il devient besoin d’un objet électronique qui peut faire ces fonctions rapidement,
efficacement et avec le plus petit volume possible, c'est-à-dire un circuit intégré et ce circuit
est le microcontrôleur.
I.1. Définition de microcontrôleur:[5]
Un microcontrôleur se présente comme étant une unité de traitement de l’information de
type microprocesseur contenant tous les composants d’un système informatique, à savoir
microprocesseur, des mémoires et des périphériques (ports, timers, convertisseurs…). Chaque
fabricant a sa ou ses familles de microcontrôleurs.
Une famille se caractérise par un noyau commun (le microprocesseur, le jeu
d’instruction…). Ainsi les fabricants peuvent présenter un grand nombre de pins qui
s’adaptent plus au moins à certaines tâches. Mais un programmeur connaissant une famille
n’a pas besoin d’apprendre à utiliser chaque membre, il lui faut connaître juste ces différences
par rapport au père de la famille. Ces différences sont souvent, la taille des mémoires, la
présence ou l’absence des périphériques et leurs nombres
I.2. Les avantages du microcontrôleur:
L’utilisation des microcontrôleurs pour les circuits programmables à plusieurs points
forts et bien réels. Il suffit pour s’en persuader, d’examiner la spectaculaire évolution de
l’offre des fabricants de circuits intégrés en ce domaine depuis quelques années.
Nous allons voir que le nombre d’entre eux découle du simple sens.
- Tout d’abord, un microcontrôleur intègre dans un seul et même boîtier ce qui, avant
nécessitait une dizaine d’éléments séparés. Il résulte donc une diminution évidente de
l’encombrement de matériel et de circuit imprimé
- Cette intégration a aussi comme conséquence immédiate de simplifier le tracé du circuit
imprimé puisqu’il n’est plus nécessaire de véhiculer des bus d’adresses et de donnée d’un
composant à un autre.
2
Chapitre 1: Présentation de microcontrôleur 16F877.
3
Chapitre 1: Présentation de microcontrôleur 16F877.
Peut-être est-il bon de ne pas acheter une voiture avant d'avoir son permis et, avant de
traiter de programmation et d’outils de développement, vaut-il mieux définir clairement ce
dont on va parler.
Un microcontrôleur est donc un circuit intégré qui contient en interne, c’est-à-dire dans
un seul et même boîtier, l’équivalent de la structure complète d’un micro-ordinateur.
Et donc, son architecture interne se contient:
*UAL (Unité Arithmétique et Logique).
*Port d’E/S.
*Interfaces de communications série.
*Interfaces d’E/S analogique.
* Timers et horloge temps réels.
I.4. Définition de pic
Les microcontrôleurs sont aujourd’hui implantés dans la plupart des applications de
grand public ou professionnelles, il existe plusieurs familles. La société Américaine
Microchip Technologie a mis au point dans les années 90 un microcontrôleur CMOS : le PIC
(Periphirol Interface). Ce composant encore très utilisé à l’heure actuelle, est un compromis
entre simplicité d’emploi, rapidité et prix de revient
I.4.1. Structure minimale d'un PIC: [9]
Les PICs font partie de la famille des microcontrôleurs. Selon le type de PIC utilisé, on
trouvera en interne un certain nombre de périphériques avec des caractéristiques distinctes,
ainsi que des capacités mémoire différentes (RAM, EEPROM, mémoire programme FLACH
ou EPROM ou OTP).
Un PIC est généralement constitué :
o Une mémoire programme de type EEPROM flash dont laquelle on trouve le code binaire
des instructions que doit réaliser le microcontrôleur .
o Une RAM donnée de 368 octets (Random Access Memory) pour sauvegarder
temporairement des données.
o Cinq ports d’entrée sortie, A (6 bits), B (8 bits), C (8 bits), D (8 bits) et E(3bits) pour
pouvoir dialoguer avec l’extérieur du microcontrôleur.
o Convertisseur analogique numérique
o USART, port série universel, mode asynchrone (RS 232) et mode asynchrone
o SSP, port série synchrone supportant I2C
4
Chapitre 1: Présentation de microcontrôleur 16F877.
Toutes les PICs Mid-Range ont un jeu de 35 instructions, stockent chaque instruction
dans un seul mot de programme, et exécutent chaque instruction (sauf les sauts) en un cycle.
On atteint donc des très grandes vitesses, et les instructions sont de plus très rapidement
assimilées.
I.4.3. Identification du PIC :[4]
Pour identifier une PIC, on utilise simplement son numéro.
Les 2 premiers chiffres indiquent la catégorie de la PIC, 16 indique une PIC Mid-
Range .
Vient ensuite parfois une lettre L: Celle-ci indique que la PIC peut fonctionner avec une
plage de tension beaucoup plus tolérante.
Ensuite, on trouve:
C indique que la mémoire programme est une EPROM ou plus rarement une
EEPROM.
CR pour indiquer une mémoire de type ROM.
5
Chapitre 1: Présentation de microcontrôleur 16F877.
La PIC peut recevoir une fréquence d’horloge maximale indiquée sur les boîtiers(XX )
par exemple -04 pour une 4MHz.
Les PICs sont des composants STATIQUES, c’est à dire que la fréquence d’horloge
peut être abaissée jusqu’à l’arrêt complet sans perte de données et sans disfonctionnement.
Ceci par opposition aux composants DYNAMIQUE, donc la fréquence d’horloge doit
rester dans des limites précises.
Et voici le tableau I.1.qui montre les différences entre quelques PICs.
Mem RAM EEPROM Fréquence E/S Boitier
prog en en max en
octets octets MHZ
12C508 512x12 25 - 4 6 8broches
16C72A 2048x14 128 - 20 22 28broches
16F84 1024x14 68 64 20 13 18broches
16F628 2048x14 224 128 20 16 18broches
16F876 8192x14 368 256 20 22 28broches
16F877 8192x14 368 256 20 33 40broches
6
Chapitre 1: Présentation de microcontrôleur 16F877.
7
Chapitre 1: Présentation de microcontrôleur 16F877.
Ou alors la figure. I.2.dans la page suivante qui nous présente un schéma fonctionnel simplifié
de pic 16F877.
8
Chapitre 1: Présentation de microcontrôleur 16F877.
9
Chapitre 1: Présentation de microcontrôleur 16F877.
10
Chapitre 1: Présentation de microcontrôleur 16F877.
MCLR:
Cette broche sert à initialiser le microcontrôleur .
POR .
EXTERNAL RESET
WDT
BOR
POR: (POWER ON RESET) Mise sous tension .
11
Chapitre 1: Présentation de microcontrôleur 16F877.
12
Chapitre 1: Présentation de microcontrôleur 16F877.
13
Chapitre 1: Présentation de microcontrôleur 16F877.
I.7.c. Le PORT C :
C’est un port ( voir figure I.6) out ce qu’il a de plus classique, or qu’il a deux pins qu’on
utilisera plus tard dans la communication série avec le PC à travers (TX et RX) (pin25et pin
26).
14
Chapitre 1: Présentation de microcontrôleur 16F877.
I.7.d. Le PORT D :
Ce port (voir figure I.7) fonctionne de façon identique aux autres, dans son mode de
fonctionnement général. Le registre TRISD comportera donc les 8bits de direction, pendant
que le registre port D correspond aux pins I/O concernés. D’où les 8 pins I/O, en mode entrée,
sont du type <trigger de Schmitt>.
I.7.e. Le PORT E :
Ce port (figure. I.8) n’est présent que sur les PIC 16F877. Il ne comporte que 3 pins
RE0à RE2, mais, contrairement aux ports, les bits non concernés de TRISE sont, cette fois,
implantés pour d’autres fonctions. Les pins REX peuvent également être utilisés comme pins
d’entrées analogiques. D’ou le registre ADCON1 qui détermine si ce port est utilise comme
port I/O ou comme port analogique.
15
Chapitre 1: Présentation de microcontrôleur 16F877.
16
Chapitre 1: Présentation de microcontrôleur 16F877.
l’adresse 0x04. Toute interruption provoquera le saut du programme vers cette adresse.
Toutes les sources d’interruption arrivant à cette adresse, si le programmeur utilise
plusieurs sources d’interruptions, il lui faudra déterminer lui-même laquelle il est en train de
traiter.
17
Chapitre 1: Présentation de microcontrôleur 16F877.
contenu du PC, qui servira à connaître l’adresse du retour de l’interruption. C’est donc à
l’utilisateur de se charger des sauvegardes.
Le contenu du PC est sauvé sur la pile interne (8 niveaux). Donc, si vous utilisez des
interruptions, vous ne disposez plus que de 7 niveaux d’imbrication pour vos sous-
programmes. Moins si vous utilisez des sous-programmes dans vos interruption.
Le temps de réaction d’une interruption est calculé de la manière suivante : le cycle
courant de l'instruction est terminé, le flag d'interruption est lu au début du cycle suivant.
Celui-ci est achevé, puis le processeur s'arrête un cycle pour charger l'adresse 0x04 dans PC.
Le processeur se connecte alors à l'adresse 0x04 où il lui faudra un cycle supplémentaire pour
charger l'instruction à exécuter. Le temps mort total sera donc compris entre 3 et 4 cycles.
Une interruption ne peut pas être interrompue par une autre interruption. Les interruptions
sont donc invalidées automatiquement lors du saut à l’adresse 0x04 par l’effacement du bit
GIE (que nous allons voir).
Les interruptions sont remises en service automatiquement lors du retour de l’interruption.
L’instruction RETFIE agit donc exactement comme l’instruction RETURN, mais elle
repositionne en même temps le bit GIE.
I.11. L’oscillateur :[5][6]
L’horloge est un système qui peut être réalisée soit avec un QUARTZ(a), soit avec une
horloge extérieur(b), soit avec un circuit RC(c), dans ce dernier la stabilité du montage est
limitée. La fréquence maximale d’utilisation va dépendre de Microcontrôleur utilisé. Le
suffixe indiqué sur le boîtier donne la nature de l’horloge à utiliser et sa fréquence maximale
voir (figure .I.10).
18
Chapitre 1: Présentation de microcontrôleur 16F877.
I.11. Le convertisseur:[5]
Le principe de la conversion suit la séquence est la suivante :
- Le pic connecte le pin sur laquelle se trouve la tension à mesurer à un condensateur interne,
qui va se charger via une résistance interne jusque la tension appliquée.
Le pin est déconnecté du condensateur, et ce dernier est connecté sur le convertisseur
analogique/numérique interne.
Le temps nécessaire à la conversion est égal au temps nécessaire à la conversion d’un
bit multiplié par le nombre de bits désirés pour le résultat. Concernant notre pic, il faut savoir
qu’il nécessite, pour la conversion d’un bit, un temps nommé Tad.
Ce temps est dérivé par division d’horloge principale. Le diviseur peut prendre une
valeur de 2, 8 ou 32. Le temps de conversion Tad ne peut détendre, pour des raisons
électroniques, en dessous de 1.6 us pour les versions classiques de 16F87x, et en dessous de 6
us pour les versions LC. Donc en fonction des fréquences utilisées pour le quartz du pic, on
choisit le diviseur le plus approprié.
Voici le tableau .I.4.qui reprend les valeurs de diviseur à utiliser pour quelques
fréquences courantes du quartz et pour les PICs de type classique :
20Mhz 5Mhz 4Mhz 2Mhz 1,25Mh 333,3K
z hz
2 100ns 400ns 500ns 1µs 1,6µs 6µs
8 400ns 1,6µs 2µs 4µs 6,4µs 24µs
32 1,6µs 6,4µs 8µs 16µs 25,6µs 96µs
Osc RC 2-6µs 2-6µs 2-6µs 2-6µs 2-6µs 2-
6µs
Tableau. I.4. Valeur de diviseur pour les fréquences du quartz et le pic.
Les valeurs 400ns; 1,6µs; 2µs; 4µs; 6,4; 24µs correspondent au meilleur diviseur en
fonction de la fréquence choisie, en ce qui nous concerne puisqu’on utilise une fréquence de
4MHZ, on utilisera la valeur de 2µs dans notre programmation. Il faut à présent préciser que
le PIC nécessite un temps Tad avant le démarrage effectif de la conversion, et un temps
supplémentaire Tad à la fin de la conversion.
Résumons donc le temps nécessaire pour effectuer l’ensemble des opérations :
- On charge le condensateur interne (nécessite le temps Tacq).
- On effectue la conversion (nécessite le temps 12 * Tad).
- On doit attendre 2 * Tad avant de pouvoir recommencer une autre conversion.
19
Chapitre 1: Présentation de microcontrôleur 16F877.
20
chaPItRE II : lE
standaRd Rs-232
Chapitre II: Le standard RS-232.
II.1.Introduction:
Le port série est disponible sur presque tous les PC. Le port série est désigné par
le nom « COM ». La liaison RS232 est utilisée pour connecter le PC aux appareils
électroniques (automate, appareil de mesure, etc.). Dernièrement le port USB
commence de plus en plus à remplacer le port série.
21
Chapitre II: Le standard RS-232.
22
Chapitre II: Le standard RS-232.
Le bit 1 doit être transmis par une tension électrique compris entre -5 et -15V.
Les niveaux classiques utilisés sont +12 et-12V.
Pour le récepteur :
La tension maximale admissible sans dégâts est de+/-25V. La tension minimale
(seuil) détectables de +/-3v.
La définition de ces tensions permet une assez bonne immunité au bruit, et un
risque de transformation de bits (0->1 ou 1->0) assez faible.
II.4.2. Aspect fonctionnel:
La norme définit comment doit être constitue la jonction.
II.5. La liaison RS 232 :[1]
La liaison série aux normes RS 232 est utilisée dans tous les domaines de
l'informatique (ex : port de communication com1 et com2 des PC, permettant la
communication avec des périphériques tels que modem et souris). Elle est de type
asynchrone, c'est à dire qu'elle ne transmet pas de signal horloge.
Le schéma fonctionnel est montré dans la figure .II.1.suivante:
23
Chapitre II: Le standard RS-232.
24
Chapitre II: Le standard RS-232.
seuls certains systèmes, lents ou ayant une unité de contrôle RS232 peu performante,
fonctionnent encore uniquement dans ce mode.
25
Chapitre II: Le standard RS-232.
Bit de START : la ligne au repos est à l'état logique 1 pour indiquer qu'un mot va être
transmis la ligne passe à l'état bas avant de commencer le transfert. Ce bit permet de
synchroniser l'horloge du récepteur.
Bit de stop : après la transmission, la ligne est positionnée au repos pendant 1, 2 ou
1,5 période d'horloge selon le nombre de bits de stop.
Donnée : le bit de poids faible est envoyé en premier. La longueur du mot peut être de
7 bits (ex : caractère ASCII) ou 8 bits.
La vitesse de transmission : les différentes vitesses de transmission sont réglables à
partir de 110 bauds (bits par seconde).
Parité : le mot transmis peut être suivi ou non d'un bit de parité qui sert à détecter les
erreurs éventuelles de transmission. Il existe deux types de parité. Ce bit de parité est
généré automatiquement par l’UART de l’émetteur. A la réception on compare la
parité obtenue avec celle reçue.
a) Parité paire : le bit ajouté à la donnée est positionné de telle façon que le nombre
des états 1 soit paire sur l'ensemble donnée + bit de parité
Ex : soit la donnée 11001011 contenant 5 états 1, le bit de parité paire est positionné à
1, ramenant ainsi le nombre de 1 à 6.
b) Parité impaire : le bit ajouté à la donnée est positionné de telle façon que le nombre
des états 1 soit impaire sur l'ensemble donnée + bit de parité
Ex : soit la donnée 11011001 contenant 5 états 1, le bit de parité impaire est
positionné à 0, laissant ainsi un nombre de 1 impaire.
II.6.1. Handshake :
La méthode la plus courante, pour réguler le flux de données, est l'HandShaking.
Elle utilise une liaison full duplex complète. Ce protocole est géré directement
par l'UART. Vous trouverez sur le chronogramme suivant (figure II.9), le mécanisme
d'une communication.
26
Chapitre II: Le standard RS-232.
27
Chapitre II: Le standard RS-232.
Il existe deux types de ports série, la première consistant en 25 pôles qui est le
format d'origine définies dans le Protocole et a appelé D25 (très vieux). Et le second,
dans lequel un 9 petit pôle, appelé D9 est apparu dans les ordinateurs personnels
actuels en raison de la non-utilisation d'autres pôles dans le grand port. La figure
suivante(II.12) montre le port série D9 et la distribution des pôles dans lesquels:
28
Chapitre II: Le standard RS-232.
• DSR (Data Set Ready) (entrée): la ligne de serrer la main indique que le dispositif de
données (modem) est prêt à recevoir des informations de votre ordinateur. Cette ligne
est une entrée active au niveau logique haut. Elle permet au correspondant de signaler
qu’une donnée est prête.
• RTS (Request To Send) (sortie) serrant la main avec la ligne nécessaire pour mener
à bien vos données à envoyer. Cette ligne est une sortie active au niveau logique haut.
Elle indique au correspondant que l’ordinateur veut lui transmettre des données.
• CTS (Clear To Send) (entrée): indique le terminal de ligne poignée de main
(ordinateur) pour la possibilité de commencer le processus d'envoi. Cette ligne est une
entrée active au niveau logique haut. Elle indique à l’ordinateur que le correspondant
est prêt à recevoir des données,
• CD (Carrier Detected) (entrée): indique à l'ordinateur sur la disponibilité de signal
porteur (ton Walton). Cette ligne est une entrée active au niveau logique haut. Elle
signale à l’ordinateur qu’une liaison a été établie avec un correspondant.
• RI (Ring Indicateur) : cette ligne est une entrée active au niveau logique haut. Elle
permet à l’ordinateur de savoir qu’un correspondant veut déclencher une
communication avec lui.
Peut atteindre un minimum de contact sans l'aide de trois lignes de handshake
sont le seul SG et TxD et Rxd.
II.9.Conclusion :
Le port série RS232 à l’avantage d’utiliser un nombre réduit de fils (par rapport
à la communication parallèle). Deuxième avantage est la possibilité de communiquer
sur de grandes distances.
29
chaPItRE III :
EtudE dE kIt du
dEvEloPPEmEnt
Chapitre III: Etude du kit du développement.
-III.1.Introduction:
Dans ce chapitre on va présenter une description détaillée du principe des systèmes du
développement et le contenue du base ou idéale d'un kit du développement et en abordant la
conception détaillée de chaque partie du système afin d’obtenir une schématisation complète
et précise.
30
Chapitre III: Etude du kit du développement.
31
Chapitre III: Etude du kit du développement.
32
Chapitre III: Etude du kit du développement.
33
Chapitre III: Etude du kit du développement.
34
Chapitre III: Etude du kit du développement.
35
Chapitre III: Etude du kit du développement.
Et donc voici la figure .III.4 qui est une photo générale de la carte EASY PIC 2.
36
Chapitre III: Etude du kit du développement.
37
Chapitre III: Etude du kit du développement.
Et voici la figure .III.6 qui représente le schéma structurel complet de PICDEM PLUS 2
avec les supports de 18,28 et 40 broches et la figure .III.7 qui représente une photo générale
de la carte.
38
Chapitre III: Etude du kit du développement.
39
Chapitre III: Etude du kit du développement.
R47
1k
RESET
1
BP5
BUTTON
2
40
Chapitre III: Etude du kit du développement.
de touches). Chaque touche agit comme un bouton poussoir qui établit le contact entre une
des 4 pistes horizontales et une des 3 pistes verticales.
III.4.4.a. Principe de fonctionnement:
Les claviers sont des commutateurs, qui sont connectés à des lignes et des colonnes. Si
la touche "1" est pressé, la colonne 1 est connectée électriquement à la ligne 1(Row1), si la
touche "2" est pressé la colonne 2 (Col 2) avec la ligne 1, et ainsi de suite …
Ce model est appelée matriciel, c-à -d les lignes et les colonnes forment une matrice de
3*4.
Comme nous voyons dans la figure III.11.suivante :
41
Chapitre III: Etude du kit du développement.
11
13 33
9
15p CRYSTAL 6 40
RA4/T0CKI/C1OUT RB7/PGD PGD
7
RA5/AN4/SS/C2OUT
8
RC0/T1OSO/T1CKI
15
16
1
12 A 1 2 3
RE0/AN5/RD RC1/T1OSI/CCP2 2
9 17
RE1/AN6/WR RC2/CCP1 3
10 18
RE2/AN7/CS RC3/SCK/SCL 4
1
RC4/SDI/SDA
23
24
13 B 4 5 6
MCLR MCLR/Vpp/THV RC5/SDO
25
RC6/TX/CK TX
26
RC7/RX/DT RX
19
14 C
7 8 9
RD0/PSP0 9
20
RD1/PSP1 10
21
RD2/PSP2 11
RD3/PSP3
22
27
15 D
0 #
RD4/PSP4 12
RD5/PSP5
28
29
13 OK
RD6/PSP6 14
30
RD7/PSP7 15
PIC16F877
42
Chapitre III: Etude du kit du développement.
4
C100
U1
13 33
BP1
OSC1/CLKIN RB0/INT RB0
15p 14 34 1 2
OSC2/CLKOUT RB1 RB1
X1 RB2
35
16 BUTTON
2 36 BP2
C200 5 RA0/AN0 RB3/PGM 17
3 37
6 RA1/AN1 RB4 18 1 2
4 38
7 RA2/AN2/VREF-/CVREF RB5 19
5 39 BUTTON
8 RA3/AN3/VREF+ RB6/PGC PGC
15p CRYSTAL 6 40 BP3
5
RA4/T0CKI/C1OUT RB7/PGD PGD
8
6
7
7
RA5/AN4/SS/C2OUT 1 2
15
RC0/T1OSO/T1CKI 1
8 16 BUTTON
9
RE0/AN5/RD RC1/T1OSI/CCP2
17
2 BP4
RE1/AN6/WR RC2/CCP1 3
10 18 1 2
RE2/AN7/CS RC3/SCK/SCL 4
RC4/SDI/SDA
23 R50 R60 R70 R80 BUTTON
1 24 330 330 330 330
MCLR MCLR/Vpp/THV RC5/SDO
25
RC6/TX/CK TX
26
RC7/RX/DT RX
19
RD0/PSP0
20
9 LED4 LED5 LED6 LED7 R301 R302 R303 R1
RD1/PSP1 10 LED-RED LED-RED LED-RED LED-RED
21 2k2 2k2 2k2 2k2
RD2/PSP2 11
22
RD3/PSP3
27
RD4/PSP4 12
28
RD5/PSP5 13
VCC
29
RD6/PSP6 14
30
RD7/PSP7 15
PIC16F877
43
Chapitre III: Etude du kit du développement.
44
Chapitre III: Etude du kit du développement.
Broches 7à 14 : utilisées pour le transfert des données ou des instructions. Le transfert peut
se faire sur 8 bits, toutes les broches sont alors utilisées, ou sur 4 bits, dans ce cas, seules les
broches 11 à 14 sont utilisées.
III.4.6.c. Connexion de l’afficheur sur la carte :
L'afficheur de notre kit se connectée comme le montre la figure.III.15 suivante:
C100
U1
13 33
OSC1/CLKIN RB0/INT RB0
15p 14 34
OSC2/CLKOUT RB1 RB1
X1 RB2
35
16
2 36
C200 5 RA0/AN0 RB3/PGM 17 LCD1
3 37
6 RA1/AN1 RB4 18
4 38 LM016L
7 RA2/AN2/VREF-/CVREF RB5 19
5 39
8 RA3/AN3/VREF+ RB6/PGC PGC
15p CRYSTAL 6 40
RA4/T0CKI/C1OUT RB7/PGD PGD
7
RA5/AN4/SS/C2OUT
15
RC0/T1OSO/T1CKI 1
8
RE0/AN5/RD RC1/T1OSI/CCP2
16
2
RV1
9 17
RE1/AN6/WR RC2/CCP1 3
10 18
RE2/AN7/CS RC3/SCK/SCL 4
VDD
VSS
VEE
23
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
RC4/SDI/SDA
E
1 24
MCLR MCLR/Vpp/THV RC5/SDO
25 5K
RC6/TX/CK TX
1
2
3
4
5
6
7
8
9
10
11
12
13
14
26
RC7/RX/DT RX
19
RD0/PSP0 9
20
RD1/PSP1 10
21
RD2/PSP2 11
22
16
17
18
19
RB6
RB7
RD3/PSP3
27
RD4/PSP4 12
28
RD5/PSP5 13
29
RD6/PSP6 14
30
RD7/PSP7 15
PIC16F877
45
Chapitre III: Etude du kit du développement.
46
Chapitre III: Etude du kit du développement.
47
Chapitre III: Etude du kit du développement.
48
Chapitre III: Etude du kit du développement.
49
chaPItRE Iv :
RéalIsatIon dE
kIt du
dEvEloPPEmEnt
CHAPITRE IV: Réalisation du kit du développement.
IV.1.Introduction:
Après une étude générale des différents éléments constituants notre carte électronique
on passe maintenant à la simulation et la réalisation physique de notre projet.
Dans cette partie la programmation du PIC nécessite à comprendre le logiciel de
programmation. Alors on va présenter le logiciel, puis on va introduire les organigrammes de
calcul. En plus on va utilisée d'autre logiciels et outils pour réaliser notre Kit du
développement.
50
50
CHAPITRE IV: Réalisation du kit du développement.
51
51
CHAPITRE IV: Réalisation du kit du développement.
52
52
CHAPITRE IV: Réalisation du kit du développement.
53
53
CHAPITRE IV: Réalisation du kit du développement.
54
54
CHAPITRE IV: Réalisation du kit du développement.
55
55
CHAPITRE IV: Réalisation du kit du développement.
56
56
CHAPITRE IV: Réalisation du kit du développement.
57
57
CHAPITRE IV: Réalisation du kit du développement.
58
58
CHAPITRE IV: Réalisation du kit du développement.
59
59
CHAPITRE IV: Réalisation du kit du développement.
60
60
CHAPITRE IV: Réalisation du kit du développement.
61
61
CHAPITRE IV: Réalisation du kit du développement.
IV.7.3.Utilisation de RS232:
Le but est de réaliser la communication du PIC avec le PC via une liaison RS232.
Il s'agit d'envoyer une message du PC vers l'afficheur LCD a travers le PIC en utilisant
un programme qui s'exécute sur le PC pour la configuration des COM.
- Utilisation d'une liaison RS232 pour établir la connexion entre les deux périphériques.
Voici l'organigramme de l'application (figure IV.22).
62
62
CHAPITRE IV: Réalisation du kit du développement.
IV.8. Conclusion
Dans ce chapitre on peut constater le rôle principal de système pratique,
Le kit de développement est basé sur le microcontrôleur PIC16f877 comme élément
essentiel, nous avons programmé le pic et simuler le circuit.
La réalisation pratique de montage était pour nous une expérience très enrichissante du
fait que nous avons vécu un cas réel de conception.
Les expériences que nous avons menées durant ce chapitre nous ont montré que l’étude
théorique et l’étude par simulation étaient très proches de la réalité pratique.
63
63
Conclusion générale :
Conclusion Générale :
Les microcontrôleurs permettent de réaliser des applications diverses qui peuvent servir
dans différents domaines industriels ou pour les projets de fin d'étude de les étudiants.
Dans notre projet nous avons traité les différentes interfaces qu'on nous pouvons de les
réaliser a base du pic et les simulées dans plusieurs application sur le kit de développement de
pic 16f877 qu'on à réalisé.
Ce projet nous a beaucoup appris sur les microcontrôleurs et leurs programmations. Il a
été mené d'une recherche bibliographique bien détaillée.
L’élaboration de ce travail, nous a permis d’approfondir nos connaissances théoriques et
d’acquérir une bonne expérience au niveau de la réalisation pratique.
Lors de cette manipulation, nous avons réalisé une Kit de développement à base de PIC.
Ce projet nous a permis d’enrichir nos connaissances dans le domaine électronique :
La conception des cartes et des circuits imprimés.
La réalisation des cartes d’interface.
La programmation des microcontrôleurs PIC.
La mise en pratique des connaissances théoriques en électronique et en
programmation en Mikro C.
La manipulation des différents modules .
Et tous ceci dans le but d'étudier les microcontrôleurs Pic et leur applications en général
avec un pic de la famille 16Fxxx et de réaliser un objet physique qui peut nous aidons à
réaliser ces applications.
Et ce kit (ou un autre kit de ce genre) est très outil pour les étudiants qui ont un projet de
fin d'étude qui basé sur un pic 16F877 parce qu'il va de diminuer plusieurs difficulté a propos
leur travail.
64
Bibliographie:
Bibliographie:
[6]http://www.abcelectronique.com/bigonoff/
[7] www.didel.com/pic/Architecture.pdf
[8]www.technologuepro.com/
[9]Datasheet du 16F877.pdf
[1] http://www.rennes.supelec.fr/ren/fi/elec/mcu/pic/maq877/maq877.html
[2]http//www.technologuepro.com/
[3]http://www.mikroelektronika.com/
[5] Rjeb.B, Waz .R : « Projet de réalisation d’une maquette didactique a base de pic
16F877 »2007.
65
Bibliographie:
[1]http://www.mikroe.com/.
66
Liste de figures
Chapitre1
Chapitre II
Chapitre III:
Chapitre IV:
Annexe :
Hyper terminale est un interface de communication série a partir le port com avec les
peripherique externe
Choix de com.
Annexe
Choix propriétés.
Annexe