2. 2
Objectif : Utilisation du capteur de température TC74 et une afficheur I2C qui
utilise le protocole I2C avec un pic16f877, En utilisant la bibliothèque I2C
proposé par MikroC.
Partie Théorique
- Bus I2C
Le bus I2C (Inter Integrated Circuit) permet de faire communiquer entre eux des
composants électroniques très divers grâce à seulement trois fils :
Un signal de donnée (SDA) ;
Un signal d'horloge (SCL) ;
Un signal de référence électrique (Masse).
Ceci permet de réaliser des équipements ayants des fonctionnalités très puissantes
et conservant un circuit imprimé très simple, par rapport un schéma classique.
- TC74
Le TC74 est un capteur de température numérique accessible en série avec le bus
I2C, les données de la température sont converties à partir de l’élément de
détection thermique intégré.
Le TC74 enregistre la température mesurée dans son registre à 8 bits au format
binaire complément à 2, le bit la plus significatif est le bit de signe qui est défini
sur le 1 pour les températures négatives, par conséquent la température positive
maximale mesurable est de +127C qui ’est 0111 111 en binaire.
Descriptions des broches
3. 3
Schéma fonctionnel
- Oscilloscope
Un oscilloscope, ou oscillographe1, est un instrument de mesure destiné à
visualiser un signal électrique, le plus souvent variable au cours du temps. Il est
utilisé par de nombreux scientifiques afin de visualiser soit des tensions
électriques, soit diverses autres grandeurs physiques préalablement transformées
en tension au moyen d'un convertisseur adapté ou de capteurs. La courbe de rendu
d'un oscilloscope est appelée oscillogramme.
4. 4
- Pic16F877
16F877 est le nom d'un microcontrôleur Microchip de la famille PIC 16Fxxx.
Le numéro 16 signifie qu'il fait partie de la famille "MID-RANGE". C'est un
microcontrôleur de la famille 8 bits1. Cela veut dire que l'ALU (Arithmetic and
Logique Unit ou Unit Arithmétique et Logique en français) traite naturellement
des mots de 8 bits maximum.
La lettre F indique que la mémoire programme de ce PIC est de type "Flash".
Chaque ligne de mémoire est un mot de 14 bits.
Les trois derniers chiffres permettent d'identifier précisément le PIC, ici c'est un
PIC de type 877.
La référence 16F877 peut avoir un suffixe du type "-XX" dans lequel XX
représente la fréquence d'horloge maximale que le PIC peut recevoir.
Le microcontrôleur émet une condition de démarrage (START) suivie de
l’octet d’adresse du capteur. L’octet d’adresse est composé de l’adresse de
l’esclave de 7bits et d’un bit de lecture/écriture qu’est toujours a zéro dans la
premier phase ensuit le capteur répond par un ACK si l’adresse de 7bits reçue
correspond a sa propre adresse d’esclave, après le microcontrôleur envoie
l’octet de commande au capteur TC74 pour indiqué le registre qu’il veut
accéder (la lecture ou l’écriture), ensuit le PIC 16F877 émet une nouvelle
condition de démarrage car la direction de transfert de données va être
modifiée, le R/W devient 1, le TC74 transmet les données de température sur
8bits a partir du registre de température, a la réception de l’octet l’hôte
n’acquitte pas l’accusé mais génère une condition d’arrêt.
5. 5
- ISIS Proteus :
Le Proteus Design Suite est une suite d'outils logiciels pro-
priétaires utilisés principalement pour l' automatisation de
la conception électronique . Le logiciel est principalement
utilisé par les ingénieurs et techniciens en conception élec-
tronique pour créer des schémas et des impressions électro-
niques pour la fabrication de cartes de circuits imprimés .
- MickroC :
Le mikroC PRO for PIC est un outil de développe-
ment puissant et riche en fonctionnalités pour les
microcontrôleurs PIC. Il est conçu pour fournir
au programmeur la solution la plus simple possible
pour développer des applications pour les systèmes
embarqués, sans compromettre les performances
ou le contrôle.
- PCF8574
PCF8574 est un expandeur I/O basé sur I2C IC qui fournit une extension
I/O 8 bits pour les microcontrôleurs avec interface I2C. En utilisant
seulement deux lignes de l’interface I2C c’est-à-dire le SDA (Données
sérielles) et SCL (Serial Clock), vous pouvez configurer 8 broches
bidirectionnelles I/O. les broches I2C sortent du module LCD pour une
connexion facile.
Diagramme d’épingles du PCF8574 IC :
6. 6
Partie Pratique
1- Le schéma du circuit sur ISIS Proteus :
2,3- Programme sur MicroC qui réponde au cahier de charges.
7. 7
4- Simuler dans ISIS
5- Ajouter un oscilloscope sur la ligne de communication
8. 8
6- Analyse la trame de la communication
dans l'oscilloscope Il est nécessaire de distinguer deux types différent de trame
de communication l'un entre le pic et le capteur de température TC74 de
l'adresse (0x9E) et une autre entre le pic et le PCF8574 de l'adresse (0x4E).
9. 9
7 autres options d’adresse sont également disponibles et peuvent être
identifiées à partir du numéro de référence de l’appareil.
Le format de lecteur des données dans TC74
La trame de capteur de température TC74 :
1 0 0 1 1 1 1
7 bits d’adresse(0x9E)
0
W
S
0
ACK
10. 10
Le format d’écrire les données dans LCD I2C
La trame de communication de le PCF8574 d’adresse
(0x4E):
0
S
0 1 0 0 1 1 1 0
7 bits d’adresse(0x4E) W
0
ACK