Mini Projet


Théme : Les micro-controleurs



Membres du groupe :
Abdallah Abdennadher
Abdelletif Missaoui
Fares Mougaida
Sommaire
i. Les µc
ii.La différence entre pic16f877 et pic16f876

iii.L'afficheur LCD 2*16
iv.Le clavier 12 touche

v.Rs 232
vi.I²c
vii.Application
Les µc




Les microcontrôleurs sont aujourd'hui
implantés dans la plupart des applications
grand public ou professionnelles, il en
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 (Peripheral Interface Controller).
Les µc







Ce composant encore très utilisé à l' heure
actuelle, est un compromis entre simplicité
d' emploi, rapidité et prix de revient.
Les PIC existent dans plusieurs versions:
Les UVPROM qui sont effaçable par une
source de rayonnements ultraviolets
Les OTPROM programmable une seule
fois
Les µc


Les EPROM et flash EPROM qui sont
effaçables électriquement.

Actuellement les modèles Microchip, sont
classés en 3 grandes familles, comportant
chacune plusieurs références. Ces familles
sont :
Les µc
Base-line : les instructions sont codées sur
12 bits.
mid-line : les instructions sont codées sur
14 bits.
High-End : les instructions sont codées sur
16 bits.
Programmateur PIC
Différence entre pic16f877 et
pic16f876
DESCRIPTION :




- Consommation : moins de 2mA sous 5V à
4 MHz.
Architecture RISC : 35 instructions de
durée 1 ou 2 cycles.

Durée du cycle : Période de l'oscillateur
quartz divisée par 4 soit 200 ns pour un
quartz de 20 MHz
Différence entre pic16f877 et
pic16f876






- Deux bus distincts pour le code
programme et les data.

- Code instruction : mot de 14 bits et
compteur programme (PC) sur 13 bits, ce
qui permet d'adresser 8 K mots ( de h'0000'
à h'1FFF')
Différence entre pic16f877 et
pic16f876





- Bus DATA sur 8 bits.
- 33 Ports Entrée-Sortie bidirectionnels
pouvant produire 25 mA par sortie.
PORTA = 6 bits et PORTB PORTC et
PORTD = 8bits PORTE = 3 bits pour le
16F877 et 22 I/O seulement pour le
16F876.
Différence entre pic16f877 et
pic16f876






- 4 sources d'interruption :

- Externe par la broche partagée avec le
Port B : PB0
- Par un périphérique intégré dans le chip:
écriture de Data en EEPROM
Différence entre pic16f877 et
pic16f876






2 Compteurs 8 bits et 1 compteur 16 bits
avec pré diviseur programmable.

- Convertisseur analogique 10 bits à 8
entrées pour le 16F877 et 4 entrées pour le
16F876.
- Par changement d'état des bits du Port B:
PB4 PB5 PB6 ou PB7
Différence entre pic16f877 et
pic16f876









- UART pour transmission série synchrone
ou asynchrone.

- Interface I2C.
- 2 modules pour PWM avec une résolution
de 10 bits.
- Interface avec un autre micro: 8 bits + 3
bits de contrôle pour R/W et CS.
- 368 Octets de RAM
Différence entre pic16f877 et
pic16f876







- 256 Octets d'EEPROM Data.
- 8K mots de 14 bits en EEPROM Flash
pour le programme (h'000' à h'1FFF').
- 1 registre de travail : W et un registre
fichier : F permettant d'accéder à la
RAM ou aux registres internes du PIC.
Tous les deux sont des registres 8 bits.
PIC 16F877
PIC 16F876
Afficheur LCD


Les afficheurs LCD (Liquid Crystal
Display) sont devenues incontournables
dans toutes applications qui demandent la
visualisation de paramètres, il s’agit donc
d’une interface Homme/Machine. Ils sont
très utilisés dans les montages à
microcontrôleur, et permettent une grande
convivialité.
Afficheur LCD


Ils peuvent aussi être utilisés lors de la
phase de développement d'un programme,
car on peut facilement y afficher les valeurs
de différentes variables. Au paravent
onéreux et difficile à mettre en œuvre, ils
sont maintenant bon marchés et l’interface
parallèle au standard Hitachi permet un
pilotage facile.
Broche

Nom

Niveau

Fonction

1

VSS

-

2

VDD

-

Alimentation positive (+5V).

3

VEE

0-5V

Cette tension permet, en la faisant varier entre 0 et
+5V, le réglage du contraste de l'afficheur.

4

RS

TTL

Selection du registre

5

RW

TTL

Lecture ou ecriture , L:ecriture , H:lecture

6

E

TTL

Entre de validation active au niveau bas

7

D0

TTL

Bus de données bidirectionnel 3 états (haute
impédance lorsque E=0)

8

D1

TTL

//

9

D2

TTL

//

10

D3

TTL

//

11

D4

TTL

//

12

D5

TTL

//

13

D6

TTL

//

14

D7

TTL

//

15

A

16

K

MASSE

Anode rétroéclairage +5v
-

Cathode rétroéclairage (masse)
Clavier 12 touche
Sur un PC, le clavier est complètement
décodé. C'est-à-dire que lorsqu'une touche
est appuyée, sa position sur le clavier est
envoyée sur la liaison PS2. Le fait
d'envoyer la position et non le code ASCII
permet de gérer les claviers en divers
langues.
Clavier 12 touche
• Pour de petites applications, on utilise un
clavier à 12 touches. Il est composé de
simples contacts et le décodage est réalisé
par le système informatique. Avec
seulement 8 touches, un PORT de 8 bits en
entrée suffit. Si le clavier possède plus de 8
touches, il faut:
Clavier 12 touche
• soit utiliser d'avantage d'entrées,
• soit multiplexer les entrées en deux étapes.
RS 232
RS-232 (parfois appelée EIA RS-232, EIA
232 ou TIA 232) est une norme
standardisant un bus de communication de
type série sur trois fils minimum (électrique,
mécanique et protocole). Disponible sur
presque tous les PC jusqu'au milieu des
années 2000,
RS 232
• Protocole
• Pour établir une communication effective
via RS-232, il est nécessaire de définir le
protocole utilisé : notamment, le débit de la
transmission, le codage utilisé, le
découpage en trame, etc
RS 232
• La norme RS-232 laisse ces points libres,
mais en pratique on utilise souvent des
UART qui découpent le flux en trames d'un
caractère ainsi constituées :
• 1 bit de départ ;

• 7 à 8 bit de données ;
• 1 bit de parité optionnel ;
• 1 ou plusieurs bits d'arrêt.
RS 232
• Le bit de départ a un niveau logique "0"
tandis que le bit d'arrêt est de niveau
logique "1". Le bit de donnée de poids faible
est envoyé en premier suivi des autres.
RS 232
• Limites
• Longueur maximum de câble RS2322
Débit (bit/s)

Longueur (pieds)

Longueur (m)

19 200

50

15

9 600

500

50

4 800

1000

150

2 400

3000

900
i²c



1- Historique
Le bus I2C ( Inter Integrated Circuit Bus )
est le bus historique, développé par Philips
pour les applications de domotique et
d'électronique domestique au début des
années 80, notamment pour permettre de
relier facilement à un microprocesseur les
différents circuits d'un téléviseur moderne.
i²c
2- Caractéristiques
Le bus I2C 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 ).
i²c


Ceci permet de réaliser des équipements
ayants des fonctionnalités très puissantes (
En apportant toute la puissance des
systèmes microprogrammés ) et
conservant un circuit imprimé très simple,
par rapport un schéma classique ( 8bits de
données, 16 bits d'adresse + les bits de
contrôle ).
i²c


Les données sont transmises en série
à 100Kbits/s en mode standard et jusqu'à
400Kbits/s en mode rapide. Ce qui ouvre la
porte de cette technologie à toutes les
applications où la vitesse n'est pas
primordiales.
i²c



3-Principe
Afin de d'éviter les conflits électriques les
Entrées/Sorties SDA et SCL sont de type
"Collecteur Ouvert". Cela permet ainsi la
présence de plusieurs maîtres sur le bus.
i²c


Structure d'E/S d'un module I2C :
i²c
Application
• Cronogramme:
Debut
unitialisation
K=kbd_getc()
k<>0
Receotion RS232
K=‘#’’

Lcd_putc(‘f’)

K=‘*’
Lcd_putc(k)

lcd_putc(‘appuer sur une touche’)
Programmation:
Realisation sur isis:
Description des logiciel
• Proteus est une suite logicielle destinée à
l'électronique. Développé par la société
Labcenter Electronics, les logiciels incluent
dans Proteus permettent la CAO dans le
domaine électronique. Deux logiciels
principaux composent cette suite
logicielle: ISIS, ARES, PROSPICE et VSM.
Description des logiciel
• Le logiciel ISIS de Proteus est principalement
connu pour éditer des schémas électriques. Par
ailleurs, le logiciel permet également de simuler
ces schémas ce qui permet de déceler certaines
erreurs dès l'étape de conception. Indirectement,
les circuits électriques conçus grâce à ce logiciel
peuvent être utilisé dans des documentations car
le logiciel permet de contrôler la majorité de
l'aspect graphique des circuits.
Description des logiciel
• Le logiciel MPLAB est un outil de développement
pour programmer des microcontrôleurs de type
PIC de la famille Microchip. Il est mis au point par
la société Microchip, et est entièrement gratuit.
Ce logiciel vous permettra de créer un
programme, de l'assembler, et de le simuler.
Enfin, vous pourrez transféré votre programme
réalisé sous MPLAB pour le mettre sur votre PIC.
Description des logiciel
• La programmation des microcontroleurs
PIC® de chez Microchip® à l'aide du
langage C et du compilateur C de chez
CSS.
Le support d'étude est la version PIC
16F876A mais l'étude reste valable pour de
nombreux autres microcontroleurs.

Mini projet 3t2i se

  • 1.
    Mini Projet  Théme :Les micro-controleurs  Membres du groupe : Abdallah Abdennadher Abdelletif Missaoui Fares Mougaida
  • 2.
    Sommaire i. Les µc ii.Ladifférence entre pic16f877 et pic16f876 iii.L'afficheur LCD 2*16 iv.Le clavier 12 touche v.Rs 232 vi.I²c vii.Application
  • 3.
    Les µc   Les microcontrôleurssont aujourd'hui implantés dans la plupart des applications grand public ou professionnelles, il en 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 (Peripheral Interface Controller).
  • 4.
    Les µc     Ce composantencore très utilisé à l' heure actuelle, est un compromis entre simplicité d' emploi, rapidité et prix de revient. Les PIC existent dans plusieurs versions: Les UVPROM qui sont effaçable par une source de rayonnements ultraviolets Les OTPROM programmable une seule fois
  • 5.
    Les µc  Les EPROMet flash EPROM qui sont effaçables électriquement. Actuellement les modèles Microchip, sont classés en 3 grandes familles, comportant chacune plusieurs références. Ces familles sont :
  • 6.
    Les µc Base-line :les instructions sont codées sur 12 bits. mid-line : les instructions sont codées sur 14 bits. High-End : les instructions sont codées sur 16 bits.
  • 7.
  • 8.
    Différence entre pic16f877et pic16f876 DESCRIPTION :   - Consommation : moins de 2mA sous 5V à 4 MHz. Architecture RISC : 35 instructions de durée 1 ou 2 cycles. Durée du cycle : Période de l'oscillateur quartz divisée par 4 soit 200 ns pour un quartz de 20 MHz
  • 9.
    Différence entre pic16f877et pic16f876    - Deux bus distincts pour le code programme et les data. - Code instruction : mot de 14 bits et compteur programme (PC) sur 13 bits, ce qui permet d'adresser 8 K mots ( de h'0000' à h'1FFF')
  • 10.
    Différence entre pic16f877et pic16f876    - Bus DATA sur 8 bits. - 33 Ports Entrée-Sortie bidirectionnels pouvant produire 25 mA par sortie. PORTA = 6 bits et PORTB PORTC et PORTD = 8bits PORTE = 3 bits pour le 16F877 et 22 I/O seulement pour le 16F876.
  • 11.
    Différence entre pic16f877et pic16f876    - 4 sources d'interruption : - Externe par la broche partagée avec le Port B : PB0 - Par un périphérique intégré dans le chip: écriture de Data en EEPROM
  • 12.
    Différence entre pic16f877et pic16f876    2 Compteurs 8 bits et 1 compteur 16 bits avec pré diviseur programmable. - Convertisseur analogique 10 bits à 8 entrées pour le 16F877 et 4 entrées pour le 16F876. - Par changement d'état des bits du Port B: PB4 PB5 PB6 ou PB7
  • 13.
    Différence entre pic16f877et pic16f876      - UART pour transmission série synchrone ou asynchrone. - Interface I2C. - 2 modules pour PWM avec une résolution de 10 bits. - Interface avec un autre micro: 8 bits + 3 bits de contrôle pour R/W et CS. - 368 Octets de RAM
  • 14.
    Différence entre pic16f877et pic16f876     - 256 Octets d'EEPROM Data. - 8K mots de 14 bits en EEPROM Flash pour le programme (h'000' à h'1FFF'). - 1 registre de travail : W et un registre fichier : F permettant d'accéder à la RAM ou aux registres internes du PIC. Tous les deux sont des registres 8 bits.
  • 15.
  • 16.
  • 17.
    Afficheur LCD  Les afficheursLCD (Liquid Crystal Display) sont devenues incontournables dans toutes applications qui demandent la visualisation de paramètres, il s’agit donc d’une interface Homme/Machine. Ils sont très utilisés dans les montages à microcontrôleur, et permettent une grande convivialité.
  • 18.
    Afficheur LCD  Ils peuventaussi être utilisés lors de la phase de développement d'un programme, car on peut facilement y afficher les valeurs de différentes variables. Au paravent onéreux et difficile à mettre en œuvre, ils sont maintenant bon marchés et l’interface parallèle au standard Hitachi permet un pilotage facile.
  • 19.
    Broche Nom Niveau Fonction 1 VSS - 2 VDD - Alimentation positive (+5V). 3 VEE 0-5V Cettetension permet, en la faisant varier entre 0 et +5V, le réglage du contraste de l'afficheur. 4 RS TTL Selection du registre 5 RW TTL Lecture ou ecriture , L:ecriture , H:lecture 6 E TTL Entre de validation active au niveau bas 7 D0 TTL Bus de données bidirectionnel 3 états (haute impédance lorsque E=0) 8 D1 TTL // 9 D2 TTL // 10 D3 TTL // 11 D4 TTL // 12 D5 TTL // 13 D6 TTL // 14 D7 TTL // 15 A 16 K MASSE Anode rétroéclairage +5v - Cathode rétroéclairage (masse)
  • 21.
    Clavier 12 touche Surun PC, le clavier est complètement décodé. C'est-à-dire que lorsqu'une touche est appuyée, sa position sur le clavier est envoyée sur la liaison PS2. Le fait d'envoyer la position et non le code ASCII permet de gérer les claviers en divers langues.
  • 22.
    Clavier 12 touche •Pour de petites applications, on utilise un clavier à 12 touches. Il est composé de simples contacts et le décodage est réalisé par le système informatique. Avec seulement 8 touches, un PORT de 8 bits en entrée suffit. Si le clavier possède plus de 8 touches, il faut:
  • 23.
    Clavier 12 touche •soit utiliser d'avantage d'entrées, • soit multiplexer les entrées en deux étapes.
  • 24.
    RS 232 RS-232 (parfoisappelée EIA RS-232, EIA 232 ou TIA 232) est une norme standardisant un bus de communication de type série sur trois fils minimum (électrique, mécanique et protocole). Disponible sur presque tous les PC jusqu'au milieu des années 2000,
  • 25.
    RS 232 • Protocole •Pour établir une communication effective via RS-232, il est nécessaire de définir le protocole utilisé : notamment, le débit de la transmission, le codage utilisé, le découpage en trame, etc
  • 26.
    RS 232 • Lanorme RS-232 laisse ces points libres, mais en pratique on utilise souvent des UART qui découpent le flux en trames d'un caractère ainsi constituées : • 1 bit de départ ; • 7 à 8 bit de données ; • 1 bit de parité optionnel ; • 1 ou plusieurs bits d'arrêt.
  • 27.
    RS 232 • Lebit de départ a un niveau logique "0" tandis que le bit d'arrêt est de niveau logique "1". Le bit de donnée de poids faible est envoyé en premier suivi des autres.
  • 28.
    RS 232 • Limites •Longueur maximum de câble RS2322 Débit (bit/s) Longueur (pieds) Longueur (m) 19 200 50 15 9 600 500 50 4 800 1000 150 2 400 3000 900
  • 29.
    i²c   1- Historique Le busI2C ( Inter Integrated Circuit Bus ) est le bus historique, développé par Philips pour les applications de domotique et d'électronique domestique au début des années 80, notamment pour permettre de relier facilement à un microprocesseur les différents circuits d'un téléviseur moderne.
  • 30.
    i²c 2- Caractéristiques Le busI2C 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 ).
  • 31.
    i²c  Ceci permet deréaliser des équipements ayants des fonctionnalités très puissantes ( En apportant toute la puissance des systèmes microprogrammés ) et conservant un circuit imprimé très simple, par rapport un schéma classique ( 8bits de données, 16 bits d'adresse + les bits de contrôle ).
  • 32.
    i²c  Les données sonttransmises en série à 100Kbits/s en mode standard et jusqu'à 400Kbits/s en mode rapide. Ce qui ouvre la porte de cette technologie à toutes les applications où la vitesse n'est pas primordiales.
  • 33.
    i²c   3-Principe Afin de d'éviterles conflits électriques les Entrées/Sorties SDA et SCL sont de type "Collecteur Ouvert". Cela permet ainsi la présence de plusieurs maîtres sur le bus.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
    Description des logiciel •Proteus est une suite logicielle destinée à l'électronique. Développé par la société Labcenter Electronics, les logiciels incluent dans Proteus permettent la CAO dans le domaine électronique. Deux logiciels principaux composent cette suite logicielle: ISIS, ARES, PROSPICE et VSM.
  • 40.
    Description des logiciel •Le logiciel ISIS de Proteus est principalement connu pour éditer des schémas électriques. Par ailleurs, le logiciel permet également de simuler ces schémas ce qui permet de déceler certaines erreurs dès l'étape de conception. Indirectement, les circuits électriques conçus grâce à ce logiciel peuvent être utilisé dans des documentations car le logiciel permet de contrôler la majorité de l'aspect graphique des circuits.
  • 41.
    Description des logiciel •Le logiciel MPLAB est un outil de développement pour programmer des microcontrôleurs de type PIC de la famille Microchip. Il est mis au point par la société Microchip, et est entièrement gratuit. Ce logiciel vous permettra de créer un programme, de l'assembler, et de le simuler. Enfin, vous pourrez transféré votre programme réalisé sous MPLAB pour le mettre sur votre PIC.
  • 42.
    Description des logiciel •La programmation des microcontroleurs PIC® de chez Microchip® à l'aide du langage C et du compilateur C de chez CSS. Le support d'étude est la version PIC 16F876A mais l'étude reste valable pour de nombreux autres microcontroleurs.