« I2L 2023 Groupe3 » : différence entre les versions
Ligne 119 : | Ligne 119 : | ||
=Démonstrations= | =Démonstrations= | ||
[[Fichier:Part 1 défilement.jpg|gauche|vignette|192x192px|Défiement d'un message (partie 1)]] | [[Fichier:Part 1 défilement.jpg|gauche|vignette|192x192px|Défiement d'un message (partie 1)]] | ||
[[Fichier:Part 2 defilement.jpg | [[Fichier:Part 2 defilement.jpg|vignette|208x208px|Défilement d'un message (partie 2)|néant]] | ||
Démonstration du défilement d'un message sur une seule ligne | Démonstration du défilement d'un message sur une seule ligne | ||
Version du 18 octobre 2023 à 14:58
Proposition de système
Un écran LCD à 2 lignes à contrôleur HD44780 affichera un message qui défilera de la gauche vers la droite ou du bas vers le haut.
Dans un premier temps, le message affiché sera stocké en dur dans la mémoire. Ensuite, le message pourra être entré au clavier. Enfin, un message stocké en mémoire pourra être affiché lorsque la connexion USB ne sera pas détectée.
Matériel requis :
- Le microcontrôleur ;
- Un écran LCD à 2 lignes à contrôleur HD44780 ;
- 2 LED ;
- 1 bouton (pour afficher le message de la première étape) ;
- une batterie ;
- 1 connecteur USB A.
Contre-proposition
Le périphérique USB doit être de type spécifique (classe 0) et utiliser un point d'accès de volume, vous pouvez vous appuyer sur cet exemple LUFA de base : Média:LUFA_Minimal.zip.
Pour télécharger le texte à faire défiler vers la carte, vous écrirez une application avec la bibliothèque libusb
.
Proposition définitive
Répartition du travail
Carte
Seconde version de la carte pour changer le modèle du potentiomètre.
La position du connecteur de l'écran sur la carte n'est pas bien réfléchie. Du coup l'écran recouvre les LED et les boutons. Pour éviter le problème la carte a été rallongée avec des prolongateurs.
Par ailleurs durant les journées des 28 et 29 septembre il n'avait pas été possible de faire fonctionner les écrans LCD. La carte avait été incriminée (avec le contrôle du contraste LCD). En fait c'était le code de l'étudiant SE qui était bogué. Avec un code correct, comme la photo ci-dessus le montre, l'affichage fonctionne sans problème : Média:I2L-2023-code-LCD.zip.
Code
Tests de la carte
Après avoir essayé de faire fonctionner l'écran LCD, nous avons constaté que rien ne se passait. Même après vérification de votre part.
Conception
Configuration USB
Après avoir modifié le Minimal, on obtient:
Device Descriptor:
bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x4242 USB Design by Example idProduct 0x0001 bcdDevice 0.01 iManufacturer 1 LUFA Library iProduct 2 LUFA Minimal iSerial 220 3423031383635110A1C0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 0x0019 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 5
Réalisation
Démonstrations
Démonstration du défilement d'un message sur une seule ligne
Rendus
Projet KiCAD : Fichier:I2L-2023-Carte-G3.zip
Programmes : Fichier:I2L-2022-Programmes-G3.zip