MODULE
USB RAVAR FT232BM
L'intégration du protocole
USB dans les montages à microcontrôleurs
peut se révéler lourd et fastidieux à
mettre en
oeuvre, voir même,
risque de mobiliser une grande partie des ressources
systèmes. Des
circuits intégrés
spécialisés sont
maintenant disponibles au grand public, et
on les retrouve directement assemblés avec leurs composants
annexes sur des
modules prêt à l'emploi et relativement
économiques. Vous trouverez sur cette page une introduction
à la mise en œuvre de tels modules.
Pourquoi
le passage à l'USB ?
Le bus USB est maintenant devenu
standard, équipe tout les
nouveaux PC depuis bien des années, on ne peut pas dire de
même de la classique
liaison RS232 disponible sur la DB9,
je dirais même qu'elle à une très net
tendance
à devenir inexistante sur les PC
portables.
Un autre point non négligeable : c'est la vitesse de
communication
atteinte qui peut monter jusqu'a 1000 Kbd. On peut aussi parler de
l'abondance des prises USB
disponibles sur le pc, permettant le raccordement de plusieurs
montages, la
possibilité de personnaliser sa réalisation en
attribuant
un nom à son
interface et l'adjonction d'un numéro de série.
Dernier point, le bus USB est autoalimenté et peut fournir
un
courant assez
important pour alimenter totalement un petit montage à
microcontrôleur.
La
présentation
générale s'articulera autours du module USBMOD3,
qui integre le circuit intégré de type FTDI232BM,
compatible avec la norme USB1 et USB2.
Avant de
commencer et
pour éviter toutes confusions, je souhaite vous faire part
dès maintenant de la possibilité d'utiliser le
module de
deux manière différentes :
- Avec
le driver VCP
(Virtual COM Port), qui "simule" et
ajoute automatiquement un port RS232 au PC. L'accès
au port
sera transparent pour l'utilisateur et son pilotage se fera comme un
vrai port série. C'est la manière la plus simple
d'utiliser le module.
- Avec le driver D2XX:
Aucun port série directement adressable ne sera
ajouté
comme avec le driver VCP,
son pilotage en mode natif se fera à
l'aide d'un accès à une bibliothèque
de liaison
dynamique "DLL"
à l'aide des
logiciels de développement comme visual basic, delphi... En
revanche, cette méthode de pilotage permet d'exploiter au
maximum la vitesse de communication.
Dans tout
les cas les 2
drivers ne doivent pas cohabiter ensemble.
-
Téléchargement des drivers pour Windows :
|
- VCP
|
- D2XX
|
- MProg
qui permet la personnalisation du module (voir explications plus loin)
|
|
Les
autres drivers et utilitaires sont diponibles sur le
site du fabricant FTDI
|
NOTA : la suite du document
concernant la
présentation du module est une traduction partielle
du
datasheet original.
1. Caractéristiques
technique du module :
- Solution Haute vitesse USB /
UART sur un
seul module
- Basé sur un FTDI
FT232BM, circuit
intégré UART haute vitesse
- Connecteur type B USB
intégré
- Quartz 6 MHz
intégré sur la
platine
- EEPROM externe pour
l’énumération de données USB
|
- Aucun besoin de composants
passifs externes
- Module alimenté par
le bus USB
pouvant délivrer 450ma
- Brochage 32 broches Dual in line
parfait
pour le prototypage
- S’insère
dans un support standard
de circuit intégré 32 broches
|
2. Caractéristiques
technique du
circuit intégré FT232BM :
- Solution de transfert de
données
sur un seul circuit intégré multi fonctions
- Liaison RS232 de 300
à 1000KBs
- Liaison RS422/RS485 à
3000KBs
- Buffer (mémoire) de
réception de 384 bits et 128 en émission
- Prise en charge totalement
matérielle du contrôle de flux ou mode X-on/X-off
- Support de caractères
d’événement et de condition de saut de
ligne
- Contrôle de
transmission du buffer
automatique pour RS485
- Boîtier compact 32
broches MQFP
- Pré diviseur
d’horloge 6/48 Mhz
intégré, facilitant la conformité
d’émissions
- Régulateur 3.3V
intégré. Pas besoin de régulateur
externe
|
- flexible UHCI / OHCI / EHCI
- Compatible USB1.1 et USB 2.0
- USB VID, PID, numéro
de
série et description du produit pouvant être
contenu dans
une EEPROM Externe
Pilotes VCP
(port virtuel de communication) disponibles pour :
·
Windows
98, 98SE et ME
·
Windows
2000 et XP
· Windows CE **
· MAC OS-8 et OS-9
· MAC OS-X **
· Linux 2.4 et au
dessus
**
En cours de développement ou planification
Pilotes
FTD2XX
(USB Direct
Drivers + DLL)
·
Windows
98, 98SE et ME
·
Windows
2000 et XP
|
3. Améliorations
par rapport à
la version précédente :
Cette section
résume les
améliorations de la seconde
génération de module par rapport au circuit
intégré prédécesseur FT8U232AM.
Voici
les
points importants à retenir :
- Le
reset à la
mise sous tension est maintenant intégré et
accessible de
l’extérieur par la broche RSTI. Un reset externe reste possible en tirant
cette broche
à la masse. Si vous ne l’utilisez pas, connectez
cette broche
à V+ ou laisser la "en l'air"
- Plus
besoin de circuit d’oscillation externe RC pour
assurer la stabilité de l’oscillateur et de la
boucle PLL.
- Un
convertisseur de niveau électrique pour les
signaux de l’UART et de commandes et aussi
intégré afin
d’être compatible avec une tension
d’alimentation de 3.3V. En
effet le nouveau circuit dispose de broches
séparées
d’alimentation (VIO)
- Consommation
de courant réduite pendant le mode
Suspend, c
- utant
à 200uA (hormis la résistance de
rappel sur le bus USB de 1.5K)
- Programmation
personnalisée du timeout du buffer
de réception.
- Condensateurs
de découplages
intégrés sur la platine, ce qui permet de
simplifié le design du PCB et de gagner de la place.
- Nouveau
pré diviseur programmable afin d’obtenir
une plus grande variété de vitesse de
communication.
4. Brochage du
module :
5. Description
fonctionnel des broches :
Broche
|
Nom
|
Type
|
Description
|
1
|
G
|
PWR
|
Masse
|
2
|
GND
|
PWR
|
Masse
|
3
|
B+
|
PWR
|
Alimentation
provenant du bus USB
|
4
|
V+
|
PWR
|
Alimentation
du module 4.4V à 5.25V
|
5
|
ECS
|
I/O
|
EEPROM
– Sélection du composant
|
6
|
ECLK
|
I/O
|
EEPROM
– Horloge
|
7
|
EDAT
|
I/O
|
EEPROM
– Données
|
8
|
RSTI
|
IN
|
Reset.
Peut être piloté par un signal externe (niveau
bas). Pas
besoin de connecter cette broche à V+
|
9
|
EP
|
IN
|
Connectez
cette broche à RSTO ou à 3v3 afin de permettre le
processus d’énumération du circuit lors
de sa connexion
sur le bus USB. L’énumération est une
opération
effectuée par le PC afin de configurer un composant USB
|
10
|
RSTO
|
OUT
|
Sortie
du générateur interne de Reset.
|
11
|
3V3
|
OUT
|
Alimentation
régulée 3.3V fournie par le circuit
intégré.
|
12
|
VIO
|
PWR
|
Alimentation
de la circuiterie logique de l’UART. Tension comprise entre
3.3 et
5.25V.Cette broche doit être connectée
à 3V3 si la
tension des signaux logiques de l’UART doit se faire en 3.3V
ou
à V+ pour
des signaux en 5V.
|
13
|
V+
|
PWR
|
Alimentation
du module 4.4V à 5.25V
|
14
|
SLEEP
|
OUT
|
Cette
broche passe au niveau bas lors du passage en mode sommeil du module
|
15
|
RXLD
|
O.C.
|
Cette
broche permet de piloter une LED quand des données sont
reçues sur le bus USB
|
16
|
GND
|
PWR
|
Masse
|
17
|
TXLD
|
O.C.
|
Cette
broche permet de piloter une LED quand des données sont
envoyées sur le bus USB
|
18
|
PCTL
|
IN
|
Mettre
cette broche au niveau Bas si le module est auto alimentée,
ou
au niveau haut si l’alimentation est externe.
|
19
|
/PEN
|
OUT
|
Au
niveau Haut pendant la configuration du module, puis passe au niveau
bas Cette broche permet de piloter un mosfet à canal P afin
d’alimenter des périphériques externes
alimentés
par le bus USB en fin de configuration du module.
|
20
|
TXEN
|
OUT
|
Signal
de fonction de l’UART
|
21
|
/RI
|
IN
|
Signal
de fonction de l’UART
|
22
|
/DCD
|
IN
|
Signal
de fonction de l’UART
|
23
|
/DSR
|
IN
|
Signal
de fonction de l’UART
|
24
|
/DTR
|
OUT
|
Signal
de fonction de l’UART
|
25
|
/CTS
|
IN
|
Signal
de fonction de l’UART
|
26
|
/RTS
|
OUT
|
Signal
de fonction de l’UART
|
27
|
RXD
|
IN
|
Signal
de fonction de l’UART
|
28
|
TXD
|
OUT
|
Signal
de fonction de l’UART
|
29
|
GND
|
PWR
|
Masse
|
30
|
D-
|
I/O
|
Signal
de données négatif du bus USB
|
31
|
D+
|
I/O
|
Signal
de données positif du bus USB
|
32
|
G
|
PWR
|
Masse
|
6. Schéma
électrique du module :
|