segments b,d,e,f et g ic = 100 ma ic = 400 ma courant de la diode = 10 ma facteur 5 (moyenne)...
TRANSCRIPT
HARDWARE
JUSTIFICATION DES COMPOSANTS
JUSTIFICATION DES COMPOSANTS
JUSTIFICATION DES COMPOSANTS
Segments B,D,E,F et G
JUSTIFICATION DES COMPOSANTS
Ic = 100 mA
Ic = 400 mA
• Courant de la diode = 10 mA
• Facteur 5 (moyenne)
• Facteur 7• Coefficient de sécurité 2
Segments B,D,E,F et G
Calculs des résistances
Choix du transistors : NPN 2N6718 (intensité maximale de 500 mA)
JUSTIFICATION DES COMPOSANTS
JUSTIFICATION DES COMPOSANTS
Segments A et C
JUSTIFICATION DES COMPOSANTS
Ic = 250 mA
Ic = 200 mA
• Courant de la diode = 10 mA
• Facteur 5 (moyenne)• Facteur 5 ( 5 branches)
• Facteur 2• Coefficient de sécurité 2
Segments B,D,E,F et G
Datasheet
Source Moodle
JUSTIFICATION DES COMPOSANTS
SOFTWAREMODULE AFFICHAGE
INITIALISATION
RxFlag
SEGMENTS
DIGITS
FONCTIONNEMENT GLOBAL DU PROGRAMME
INITIALISATION
• Chaque digits• Initialisation pour le logiciel de type sortie (I0)• Initialisation matérielle
• Dizaine d’heures• Unités d’heures• ...
• Chaque segments• Idem pour chaque segment• Les segments de A a G sont initialisés une seule
fois
Utilisation du RxBuffer/RxFlagHeure
• Le DrapeauHeure se lève lorsque l’on envoie une commande commençant par N, on peut ensuite écrire dans le RXBuffer
• Les données sont introduites sous la forme N XXX CR (Carriage Return) avec Hercules
• Le N indique
• L’espace alloué à l’affichage est RxBuffer[0], RxBuffer[1], RxBuffer[2] et RxBuffer[3].
Fonctionnement des DigitsChoixDigit
• Utilisation de Case Of selon les valeurs du RxBuffer
• On envoie le chiffre à allumer dans la partie « Segments »
• On pense à allumer le digit sélectionné et à éteindre les autres.
Fonctionnement des SegmentsChoixSegments
• Pour l’affichage des segments, nous utilisons le tableau qui a été fourni avec la première version du logiciel.
• Le tableau traduit directement les segments à allumer en fonction du chiffre entré.
• On allume ensuite les segments à allumer en imposant aux autres segments d’être éteints.
Fonctionnement de l’Affichage
• Le programme principal lit en permanence le RxBuffer• Tempo entre chaque lecture (5ms)
• Les diodes étaient sensées clignoter toutes les secondes• Allumées « en permanence »
MODULE SON
Programme d’interruptio
n
Module Son
Commande Son
Réception d’une
commande SXXXX
Mise en mémoire dans le
RxBuffer de [10 à 13]
Génération du Son
Détermination de la durée
du sonArrêt du son
Commande Affichage
Heure
Réception d’une
commande NXXXX
Mise en mémoire dans le
RxBuffer de [0 à 3]
Utilisation du RxBuffer/DrapeauSon
• Le DrapeauSon se lève lorsque l’on envoie une commande commençant par S, on peut ensuite écrire dans le RXBuffer
• Les données sont introduites sous la forme S XXXX CR (Carriage Return) avec Hercules
• Le S indique
• L’espace alloué à l’affichage est RxBuffer[10], RxBuffer[11], RxBuffer[21] et RxBuffer[13].
Utilisation
Outil Timer0
Compteur de temps
Durée de sonnerie
Génération du Son
Timer0 Fréquence du PIC : 8 Mhz Prescaler utilisé : 1:32 Pour que l’on ait une période où le
Drapeau Du Timer0 se lève toutes les 1 ms
INTCONbits.TMR0IF = 1 Drapeau à 1 INTCONbits.TMR0IE = 1 Lancement du Timer0
Retour
Compteur de Temps Variable qui s’incrémente à chaque fois
que le drapeau du compteur passe à 1, c’est-à-dire toutes les 1 ms
ROLES : Compter la durée de temps de la sonnerie
Avec conditions sur le nombre d’itérations EXEMPLE : Pour 1 seconde : 140 itérations
Retour
Génération du son Le but est de faire vibrer la membrane à
une certaine fréquence Utilisation d’un deuxième compteur de
temps Itération beaucoup plus courte pour avoir
une bonne fréquence permettant un son audible
Dès que cette itération est atteinte (2), on effectue l’instruction suivante : SORTIE_SON_PORT =!SORTIE_SON_PORT
Retour
DOXYGEN
project mode
output diagrams
CONCLUSION
CONCLUSION