Electronique > Réalisations > Test FT232R (Comm - USB/RS232-TTL)

Dernière mise à jour : 17/10/2021

Présentation

Les circuits présentés ici sont essentiellement destinés à des tests de communication "COM-RS232" sur port USB, avec un PIC (ou autre type de microcontrôleur ou microprocesseur) non pourvu d'un module USB (mais de préférence doté d'un module UART).


test_ft232r_pcb_3d_a  test_ft232r_16f1847_001b_pcb_3d_a  

Quatre circuits sont proposés :

- schéma 001a : FT232R seul
- schéma 001b : FT232R + PIC 16F88
- schéma 001c : FT232R + PIC 16F1847
- schéma 001d : FT232R + PIC 16F1847 + connecteurs pour accès aux lignes d'E/S du PIC

Les schémas reposent tous sur un circuit intégré FT232R de la société FTDI, circuit que l'on retrouve sur de nombreuses cartes adaptateur "USB-RS232" d'origine plus ou moins "officielle".

Le montage, auto-alimenté par le port USB, est vu par l'ordinateur sur lequel il est connecté, comme un port com virtuel (VPC, Virtual Com Port) appartenant à la classe USB "CDC" (Communication Device Class). 

Un dessins de circuit imprimé (PCB) est proposé pour chaque type de circuit.
 

Schéma 001a (sans PIC)

Ce circuit ne comporte qu'un seul composant actif, le convertisseur/adaptateur FT232R.


test_ft232r
Adaptateur FT232R seul, sans PIC

Faire des économies ou réinventer la roue ?

Le rôle de ce circuit est identique à celui des circuits que l'on trouve partout sur le Net. Pourquoi m'embêter à en construire un, alors qu'on en trouve pour 1 ou 2 euros ici ou là ? La raison est simple : je me suis procuré quelques circuits "bas coût" pour les tester, et plus de la moitié ne fonctionne pas. En cause, le fameux driver de FTDI qui refuse de travailler avec les puces contrefaites - car bien évidement, les circuits en question sont majoritairement équipés d'une puce FT232 non originale. Je sais qu'il existe une méthode pour pouvoir utiliser une puce FT232 contrefaite (il suffit d'installer un vieux driver, en espérant qu'un nouveau ne vienne pas le remplacer atomatiquement suite à une mise à jour du système d'exploitation), mais je n'ai pas envie de perdre du temps avec ça ! Certes, mon circuit adaptateur me coûte environ 5 euros au lieu de 2 euros, mais au moins j'ai la quasi certitude que cela fonctionne correctement !

J'ai souhaité avoir accès à (et pouvoir utiliser) l'ensemble des lignes disponibles sur une liaison "modem" (RTS, DTR, DCD, RI, DSR et CTS), même si dans 99% des cas je n'utilise que les lignes de transmission de données Tx et Rx. Ajouter un connecteur 5 points et "perdre" 1 cm de PCB ne m'a pas traumatisé.

Remarque : il existe des alternatives au FT232R(L) : FT231X, CH340C/G, CH9102X, CP2102, CP2103 ou PL2303, par exemple. Attention, certains de ces circuits nécessitent une alimentation de 3V3 et ne supportent pas le 5V, d'autres peuvent traveiller en 3V3 et 5V.


Schémas 001b et 001c (avec PIC)

Un microcontrôleur PIC 16F88 ou 16F1847, un convertisseur USB/RS232-TTL et un connecteur USB type B pour un circuit d'aide aux tests bien discret.


test_ft232r_16f88
Schéma 001b : adaptateur FT232R et PIC 16F88


test_ft232r_16f1847
Schéma 001c : adaptateur FT232R et PIC 16F1847


Pourquoi avoir ajouté un PIC au FT232 ?

Le but initial de l'opération était de créer un simulateur d'équipement raccordé à l'ordinateur par un bus USB, simulateur pouvant recevoir des données et y répondre de façon adéquate (en ASCII ou en binaire). J'aurais bien sûr pu utiliser un microcontrôleur PIC doté d'un module USB, par exemple un 18F2550, un 18F47J53 ou encore un 32MX575F512, mais ce n'était justement pas le but.

Les programmes que je mets à disposition pour tester ces circuits sont simplifiés à l'extrême et envoient simplement des chaînes de caractères (texte) toutes les 500 ms. Le connecteur ICSP est là pour flasher un programme un peu plus utile ;)

Remarque : on peut considérer le PIC 16F88 comme quelque peu démodé, bien que pas encore déclaré obsolète. Le PIC 16F1847 possède en effet plus de ressources, il peut être cadencé à une vitesse supérieure et il coûte 3 fois moins cher que le 16F88 !


Schémas 001d (avec PIC 16F1847)

Petite variante du schéma 001c, avec ajout de points de connexion pour un accès rapide aux broches d'entrée/sortie du PIC.


test_ft232r_16f1847_001b
Schéma 001d : adaptateur FT232R et PIC 16F1847, avec points d'accès aux lignes d'E/S du PIC


Logiciel du PIC

Logiciel PIC disponible en libre service pour les deux versions.

electronique_test_16fxxxx_comm_usb - pour 16F88 et 16F1847

Rappel : ces programmes simplifiés à l'extrême envoient simplement des chaînes de caractères (texte) toutes les 500 ms. Le connecteur ICSP est là pour flasher un programme de votre cru un peu plus utile ;)


Circuits imprimés (PCB)

Réalisé en double face et avec les même dimensions pour les quatre circuits.


test_ft232r_pcb_components_top  test_ft232r_16f1847_001b_pcb_components_top

Très peu de différences entre les deux PCB comportant un PIC (sans les connecteurs additionnels) :

test_ft232r_16f88_pcb_components_top  test_ft232r_16f1847_pcb_components_top  

Typons (dessins PCB) au format PDF

Historique

17/10/2021
- Première mise à disposition.