Adaptateur USB – TTL – FTDI

Un adaptateur USB est un convertisseur de protocole utilisé pour convertir des signaux de données USB vers et depuis d’autres protocoles de communication. Ils sont généralement utilisés pour convertir les données USB en données de port série standard et inversement. Le plus souvent, les signaux de données USB sont convertis en données série UART de niveau RS232 , RS485 , RS422 ou TTL .

La situation avec les adaptateurs USB-TTL est un peu délicate, à cause du nombre inhabituel de types de puces et du libellé incorrect qui est devenu habituel. Par exemple, « adaptateur USB FTDI », « adaptateur série », « adaptateur USB TTL », « adaptateur RS232 », etc., peuvent signifier ou non la même chose.

Donc, d’abord quelques explications (ou passez direct plus bas pour les conclusions et l’astuce). Deux, trois points essentiels doivent être précisés :

Concernant les niveaux logiques, trois types existent, à savoir:
RS232
RS232 au niveau 5 V
UART
Le RS232 d’origine, tel qu’il était utilisé par le bus série « historique » sur les PC, fonctionne avec des niveaux de + -15 V, -15 V représentant le 0 logique. Dans de nombreux cas, il était plus pratique de réduire la plage de tension à 0 .. 5 V, de sorte que 0 V ou LOW représente la logique 0.
UART quand à lui est l’unité série utilisée dans les microcontrôleurs et fonctionne avec des tensions de 0 … 3,3 / 5 V, mais surtout, la logique 0 est représentée par 3,3 / 5 V ou HIGH. En d’autres termes, la logique est inversée par rapport à RS232 et les deux sont évidemment incompatibles. Ce qui donne lieu à de nombreuses confusions.

Nota: les différents jeux de puces de plusieurs entreprises sont présents pour accomplir la même tâche. Par exemple, FTDI est une société qui produit par exemple le jeu de puces FT232RL qui utilise les niveaux logiques UART. Malheureusement, il est devenu courant d’appeler n’importe quel adaptateur série USB un adaptateur FTDI, même s’il utilise un jeu de puces d’une société différente, par exemple SILABS, et parfois même s’il n’utilise pas les niveaux TTL mais les types de type RS232.

Exemple de branchement d’un adaptateur, ici un ESP-01

Après cette introduction, le vrai problème des différentes sortes de puces et de fabriquant, nous retiendrons quatre jeux de puces :

  • FT232RL ou similaire par FTDI,
  • CP2102 par SILABS
  • CH340 par WCH
  • PL2303HX par PROLIFIC
  • Les autres….
  • FT232RL – FTDI : Selon des rapports sur le Web, il y a une petite chance d’obtenir un clone, mais la vraie puce fonctionne parfaitement, sans aucun problème, et les clones peuvent être évités en achetant depuis des sources fiables (mais bon ils fonctionnent également). En outre, ce jeu de puces permet d’utiliser des débits en bauds de 2000000 bits / s, selon les besoins, pour utiliser la fonction NT Live Data Recording sans aucune configuration supplémentaire.
  • CP2102 – SILABS : Un excellent choix. Il y avait des problèmes avec les pilotes, mais ceux-ci semblent avoir été résolus pendant un certain temps, ce qui fait de cette puce un choix fiable et solide. Toutefois, il ne prend pas en charge un débit en bauds de 2000000 bits / s nativement il peut cependant être configuré facilement pour le faire via un logiciel de configuration disponible gratuitement.
  • CH340 – WCH : On rencontre parfois des problèmes de reconnaissance mais une fois le pilote installé (le bon) c’est un choix viable. Il fonctionne avec 2000000 bps prêts à l’emploi. NOTA: il semble quand même que pour des applications « industriels » on ne privilégie pas ce type de puce.
  • PL2303HX – PROLIFIC : J’avais un adaptateur PLxxxx, qui ne fournissait pas de signaux TTL mais de type RS232. Cependant, certaines sources Web indiquent utiliser PLxxxx pour les applications à microcontrôleur. La fiche technique de ces puces, y compris celle du PL2303HX, n’est pas claire sur ce point. Donc, en bout de ligne, je trouve la situation pour ces puces assez déroutante et je les évite donc tout simplement, car il existe des alternatives.

Conclusion: pour le flashage d’un contrôleur principale STorM32, les adaptateurs USB avec des jeux de puces FTDI, CH340 ou CP2102.
Cependant les adaptateurs CP2102 nécessitent une certaine configuration pour prendre en charge la vitesse de transmission élevée du bus NT lors de la phase d’enregistrement de données
Concernant Les adaptateurs USB avec puces PL2303, ils ne fonctionnent JAMAIS car ils ne fournissent pas de signaux TTL.

Arduino et adaptateur USB – TTL – FTDI

Il existe une solution encore plus simple si vous ne disposez pas encore d’adaptateur USB – TTL et qu’il vous en faut 1. La combine c’est d’utiliser le port d’un arduino nano et pour moitié prix vous aurez en plus un ARDUINO qui vous servira certainement plus qu’un simple adaptateur…

Suivez le guide pour terminer votre choix:

http://www.usconverters.com/index.php?main_page=page&id=62&chapter=0

Laisser un commentaire