IMA4 2020/2021 EC2 : Différence entre versions
(→Correction schéma) |
|||
Ligne 47 : | Ligne 47 : | ||
= Correction schéma = | = Correction schéma = | ||
− | Malgré les nombreuses demandes de configurer l'alimentation du AT90USB647 comme sur la figure 22-7 de la documentation [https://ww1.microchip.com/downloads/en/DeviceDoc/doc7593.pdf], cela n'a jamais été fait. | + | Malgré les nombreuses demandes de configurer l'alimentation du AT90USB647 comme sur la figure 22-7 de la documentation [https://ww1.microchip.com/downloads/en/DeviceDoc/doc7593.pdf], cela n'a jamais été fait. |
+ | |||
Voir le fichier Fritzing ci-dessous. J'ai rajouté une résistance de 0 Ohm vers UVCC qu'il ne faudra pas souder conformément à la figure 22-7, il faudra souder la résistance de 0 Ohm vers VBUS toujours selon la même figure. | Voir le fichier Fritzing ci-dessous. J'ai rajouté une résistance de 0 Ohm vers UVCC qu'il ne faudra pas souder conformément à la figure 22-7, il faudra souder la résistance de 0 Ohm vers VBUS toujours selon la même figure. | ||
+ | |||
J'ai remplacé quelques composants (quartz et conencteurs). J'ai préplacé les composants sur la vue PCB. | J'ai remplacé quelques composants (quartz et conencteurs). J'ai préplacé les composants sur la vue PCB. | ||
[[Fichier:2021SchemaUSBh_USBd.zip]] | [[Fichier:2021SchemaUSBh_USBd.zip]] |
Version du 31 mars 2021 à 17:26
Sommaire
Objectif
En vous appuyant sur le travail déjà réalisé pour les PeiP (voir [1]) réalisez un "key-logger" à base de mémoire AT45DB641E-SHN2B-T.
L'idée est d'ajouter au circuit un second ATMega16u2 connecté au premier en série. Ainsi vous pourrez programmer un ATMega16u2, avec la bibliothèque LUFA, en tant que maître USB pour lire le clavier et vous pourrez programmer le second en mode périphérique USB pour converser avec le PC. Les touches lues sont passées par le bus série et transmises au PC tout en étant stockées dans la mémoire. Une interface USB spéciale permet de télécharger les touches enregistrées.
Il est nécessaire de concevoir une nouvelle carte. Commencez par cela avant de passer à la programmation.
Planning prévisionnel
- 12/02 - 07/03 : étude du sujet, prise en main du logiciel Fritzing, commencer de concevoir le schématic;
- DATE: conception et routage du PCB, test;
- DATE : Soudage de la carte, test;
- DATE : Programmation ;
Travail réalisé
La première partie de mon travail est de concevoir la carte électronique sur Fritzing. Après avoir fait des recherches sur le sujet, j'ai trouvé que je ne connaissais pas grand-chose à ce sujet. J'ai posé beaucoup de questions à Monsieur Redon et il a patiemment répondu à mes doutes un par un.
Je dois programmer un ATMega16u2, avec la bibliothèque LUFA, en tant que maître USB pour lire le clavier et vous pourrez programmer le second en mode périphérique USB pour converser avec le PC:
- 1 ATMega16u2 pour lire le clavier (mode USB hôte)
- 1 ATMega16u2 pour converser avec le PC (mode USB périphérique)
Dans la bibliothèque de fichiers LUFA [2], j'ai trouvé qu'ATMega16u2 n'autorise que la configuration du USB device. Monsieur Redon m'a suggéré d'utiliser un AT90USB647 pour l'autre MCU alors:
- 1 ATMega16u2 pour lire le clavier (mode USB hôte)1 AT90USB647 pour lire le clavier (mode USB hôte)
- 1 ATMega16u2 pour converser avec le PC (mode USB périphérique)
Schéma électronique du périphérique USB DEVICE :
- Pour la partie 1, il s'agit du circuit de réinitialisation MCU;
- Pour la partie 2, il s'agit du connecteur du téléchargeur;
- Pour la partie 3, il s'agit de l'indicateur de communication du port série;
- Pour la partie 4, il s'agit de l'interface USB qui communique avec le PC et du port d'alimentation;
- Pour la partie 5, il s'agit du microcontrôleur ATEMEGA16u2;
- Pour la partie 6, il s'agit du connecteur de communication série (il se connecte au périphérique USBHost);
- Pour la partie 7, il s'agit du circuit de l'oscillateur à cristal;
Schéma électronique du périphérique USB HOST :
- Pour la partie 1, il s'agit du connecteur du téléchargeur;
- Pour la partie 2, il s'agit de la puce mémoire AT45DB;
- Pour la partie 3, il s'agit du connecteur de communication série (il se connecte au périphérique USBDevice);
- Pour la partie 4, il s'agit du circuit de réinitialisation MCU;
- Pour la partie 5, il s'agit du microcontrôleur AT90USB647;
- Pour la partie 6, il s'agit du circuit d'horloge;
- Pour la partie 7, il s'agit du connecteur USB HOST (il se connecte à un clavier standard et alimente le clavier);
Documents Rendus
Correction schéma
Malgré les nombreuses demandes de configurer l'alimentation du AT90USB647 comme sur la figure 22-7 de la documentation [3], cela n'a jamais été fait.
Voir le fichier Fritzing ci-dessous. J'ai rajouté une résistance de 0 Ohm vers UVCC qu'il ne faudra pas souder conformément à la figure 22-7, il faudra souder la résistance de 0 Ohm vers VBUS toujours selon la même figure.
J'ai remplacé quelques composants (quartz et conencteurs). J'ai préplacé les composants sur la vue PCB.