BG PROD

Création d'un décompte sur une matrice de LED

L'image est morte, je rigole !
Affichage du chiffre 3 sur la matrice de LED
L'image est morte, je rigole !
Le logo de l'ISIMA sur le GLCD

Nous nous sommes mis à travailler sur le projet le Mardi 21 Janvier mais jusqu’au Jeudi 23 nous ne sommes pas parvenus à faire fonctionner l'exemple LedBlinking. Nous avons installé le driver ainsi que les programmes associés : mikroProg Suite For PIC qui est une interface avec la carte et mikroC PRO for PIC qui est notre IDE. Ensuite nous avons ouvert le projet LedBlinking, puis changé la montre (20Mhz) et changé le modèle (P18F452). Au branchement de la carte les voyants POWER et USB se sont allumés et une faible lueur a jaillit d'une des LED de la matrice. Lorsque nous avons chargé le programme sur le MCU cette LED "défectueuse" clignote une fois très faiblement sans qu'il ne se passe quoi que ce soit.

Pour essayer de trouver la source du problème nous avons essayé de changer le type de MCU mais le logiciel nous dit bien que le bon est le P18F452, nous avons changé de PC (OS plutôt) pensant que c'était dû à un problème de driver, nous avons essayé avec tout un tas d'autres programme, etc. Lorsque l'on s’est documenté sur internet, nous avons bien vu qu'une simple « compilation écriture » ou pression sur Ctrl+F11 devait suffire à faire tout le travail mais chez nous la partie logicielle ne renvoie aucune erreur et la partie matérielle ne répond pas (hormis un sursaut faible de la LED faiblement allumée). Nous nous sommes donc rendu dans le local d’ISIBOT et les conclusions ont été rapides : le EasyPIC 4 était défectueux, nous en avons donc reçu une nouvelle ainsi qu’un nouveau quartz de 8Mhz par la même occasion. Nous nous sommes ainsi lancés dans la programmation le jeudi 23 janvier.

Nous nous sommes ainsi lancés dans l’élaboration de notre alphabet numérique et avons ainsi pu découvrir le fonctionnement pratique de la matrice de diodes. Après avoir déterminé un style adapté à la matrice 4*8 pour chaque chiffre nous les avons codés et testés. Tout fonctionnait parfaitement excepté les LED RA4, RA6 et RA7. Effectivement RA6 et RA7 sont utilisées pour l’oscillateur et non pour les entrées/sorties. On nous a donc conseillé de considérer ces LED comme des « pixel mort » et de faire comme s’ils fonctionnaient mais nous avons continué à chercher un moyen d’utiliser ces LED. Ainsi nous avons pu mettre en place un programme de compte et de décompte de 0 à 9 secondes. Nous nous sommes ensuite intéressés au reste du matériel et avons aussi réussi à faire afficher le logo de l’ISIMA sur l’écran GLCD.

Utilisation des LED simples et RGB

L'image est morte, je rigole !
Branchement de la LED RGB

Nous disposons à présent d’une LED RGB à quatre pattes, de six résistances identiques et de deux LED dites classiques. Après avoir reçu la LED RGB nous l'avons branchée en série avec les résistances associées nous avons réussi à faire clignoter chaque couleur allant de l'intensité la plus faible à l'intensité la plus forte. Les deux ports PWM correspondent au port RC1 et RC2. N'ayant que deux port PWM nous ne pouvons donc utiliser que deux couleur à la fois nous avons choisi dans un premier temps d'utiliser la LED rouge et la LED verte.

Afin d'utiliser le maximum de possibilités de la LED RGB nous avons décidé de faire une fondue de la couleur verte à la couleur rouge puis inversement en passant par toutes les gammes d'intensité disponibles. La prise en main de la librairie dite PWM a été assez rapide. En effet une fonction très simple permet de régler le « duty » : paramétrable de 0 à 255 cela règle la largeur d’impulsion de RC1 et RC2 respectivement de 0 à 100%. Il a alors été assez aisé d’établir des mélanges de couleur.