Institut Supérieur
d'Informatique de Laboratoire d'Informatique,
Modélisation et de de Modélisation et
leurs Applications d'Optimisation des Systèmes
Complexe des Cézeaux Complexe des Cézeaux
BP 125 - 63173 Aubière Cedex 63173 Aubière Cedex
Rapport d'ingénieur
projet de 2ème année
Filière F1 : Informatique des Systèmes Embarqués
Implémentation du protocole USB
sur la carte AT91SAM7S256
Avec la participation du CEMAGREF
Présenté par : Sylvain Chalmin
Bacem El-Idilbi
Durée : 100h
Soutenu publiquement le 26 mars 2009 à 8h
Responsable ISIMA – LIMOS : Aurélien Jacquot octobre 2008 - mars 2009
Remerciements
Nous tenons à remercier les chercheurs du LIMOS, pour la patience dont ils ont su faire
preuve lors de nos fréquentes visites à M. Jacquot.
Nous voulons aussi remercier notre professeur, M. Hou, pour nous avoir conseillé lors de
la programmation de la carte.
Enfin, nous tenons particulièrement à remercier M. Jacquot pour son inépuisable talent de
pédagogue et son incroyable disponibilité.
CHALMIN & EL-IDILBI - III - Projet de deuxième année
Table des figures
Figure 1 : Descriptions des différentes classes.....................................................................2
Figure 2 : Logo officiel USB...................................................................................................3
Figure 3 : Vue de la carte AT91SAM7S256...........................................................................4
Figure 4 : Architecture simplifiée de la carte AT91SAM7S256..............................................5
Figure 5 : Architecture simplifiée du port USB.......................................................................7
Figure 6 : Automate des différents états de l'USB.................................................................9
Figure 7 : Chronogramme de traitement d'un paquet de commande..................................11
Figure 8 : Chronogramme du traitement de données entrantes..........................................12
Figure 9 : Chronogramme du traitement de données sortantes..........................................13
Figure 10: Chronogramme d'une poignée de mains bloquante avec données entrantes...14
Figure 11 : Chronogramme d'une poignée de mains bloquante avec données sortantes...14
Figure 12 : Schéma synoptique de l'interfaçage du capteur de température......................15
CHALMIN & EL-IDILBI - IV - Projet de deuxième année
Résumé
Beaucoup de systèmes embarqués utilisent encore le port série (ou RS-232) pour
communiquer alors que ce port est en train de disparaitre des ordinateurs. La majorité des
micro-contrôleurs intègrent pourtant un module USB qui est le port le plus présent dans
les machines actuelles, donc le passage du RS-232 à l'USB semble pertinent.
Cette transition a d'ailleurs été prévue par les développeurs de l'USB qui ont mis en place
différentes classes dont la CDC (Communication Device Class). Il y a deux raisons à la
lente adoption de l'USB : les développeurs se sont dans leur majorité habitués au port RS-
232 (et aux bibliothèques connexes) et la complexité de l'USB rend plus difficile la
réalisation de solutions équivalentes à celles existantes déjà pour le RS-232.
Il nous a donc été demandé de réaliser une bibliothèque en langage C facilitant
l'implémentation de l'USB. Pour cela, M. Jacquot nous a fourni la carte de développement
AT91SAM7S256 du fabriquant Atmel, carte actuellement utilisée pour les études de projet
du LIMOS.
Mots clés : AT91SAM7S256, Atmel, CDC, RS-232, système embarqué, USB
CHALMIN & EL-IDILBI - V - Projet de deuxième année
1 / 25 100%