SE4Binome2024-1

De projets-se.plil.fr
Aller à la navigation Aller à la recherche

Lien git : https://gitea.plil.fr/lgrevin/PICO_Binome1.git

Réalisation d'un shield arduino

Nous avons réalisé un bouclier pour Arduino Uno afin d'implémenter un système d'ordonnancement, ce qui nous permettra de simuler le fonctionnement d'une carte mère.

Ce bouclier est conçu pour connecter jusqu’à 5 périphériques SPI via des connecteurs IDC HE10 (8 broches), en intégrant des lignes spécifiques pour la réinitialisation et l’interruption de chaque périphérique, assurant ainsi un contrôle optimal.

En plus des connexions SPI, le bouclier comprend également une mémoire, avec deux options de stockage possibles : une carte micro-SD via un connecteur Molex 10431 ou une puce mémoire AT45DB641E, laissant la flexibilité de choisir celle qui sera soudée selon les besoins. Un convertisseur de niveau (74LV125) est également intégré pour assurer la compatibilité de tension entre l’Arduino (5V) et les mémoires (3,3V), garantissant une communication stable entre les composants.

Schématique et Routage

Schématique du PicoShield
Routage du PicoShield

Shield Brasé

Shield fini

Shield sur une carte Arduino

Vérification des Leds et de la Carte SD

Code Arduino pour vérifier si les Leds fonctionnent :

https://gitea.plil.fr/lgrevin/PICO_Binome1/src/branch/main/VerificationArduino/verif.c

Nous avons écris un petit programme Arduino pour allumer les leds alternativement et donc vérifier leurs fonctionnement.

Vérification de la détection de la carte SD :

Nous avons rencontré des difficultés pour détecter la carte SD. Nous avons essayé plusieurs solutions, notamment en vérifiant l’horloge de notre Shield. Pour cela, nous avons soudé des fils aux ports GND et SCK de la puce mémoire et envoyé un code SPI à l’Arduino pour analyser le signal à l’oscilloscope, mais cela n’a pas permis d’identifier le problème. Après avoir revérifié les soudures et repassé le fer à souder sur plusieurs connexions, nous avons finalement découvert qu’une résistance mal soudée était la source du problème.


Carte SD détectée
Carte SD détectée

Code ordonnanceur

Un ordonnanceur sert à gérer l'exécution des tâches dans un système temps réel, en assurant qu'elles s'exécutent dans un ordre optimal et respectent les délais. Cela garantit que les processus critiques reçoivent les ressources nécessaires pour fonctionner sans interruption, optimisant la performance et la réactivité du système.

https://gitea.plil.fr/lgrevin/PICO_Binome1/src/branch/main/Ordonnanceur

Réalisation d'une carte clavier

Nous avons choisi de faire une matrice de touche pour réaliser la carte clavier.

Cette matrice contient 8 colonnes et 4 lignes soit un total de 32 boutons. Nous avons également choisi d'ajouter des leds RGB une sur chaque ligne et chaque colonne

Datasheet des LEDs RGB:

https://docs.rs-online.com/988a/0900766b80e2903e.pdf

Consommation de la carte clavier

La Puissance totale maximale est de 5,55W.

Bilan de puissance (VCC = 5V)
Composant Courant Puissance
12xLEDS RGB 12x(30x3) mA 5,4W
ATMega328p 15 mA 75 mW
LED d'alim 15 mA 75 mW
TOTAL 1,11A 5,55W

Schématique & Routage

Carte Clavier Schématique
Carte Clavier Schématique
Carte Clavier routé

Brasure de la carte Clavier