dimanche 9 février 2014

Clignotant à LED ; mise en oeuvre de l'oscillateur interne


  • 1- Présentation
  • 2- Schéma électrique
  • 3- Principe de fonctionnement
  • 4- Liste du matériel
  • 5- Code source du microcontrôleur PIC (écrit en assembleur)
  • 6- Pour plus d'informations


  • 1- Présentation
Ce circuit fait clignoter une LED à une fréquence de 1,91 Hz ou bien 7,63 Hz (suivant la position de l'interrupteur SW1).
Ce projet met en oeuvre l'oscillateur interne du PIC 16F88.

  • 2- Schéma électrique
Schéma électrique avec un PIC 16F88 (18 broches) :

  • 3- Principe de fonctionnement

On utilise l'oscillateur interne du PIC 16F88 : on fait ainsi l'économie d'un quartz ou d'un circuit RC.
La base de temps du microcontrôleur PIC 16F88 est fixée par son registre OSCCON :
IRCF2
(bit 6 du registre OSCCON)
IRCF1
(bit 5 du registre OSCCON)
IRCF0
(bit 4 du registre OSCCON)
Fréquence nominale
f OSC
0
0
0
31,25 kHz
0
0
1
125 kHz
0
1
0
250 kHz
0
1
1
500 kHz
1
0
0
1 MHz
1
0
1
2 MHz
1
1
0
4 MHz
1
1
1
8 MHz

  • Interrupteur SW1 en position OFF
Le registre OSCCON est configuré pour avoir f OSC = 1 MHz.
f OSC2 = f OSC / 4 = 250 kHz ou 250 000 cycles par seconde.
Le microcontrôleur utilise une source d'interruption : celle du module TMR0.
Le module TMR0 (8 bits) est configuré en mode timer.
L' interruption a donc lieu tous les 256*256 = 65 536 cycles (prescaler 1:256), ce qui correspond à 262 144 µs.
La routine d'interruption inverse le niveau logique de la sortie RA1 : la LED clignote donc avec une période de 524 288 µs (soit une fréquence nominale de 1,9073 Hz).

  • Interrupteur SW1 en position ON
Le registre OSCCON est configuré pour avoir f OSC = 4 MHz.
La LED clignote 4 fois plus vite (7,629 Hz).

  • 4- Liste du matériel
    • 1 microcontrôleur PIC 16F88
      • Remarque : vous pouvez demander des échantillons gratuits chez Microchip :)
    • 1 LED
    • 1 résistance de 220 ohms
    • 1 interrupteur
    • 1 source d'alimentation continue 5 V
    • 1 condensateur électrochimique de 10 µF (filtrage de l'alimentation)
    • 1 condensateur de 100 nF (filtrage de l'alimentation)

    • 1 programmateur pour flasher le programme du microcontrôleur PIC
  • 5- Code source du microcontrôleur PIC (en assembleur)
Le code source a été écrit en langage assembleur avec l'environnement de développement gratuit MPLAB IDE de Microchip.


(C) Fabrice Sincère ; Révision 1.0.4

Aucun commentaire:

Enregistrer un commentaire