SE2a4 USB 2023/2024

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

Cahier des charges

Vous devez réaliser un périphérique USB permettant de contrôler le démarrage et l'arrêt d'ecrans de stations de travail. L'idée est de ne pas imposer de modification sur l'écran. Le dispositif est sensé appuyer sur le bouton de l'écran avec un servo-moteur et contrôler l'état de l'écran avec un photo-récepteur.

Pour le tutorat USB il est juste demandé de simuler le dispositif avec un servo-moteur et un photo-récepteur, pour la partie électronique l'ATmega8u2 d'un Arduino Uno Rev3 va être utilisé et la partie mécanique n'est pas demandée. Vous poursuivrez cet exercice au prochain semestre en projet système et réseau. En projet vous aurez à concevoir et réaliser une carte et à réfléchir à la partie mécanique (il y aura bien entendu aussi des aspects système et réseau).

La difficulté avec l'Arduino Uno est que les entrées/sorties de l'ATmega8u2 ne sont pas accessibles hormis l'UART. Vous aurez donc aussi à programmer l'ATmega328p pour accéder au servo-moteur et au photo-récepteur. Il faut aussi prévoir une communication UART entre les deux puces.

Le périphérique USB sera implanté à l'aide de la bibliothèque LUFA sous la forme d'un périphérique spécifique. La gestion du périphérique doit se faire au travers d'une application sur PC utilisant la bibliothèque libusb-1.0.

Programmation de l'ATmega8u2

Commencez par récupérer le code de la bibliothèque LUFA. Créez un sous-répertoire SE2a4 dans cette bibliothèque et installez-y la démonstration minimale Media:2023-SE2a4-Minimal.zip.

Programmation de l'ATmega328p

Application PC