Simulation USB dans Proteus VSM
L'option de simulation USB dans Proteus VSM est une première mondiale car elle vous permet de simuler totalement ce lien de communication.
> Simulation USB
Avec la simulation USB,vous pouvez concevoir entièrement votre propre périphérique USB dans Proteus (en utilisant un des microcontrôleurs supportés), puis tester le firmware et le hardware en simulant le circuit. La communication est modélisée au niveau driver de W indows!
Toutes les requêtes et les réponses peuvent être affichées dans un "analyseur des transactions USB".
Généralités :
![]() |
La simulation USB permet de simuler entièrement le périphérique USB des microprocesseurs qui possèdent cette fonctionnalité. La majorité des périphériques rencontrés sont de type "device peripheral" plutôt que "host controller", c'est pourquoi la version actuelle de Proteus VSM simule les devices USB (reliés au socket USB de l'ordinateur), et plus spécifiquement les classes :
La prise en compte d'autres classes de périphériques est en cours (ainsi que d'autres variantes de microcontrôleurs).
|
Comment fonctionne la simulation USB ?
1. Supposons que le schéma dans Proteus représente un périphérique (par exemple un memory stick USB ou une souris USB).
2. Un élément particulier du schéma, appelé "Connecteur USB", est connecté au port USB d'un microcontrôleur; le fait de cliquer sur cet élément du schéma pendant la simulation est équivalent à plugger le device sur le port USB de l'ordinateur PC.
3. Le microcontrolleur exécute le firmware par l'intermédiaire du schéma, et la communication USB se fait directement avec le système d'exploitation, comme si vous connectiez un périphérique physique!
- Licence nécessaire pour accéder à cette fonctionalité.
1. Une licence pour simuler les microcontrôleurs qui incorporent un périphérique USB
2. Une licence de l'analyseur de transaction USB.
Ceci permet de contrôler et d'analyser le traffic sur le lien USB ainsi que les accès aux registres pendant la simulation.
- Lancer une simulation USB:
En pratique, lancer une simulation USB diffère légèrement des autres simulations VSM. La procédure typique est décrite ci-dessous.
Installez les drivers USB - ils sont fournis en standard lors de l'installation de Proteus.
Dessinez votre schéma avec ISIS, pour le périphérique USB à réaliser. Rappelez-vous de placer et de connecter l'élément connecteur USB dans votre schéma.
Prenez le firmware de la classe de périphérique USB à implémenter et modifiez-le pour correspondre à votre application. Les fabricants fournissent des firmwares qui gèrent les communications bas niveau gratuitement - par exemple, le code USB pour Microchip Technologies PIC18 peut
être téléchargé ici.
Affectez le fichier COF/HEX à la propriété "program" du microcontrôleur dans ISIS.
Lancez la simulation via le bouton PLAY en bas de l'application ISIS.
Cliquez sur le connecteur USB du schéma pour connecter le périphérique USB - ceci est équivalent à connecter
physiquement le périphérique à votre PC.
Utilisez l'analyseur de transactions USB pour contrôler les échanges et le traffic USB pendant la simulation.
Deboguez et testez le firmware de votre circuit comme dans toute simulation VSM - notez que le protocole USB inclut un
time-out de 30 secondes (la simulation doit répondre aux demandes en moins de 30 secondes).
Stoppez la simulation via le bouton STOP en bas de l'application ISIS.
Adaptez votre firmware ou le 'hardware' et relancez la simulation.
Une fois vos tests terminés, concevez votre circuit via la commande 'Netlist vers ARES'.
Variantes supportées :
Ci-dessous, la liste des microcontrolleurs supportés par la simulation USB :
PIC18F4450, PIC18F4553
PIC18F2450, PIC18F2455, PIC18F2458, PIC18F2550
PIC18F2553, PIC18F4450, PIC18F4455, PIC18F4458
AT90USB646, AT90USB1286
Analyseur de transactions USB :
L'analyseur est un produit qui nécessite une licence dédiée de Proteus. Il affiche toutes les requètes et les réponses du périphérique USB. Il fournit une aide appréciable pour la compréhension du protocole USB et la vérification de l'implémentation du firmware. La fenêtre principale de l'analyseur est divisée en deux parties: la liste des requètes à gauche; à droite, la description. (voir ci-dessous)

![]()
La simulation USB dans Proteus
![]()
La liste des requètes, à gauche, affiche toutes les requètes sous forme arborescente. Il existe trois niveaux de requètes : requètes IRP (IOCTL, MJ_PNP), requètes transaction (IN, OUT, SETUP) et les opérations sur registres associées à une transaction donnée.
La description des requètes, à droite, fournit une information tabulaire sur l'item sélectionné dans la liste.
La barre d'outils, en haut de l'analyseur, regroupe des options pour lancer le journal, arrêter le journal et l'effacer.

