Beruflich Dokumente
Kultur Dokumente
Programmation en C TP n2 : Le chronomtre
Prrequis :
- algorithme, algorigramme - notions de programmation en langage C
Objectifs :
C : traitement programm de l'information : structures algorithmiques de base (linaire, alternative, itrative) ; lment de programmation Comptence F3 : utiliser un systme informatique d'aide au dveloppement
SECTION STI
ELECTRONIQUE
L'affichage multiplex
Notre chronomtre est un systme lmentaire deux afficheurs, le premier pour les secondes, le second pour les 1/10 de secondes. Schma de la carte
Implantation de la carte
LE CHRONOMTRE
Afin de limiter le nombre dentressorties au niveau du microcontrleur, on ralise un affichage multiplex . On va envoyer le code sur tous les afficheurs ( deux dans notre cas, mais nous verrons des cas o il y en a davantage ) et slectionner laide de signaux logiques lafficheur qui doit afficher le code. 1. A laide de la documentation technique des afficheurs MAN74, donner le type de lafficheur ( anodes ou cathodes communes ). Quel niveau logique faut-il mettre sur la broche 4 de l'afficheur pour l'allumer ? Quel niveau logique en RA0 ou RA1 permet dallumer un segment ? 2. Remplir le tableau ci-dessous : RA0 0 0 1 indiquer dans le tableau : RA1 0 1 0 Bloqu ou Satur pour les transistors Allum ou teint pour les afficheurs Q1 Q2 aff D1 aff D2
1 1 Chiffre 0 5
0 $3F
LE CHRONOMTRE
Votre programme a une structure trs lourde, on rpte souvent la mme chose. Il faut trouver une autre manire de l'crire de manire plus compacte. Vous allez ranger les codes dans une table et aller les chercher en fonction d'un indice. Par exemple : code_afficheur n0 = $3F. C'est la notion de tableau. On dclare en dbut de programme un tableau de valeurs. Ex : unsigned char static const tab[10]={0x3F,.......,0xF4}; Il faut spcifier le type du tableau : ici c'est un tableau de constantes de type caractres non signs. Le nom tab est le nom du tableau. Vous utiliserez chiffre comme nom de tableau par exemple.. Ensuite, nous appellerons la donne par tab[i]. Comme vous connaissez le nombre de rptition de votre itration, vous utiliserez une boucle for.
9. Modifier votre programme afin dutiliser un tableau. Tester et faire vrifier par le professeur.
Le chronomtre
10. Ouvrir le programme chrono_eleve.c. Compiler et tlcharger ce programme dans la maquette. Vrifiez le fonctionnement du chronomtre.
Gestion de l'arrt : on demande de modifier ce programme afin que le chronomtre reparte zro lorsqu'on appuie sur RAZ. Il faut reconfigurer le PORTA avec RA2 dclare cette fois en entre. Il faut lire priodiquement cette entre et mettre i et j 0 si celle-ci est 1.
LE CHRONOMTRE