Différences entre versions de « FTDI-Friend-PCs »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
Ligne 19 : Ligne 19 :
 
[[Fichier:FTDI-Friend-PCs-Raccordement.jpg]]
 
[[Fichier:FTDI-Friend-PCs-Raccordement.jpg]]
  
Le montage est relativement simple, n'oubliez pas de croiser rx et tx.
+
Le montage est relativement simple, '''n'oubliez pas de croiser rx et tx'''.
  
 
TX = Transmit (transmission) doit forcement arriver sur une broche RX = Receive (Réception)
 
TX = Transmit (transmission) doit forcement arriver sur une broche RX = Receive (Réception)
 +
 +
 +
=== RTS et CTS ===
 +
Ce sont deux signaux complémentaires permettant de synchroniser la communication entre deux port série.
 +
 +
Le but premier de ces signaux est d'éviter d'envoyer des informations sur le port série si le destinataire n'est pas prêt à les recevoir (parce que son buffer/mémoire tampon serait plein).
 +
 +
Signification:
 +
* RTS: Ready To Send - Prêt à l'envoi. Avec ce signal, le port série indique qu'il est disposé à recevoir des données.
 +
** Si RTS passe en position basse (tension négative), cela se traduit par "arrêtez d'envoyer".
 +
** Quand le récepteur est prêt à recevoir plus de données, il lance RTS, demandant à l'autre côté de reprendre l'envoi.
 +
* CTS: Clear To Send - Prêt à recevoir. Lorsqu'un port série reçoit ce signal (émit par le RTS de l'autre port série), il sait que le port série distant est prêt à recevoir des infos. 
 +
 +
==== Dans un monde idéal ====
 +
Dans un monde idéal, on croise également les signaux RTS et CTS entre les deux ports séries.
 +
 +
[[Fichier:FTDI-Friend-PCs-CTS-RTS 01.jpg]]<br /><small>Source: [http://brette.stephane.free.fr/rs232/asynch_serial.pdf ce document] de Brette Stephane</small>
 +
 +
==== La pratique courante ====
 +
 +
==== Ressource ====
 +
Plus d'informations à propos de CTS et RTS:
 +
* Sur ce [http://www.developpez.net/forums/d1107511/environnements-developpement/delphi/debutant/liaison-serie-rs232-quoi-sert-rts/ billet de developpez.net]
 +
* Sur ce [http://brette.stephane.free.fr/rs232/asynch_serial.pdf document en ligne de Stephane Brette] (pdf)
  
 
== Machine Linux ==
 
== Machine Linux ==

Version du 7 décembre 2013 à 15:02


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Introduction

De nos jours, tous les ordinateurs, systèmes informatiques ou systèmes embarqués disposent de ports USB mais pas plus de connexion séries.

Le FTDI Friend permet d'ajouter un ou plusieurs ports série et d'autoriser une communication série matérielle là où ce ne serait simplement pas possible autrement.

Maitriser la communication série matériel avec FTDI Friend à l'aide de PC/Raspberry/beagle permet:

  1. de maitriser le raccordement série (et le comprendre)
  2. de s'assurer que l'on maitrise l'outil informatique (HyperTerminal, Minicom, etc) avec ce module
  3. d'avoir des certitude sur le module, son montage et son utilisation

Lorsque l'on maitrise cette technique de base:

  1. Il est plus facile d'ajouter une couche complémentaire comme un convertisseur RS232 <-> RS485 (Bus de terrain) permettant d'établir une communication série jusqu'a 1200 mètres!!!
  2. Vous pouvez également utiliser votre ordinateur + FTDI Friend pour tester des protocoles séries... en étant très confortablement installé derrière votre clavier.

Montage

FTDI-Friend-PCs-Raccordement.jpg

Le montage est relativement simple, n'oubliez pas de croiser rx et tx.

TX = Transmit (transmission) doit forcement arriver sur une broche RX = Receive (Réception)


RTS et CTS

Ce sont deux signaux complémentaires permettant de synchroniser la communication entre deux port série.

Le but premier de ces signaux est d'éviter d'envoyer des informations sur le port série si le destinataire n'est pas prêt à les recevoir (parce que son buffer/mémoire tampon serait plein).

Signification:

  • RTS: Ready To Send - Prêt à l'envoi. Avec ce signal, le port série indique qu'il est disposé à recevoir des données.
    • Si RTS passe en position basse (tension négative), cela se traduit par "arrêtez d'envoyer".
    • Quand le récepteur est prêt à recevoir plus de données, il lance RTS, demandant à l'autre côté de reprendre l'envoi.
  • CTS: Clear To Send - Prêt à recevoir. Lorsqu'un port série reçoit ce signal (émit par le RTS de l'autre port série), il sait que le port série distant est prêt à recevoir des infos.

Dans un monde idéal

Dans un monde idéal, on croise également les signaux RTS et CTS entre les deux ports séries.

FTDI-Friend-PCs-CTS-RTS 01.jpg
Source: ce document de Brette Stephane

La pratique courante

Ressource

Plus d'informations à propos de CTS et RTS:

Machine Linux

Chez MCHobby, nous n'utilisons que des machines Linux... nous allons donc faire un tuto pour ces machines (nous utilisons Mint).

L'avantage, c'est que ce tuto, c'est qu'il fonctionnera également avec un environnement type Raspberry-Pi.

Installer MiniCom

Pour établir la communication sous Linux, nous allons utiliser minicom.

c'est un logiciel très simple qui fonctionne en ligne de commande mais aussi dans un terminal... un avantage indéniable.

sudo apt-get install minicom

Découvrir le port série

Lorsque vous branché votre convertisseur USB/Série sur votre ordinateur, il sera automatiquement reconnu par le système et monté comme un périphérique... mais où?

Utilisez la commande dmesg pour voir les message de deboggage, ces dernier contiennent plain d'information

dmesg | tail

Ce qui produira les messages suivants:

[695830.436802] usb 3-1: >Product: FT232R USB UART
[695830.436806] usb 3-1: >Manufacturer: FTDI
[695830.436809] usb 3-1: >SerialNumber: A501E7JR
[695830.439785] ftdi_sio 3-1:1.0: >FTDI USB Serial Device converter detected
[695830.439836] usb 3-1: >Detected FT232RL
[695830.439840] usb 3-1: >Number of endpoints 2
[695830.439846] usb 3-1: >Endpoint 1 MaxPacketSize 64
[695830.439850] usb 3-1: >Endpoint 2 MaxPacketSize 64
[695830.439855] usb 3-1: >Setting MaxPacketSize 64
[695830.440083] usb 3-1: >FTDI USB Serial Device converter now attached to ttyUSB0

Pour trouver rapidement le point de montage, vous pouvez utiliser un bon vieux grep

dmesg | grep attached

Pour voir afficher la réponse

[695830.440083] usb 3-1: >FTDI USB Serial Device converter now attached to ttyUSB0

Et le point de montage est ttyUSB0 :)

Le FTDI est donc accessible via /dev/ttyUSB0

Communication

Pour démarrer une communication en 19200 bauds en 8N1, il ne reste plus qu'a taper la commande suivante

sudo minicom -b 19200 -o -D /dev/ttyUSB0

FTDI-Friend-PCs-01.jpg

A l'autre bout

A l'autre bout de la connexion, sur l'autre PC, nous allons aussi démarrer une session minicom

sudo minicom -b 19200 -o -D /dev/ttyUSB1

Avec cette commande, nos deux sessions minicom sont maintenant en communication

Test et résultat

Le minicom de gauche est sur /dev/ttyUSB0

  • Tapez y des aaaaaaaaaaa

Le minicom de droite est sur /dev/ttyUSB1 (d'un autre PC).

  • tapez y des bbbbbb

FTDI-Friend-PCs-02.jpg


Réaliser par Meurisse D. pour MCHobby.

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.