USB Amateur
X.FenardL'USB accessible facilement
Normalement il faut un circuit spécialisé, avec l' interface intégré pour utiliser l'USB, la disponibilité des composants n'est pas évidente.
Il est possible de réaliser un interface USB avec un circuit micro contrôleur sans USB sous certaines conditions. Le montage est ridiculement simple, peu coûteux et peu être réalise sur une carte prototype.
L'USB fonctionne sous trois vitesse, cette interface ne fonctionne qu'avec la version low speed, soit 1,5Mbits/s.
Naturellement, sans USB, la gestion est faite par programme, Igor Cesko (
www.cesko.host.sk ) l'a fait. C'est un travail pointu, possible uniquement avec un processeur rapide, l'AVR d'Atmel. Ses premiers essaies ont été fait avec des PIC, mais ils ne sont pas assez rapide.L'AVR a un cœur plus puissant tant en vitesse que dans sa structure interne par rapport au PIC. C'est pour cela qu'il a été utilisé dans le LCMeter .
Les fonctions
Plusieurs fonctions sont disponibles:
Evidement les performance ne seront celle d'un USB a 12Mbips/s, mais pour des applications simple cette vitesse est suffisante.
Les source sous licence GNU du programme pour l'AVR sont disponibles, des lors des applications personnelles sont envisageable.
Le montage sur plaque d'essai ne pose aucun problème.
Un circuit imprimé peut être fait, cette version n'a pas l'interface infra rouge, il est didactique et utilise la version DIL.
Attention, sur cette version les signaux PB0 et PB1 sont inversés par rapport a la version d'origine, le programme doit être modifié en conséquence.
La programmation du circuit
Le programme fbprg16.exe a été utilisé, le schéma est dans le programme. Aucun montage n'est necessaire, il faut simplement relier le circuit sur le port parallele. Sur le dessin du circuit imprimé, les pins a relier sont repérées par un double pastillage. Il fonctionne sous W98, peut être pas sous XP ou 2000. Dans ce cas, le plus simple reste de lancer le PC sous dos pour programmer le composant.
Montage
Les résistances pour les LED sont de 470 ohms. La résistance entre D- et Vcc est de 1,5Kohms, elle sera placée en dernier.
Le quartz a une valeur de 12MHZ, l'AVR est "over clock " puisque le fonctionnement normale est a 10MHZ.
Le processeur est sur support, pour le premier test il n'est pas monté. On vérifie qu'il n'y a pas de court-circuit entre le plus et le moins. En branchant l'USB la LED rouge de power doit s'allumer. Le PC ne détecté rien puisque la résistance de 1,5K n'est pas montée.
On peut utiliser l'alimentation USB et la platine pour programmer le circuit. Relier les pins sur le connecteur parallèle, la liaison avec l'oscillateur n'est pas nécessaire puisqu'un quartz est en place.
Une fois la programmation terminé, il ne reste plus qu'a placer la résistance de 1,5Kohms.
Montage de la version ORIGINALE.
Sur le site de Igor Cesko (
www.cesko.host.sk ) plusieurs fichiers décrivent l'installation.Voici un resumé.
Il faut faire le montage de base, attention le cablage est DIFFERENT de celui presente ci dessus.
puis récupérer le fichier: IgorPlugUSB.zip sur le site: http://www.cesko.host.sk/
Programmer le circuit avr avec le fichier HEX: usb90s23x3.hex
Mettre tous les fichiers de IgorPlugUSB.zip dans le meme repertoire.
A la mise sous tension du module (branchement), Windows va demander le fichier IgorPlug.inf, il utilisera IgorPlug.sys.
Une fois que l'installation est terminée lancer: IgorPlugUSBdemo.exe
La DLL
Avec la IgorUsb.dll il ewt possible de faire fonctionner l'AVR avec son programme.
Le principe d'interface pour les langages Delphi, C, VisualBasic sont dans IgorPlugUSBdoc.zip
A suivre
Ce montage fonctionne correctement et peut servir pour la réalisation d'autres applications (programmation de micro) sans composants spécifiques et avec un soft ouvert.