Contrôle de matrice leds, 2011/2012, TD1
Sommaire
Evaluation informatique
Gestion de projet / rédaction Wiki
Bonne répartition du travail ou plus exactement des membres du groupe polyvalents, capable de réaliser à la fois la partie électronique et la partie informatique. D'ailleurs le résultat final le montre.
Rédaction très limite : aucun formattage, de nombreuses fautes d'orthographe, des phrases incompréhensibles. Pas d'illustration; ni schémas ni photographies (note 40%).
Test fonctionnels
- Sous-système : Fonctionnel comme le montre la vidéo, un simple soucis de miroir entre le site web et la matrice (note 120%).
- Système : Pas abordé (0%).
Qualité de la réalisation
- Procédure de test : Une procédure minimale dans un readme sur la FoxBoard avec des erreurs sur les chemins (note 50%).
- Pages HTML et Javascript : Fonctions js correctes mais un HTML brutal pour la matrice avec une ligne par LED, de l'aide (note 80%).
- Scripts PHP ou programmes C : CGI-BIN en C correct avec de l'aide (note 80%).
- Installation sur FoxBoard : Installation très correcte (note 90%).
Bilan
Tous les points ont un poids équivalent (sauf "système" qui est un bonus).
Note finale : 80% (16/20).
Rapports des élèves
Mercredi 20 Mars 2012
- Choix du sujet
Partie électronique:
Lors de cette première séance, les 2 premières heures ont été consacrées à la compréhension du sujet et à l’élaboration d'un plan de réalisation. Ainsi, nous avons distingué l'envoie des données et la sélection par multiplexage des colonnes. Les 2 dernières heures ont été consacrées à la sélection par multiplexage des colonnes les bits de sélection du multiplexeur sont gérées par un compteur qui lui est dirigé par un générateur de fréquence qui sera adapté en fonction de la fréquence de la NanoBoard.
Partie informatique:
Après avoir pris connaissance du sujet, nous avons fait l'analyse de celui-ci. ensuite nous avons testé les fonctions fournis et commencé à les modifier. voici un exemple de modification avec la page web:
- Avant modification
<html> <head> <title>LEDs</title> </head> <body> <script language="javascript"> var couleurs=['vert','vert','vert','vert','vert','vert','vert','vert',]; function changeCouleur(id){ if(couleurs[id]=='vert'){couleurs[id]='rouge';} else{couleurs[id]='vert';} var image=document.getElementById('led'+id); image.src='/cercle.php?couleur='+couleurs[id]; }
- Après modification
<html> <head> <title>LEDs</title> </head> <body> <script language="javascript"> var couleurs=[]; function changeCouleur(id){ if(couleurs[id]=='rouge'){couleurs[id]='vert';} else{couleurs[id]='rouge';} var image=document.getElementById('led'+id); image.src='/matrice/cercle.php?couleur='+couleurs[id]; }
ici on a modifié le chemin en ajoutant matrice et les couleurs des LEDs et afin d'afficher toutes la matrice des LEDs nous avons rajouté 4 LEDs supplémentaires et nous avons dupliqué pour obtenir 8 lignes de 8 LEDs.
Mercredi 28 Mars 2012
Partie électronique:
Lors de cette deuxième séance, nous avons géré le systeme mémoire qui stock les informations émis avant la sélection des colonnes. Ce systeme memoire à été construte grace à 8 bascules D, dont le CLK est relié à un GND,l'entrée D[7..0] est reliée a la sortie d'un multiplexeur qui selectionne la memoire dans laquelle on vas stoker les données.
Partie informatique:
Nous avons configuré le PORT SERIE afin de pouvoir communiquer avec le demon,pour le faire il nous a fallu modifier
- define SERIAL_DEVICE "/dev/ttyUSBO" dans le programme port-série cette opération consistait à remplacer la donnée qui était présente par UBSO,ensuite nous avons compilé et exécuté.
Nous avons modifié le programme CGI_BIN en virant toutes les fonctions non utilisées ici l'objectif est fusionné les programmes CGI_BIN et test du demon afin de récupérer des données et les transmettre par la liaison serie.
Mercredi 04 Avril 2012
Partie électronique:
Pour cette derniere seance, nous avons modifié le systeme memoire qui initialement, avait sur sont entrée C, VCC. nous avons relié les broches C des memoires et du compteur assigné au multiplexeur des memoires, à la sortie du composant qui simule un bouton poussoir car le bouton poussoire de la NanoBoard necessite qu'on apuis à une frequence precise.
Partie Informatique:
Pour cette séance nous avons terminé la fusion des deux programmes,celui de CGI-BIN et du port série; nous avons aussi modifié le programme html afin de pouvoir envoyer les bytes via le port série.
Dans le programme CGI-BIN nous avons ajouté 3 bibiothèques,et deux constantes qui étaient dans le programme port série; ensuite dans le Main() nous avons fait deux boucles for imbréquées afin de pouvoir afficher les 64 Leds et à cela il nous a fallu faire un décalage vers la gauche.