IMA4 2020/2021 EC4

De Wiki d'activités IMA

Objectif

Vous allez travailler sur une carte de développement ATXMEGAC3-XPLD. L'idée est de la transformer en une clef USB avec visualisation du niveau de remplissage.

Vous aurez donc à écrire un programme pour le micro-contrôleur ATXmega384C3 avec la LUFA.

Basez-vous sur l'exemple USB Storage de la LUFA. Ajoutez le code pour gérer les LED de la carte. Supposez que votre clef est configurée avec une partition et un système de fichiers VFAT sur cette unique partition. Vous devez calculer le pourcentage d'espace libre sur la clef en analysant la "File Allocation Table" et commander les LED en conséquence : LED verte si clef utilisée à moins de 25%, plus une LED jaune si à moins de 50%, plus encore une LED jaune si à moins de 75% et enfin plus la LED rouge si à plus de 75%.

Carte ATXMEGAC3-XPLD et câble de connexion

Matériel

Dans ce projet, je vais travailler sur une carte de développement ATXMEGAC3-XPLD, la figure ci-dessous montre quelques fonctionnalités de la carte : Atxmega384c3.jpg

Cahier de charge

Durant cette épreuve, je vais écrire un programme pour le micro-contrôleur ATXMEGAC3-XPLD avec la LUFA. L'objectif est de la transformer en une clef USB avec visualisation du niveau de remplissage. Pour cela, je vais procéder en suivant les étapes:

  • Adapter le makefile à la carte;
  • Ajouter le code pour gérer les LED de la carte;
  • Ecrire le programme qui permet d'afficher le niveau de remplissage;
  • Commander les LEDs en fonction du output de notre programme;

Travail réalisé

LUFA

Le projet sera inspiré de la démo Masstorage de la LUFA. Tout d'abord je commence par adapter le fichier makefile à ma carte

Makefile.png

Ensuite, je mets la carte en dfu-mode

Dfu lsusb.png

Puis je télvérse la demo massStorage Upload program.png

LUFA lsusb.png

Documents Rendus

Fichier:MassStorage.zip