Sommaire {{toc}} h1. *But du projet* Ce premier mini-projet avait pour objectif de concevoir et tester un panneau led, nous avions donc à disposition le matériel physique permettant d'assembler le panneau led et le matériel logiciel (CodeBlocks, SmarTTY, console Raspberry) pour faire en sorte que le panneau led puisse fonctionner correctement. h2. *Liste du matériel utilisé* 1 panneau 1 bornier pour le shield 2 connecteurs HE10 2 mètres de nappe Toolchain disponible à partir d'une clé USB 1 clé USB wifi 1 fer à souder 1 oscilloscope 1 voltmètre h3. *Tâches réalisées et répartition* Theo Coignet Installer/configurer Raspbian Jessie Installer la chaîne de compilation Tester la chaîne de compilation Comprendre la commande d'une LED, d'une ligne de LED, et d'une rangée Réaliser des algorithmes, puis coder, tester et débugger Hugo Cheveau Tester les entrées/sorties Comprendre l'interconnexion des différents matériels Fabrication du boîtier LED Mesurer/relever des signaux électriques h3. *Déroulement des activités* * +Installer/configurer Raspbian Jessie+ Tout d'abord, il faut installer l'image iso de la Raspberry qui va lui être implémenter par une carte SD. On installe donc l'utilitaire win32 afin de pouvoir procéder à l'installation de l'image sur la carte SD. Suite à cela l'accès à la console de la Raspberry est disponible, mais il faut tout de même vérifier que la Raspberry soit bien à jour et que le SSH soit bien présent. Pour faire ceci il faut d'abord entrer la commande "apt-get update" qui met à jour les données de la Raspberry et "service ssh status" pour vérifier le SSH. * +Tester les entrées/sorties+ Nous avons tester la connectivité du panneau en utilisant un Oscilloscope !Oscilloscope.png! * +Comprendre l'interconnexion des différents matériels+ Vérification des liaisons effectué entre le panneau et la Raspberry * +Fabrication du boîtier LED+ Pour commencer nous nous sommes servi du carton comme support pour le panneau led en lui créant un espace suffisant en découpant certaines parties du carton et en enlevant le polystyrène. Ensuite nous avons relié les nappes à la carte mère du panneau, puis nous avons dénuder et souder des câbles qui font partis de l'alimentation. !NappesLed.png! Après cela nous avons mis des étiquettes sur chacune des broches de la Raspberry pour les identifier plus facilement et nous avons placé les deux câbles que nous avions préparés sur les broches 22 et 23 !Raspberry.png! * +Installer la chaîne de compilation+ Afin de pouvoir mettre des programmes servant à afficher des messages sur le panneau led, on installe la chaîne de compilation CodeBlocks qui va permettre de réaliser les programmes ainsi que SmartTY qui va servir à entrer dans la console Raspberry pour pouvoir exécuté le programme dans le panneau led * +Tester la chaîne de compilation+ A partir de Codeblocks, nous testons des programmes déjà préparés par les professeurs. Comme par exemple un programme permettant au panneau d'afficher le message bonjour. Pour cela il faut déjà télécharger le fichier c contenant ce programme, le mettre sur CodeBlocks et cliquer sur "build" puis faire un "rebuild" afin d'obtenir l’exécutable du fichier contenant le programme. Ensuite il faut glisser l'exe du fichier sur la console de la raspberry et lui assigner les droits d’exécutions avec "chmod +x bonjour", le panneau affiche alors "bonjour". !codeblock1.png! !codeblock2.png! !codeblock3.png! * +Mesurer/relever des signaux électriques+ On a utilisé un voltmètre pour être sur que le panneau led fonctionne correctement !Voltmètre.png! * +Comprendre la commande d'une LED, d'une ligne de LED, et d'une rangée+ Nous avons dû comprendre comment un programme fonctionnait à travers le panneau led en visualisant si le chemin faisait une ligne, une rangée et aussi vérifier le temps de pause entre chaque allumage de led. * +Réaliser des algorithmes, puis coder, tester et débugger+ En réalisant les mêmes étapes qu'avec les fichiers c de tests, il a fallut que nous modifions le programme afin de pouvoir afficher d'autres messages !PanneauLed2.png! h3. *Programme en C/C++* Voici le code en C/C++ du programme correspondant au cas d'utilisation numéro 1