Table des matières:

Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15 : 9 étapes
Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15 : 9 étapes

Vidéo: Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15 : 9 étapes

Vidéo: Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15 : 9 étapes
Vidéo: Raspberry Pi: How to configure serial port settings of /dev/ttyAMA0? (2 Solutions!!) 2024, Novembre
Anonim
Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15
Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15
Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15
Raspberry PI 3 - Activer les communications série vers TtyAMA0 vers BCM GPIO 14 et GPIO 15

J'ai récemment eu intérêt à activer UART0 sur mon Raspberry Pi (3b) afin de pouvoir le connecter directement à un périphérique de niveau de signal RS-232 à l'aide d'un connecteur d-sub standard à 9 broches sans avoir à passer par un port USB vers RS-232 adaptateur.

Une partie de mon intérêt ici était de pouvoir également connecter un convertisseur de niveau RS-232 (MAX3232) ou un périphérique RS-485 (MAX485).

J'ai eu du mal à essayer de faire fonctionner la configuration Pi. Je n'ai pas beaucoup d'expérience avec le Raspberry Pi, ou son système d'exploitation, donc j'étais sur une courbe d'apprentissage assez raide.

Finalement, grâce aux recherches Google avec "Essai et erreur", j'ai réussi à rassembler tous les détails pour que cela fonctionne à ma satisfaction, mais les informations n'étaient pas dans un document concis contenant toutes les étapes pour y arriver.

Je liste ici les étapes que j'ai suivies pour que cela fonctionne pour moi.

Fournitures

1 - Framboise Pi. J'ai utilisé un modèle 3b.. mais cette procédure devrait fonctionner avec la plupart des Pi, en particulier ceux avec les dernières versions de Raspberry Pi IOS (anciennement Raspian).

2 - Un "mini" convertisseur de niveau RS-232 - TTL vers RS-232 - J'ai utilisé un petit PCB chargé d'un circuit intégré MAX 3232 que j'ai acheté sur eBay. J'ai également essayé avec succès avec un TTL vers RS-485 convertisseur - également acheté sur eBay.

Une fois le Pi configuré, les deux convertisseurs ont fonctionné à ma satisfaction sans aucun problème rencontré par moi.

Étape 1: Installez une nouvelle copie sur Raspbian sur votre carte mémoire

Installez une nouvelle copie sur Raspbian sur votre carte mémoire
Installez une nouvelle copie sur Raspbian sur votre carte mémoire

J'ai commencé par installer une copie fraîche / la plus récente de Raspberry Pi IOS (anciennement Raspian) sur ma carte mémoire. J'ai choisi de ne pas emprunter la voie NOOBS.

Téléchargez et installez l'outil Imager

www.raspberrypi.org/downloads/

Téléchargez, décompressez et installez sur votre carte mémoire l'image Raspberry Pi IOS.

Après le démarrage, vérifiez et mettez à jour si nécessaire…

Étape 2: Activez le port série Raspberry Pi - À l'aide de l'interface graphique

Activez le port série Raspberry Pi - À l'aide de l'interface graphique
Activez le port série Raspberry Pi - À l'aide de l'interface graphique
Activez le port série Raspberry Pi - À l'aide de l'interface graphique
Activez le port série Raspberry Pi - À l'aide de l'interface graphique

Par défaut, sur une nouvelle installation Raspberry Pi IOS, UART0 est réservé au "Logon Shell". Cela est destiné à vous donner un accès / un contrôle du Pi via une combinaison de programme Port série / Terminal.

Afin d'utiliser UART0 pour d'autres applications, vous devez "désactiver" cette connexion à Logon Shell. Cela se produit en quelques étapes assez faciles.

Le moyen le plus rapide d'activer le "Port série" est de le faire via l'interface graphique.

Depuis le "Raspberry - Menu déroulant", sélectionnez "Préférences", puis "Raspberry Pi Configuration"

De là, allez dans l'onglet "Interfaces", et "Activez" le port série (en cliquant sur le bouton radio approprié.

Cliquez sur OK pour quitter, puis effectuez un redémarrage.

OU.. vous pouvez suivre cette méthode…

Étape 3: Une autre méthode pour activer le port série (et désactiver le shell de connexion)

Une autre méthode pour activer le port série (et désactiver le shell de connexion)
Une autre méthode pour activer le port série (et désactiver le shell de connexion)
Une autre méthode pour activer le port série (et désactiver le shell de connexion)
Une autre méthode pour activer le port série (et désactiver le shell de connexion)
Une autre méthode pour activer le port série (et désactiver le shell de connexion)
Une autre méthode pour activer le port série (et désactiver le shell de connexion)
Une autre méthode pour activer le port série (et désactiver le shell de connexion)
Une autre méthode pour activer le port série (et désactiver le shell de connexion)

Cette méthode est pour référence - pas nécessaire mais bonne à connaître.

== == ==

Une méthode alternative pour désactiver la console en utilisant UART0 au démarrage.

utilisation:

sudo raspi-config

Choisissez l'option #5 - Options d'interfaçage ==> Sélectionnez

Choisissez P6 Série ==> Sélectionnez

Répondez NON à: Souhaitez-vous qu'un shell de connexion soit accessible via la série ?

Répondez OUI à: Souhaitez-vous que le matériel du port série soit activé ?

La réponse sera:

Le shell de connexion série est désactivé

L'interface série est activée

Sélectionnez OK

Sélectionnez Terminer

Étape 4: Désactivez Bluetooth - Libérez UART0 et libérez-le pour TtyAMA0

Désactiver Bluetooth - Libérez UART0 et libérez-le pour TtyAMA0
Désactiver Bluetooth - Libérez UART0 et libérez-le pour TtyAMA0
Désactiver Bluetooth - Libérez UART0 et libérez-le pour TtyAMA0
Désactiver Bluetooth - Libérez UART0 et libérez-le pour TtyAMA0
Désactiver Bluetooth - Libérez UART0 et libérez-le pour TtyAMA0
Désactiver Bluetooth - Libérez UART0 et libérez-le pour TtyAMA0

La deuxième partie du processus consiste également à déconnecter le Bluetooth de l'UART0.

Par cette page "UART CONFIGURATION", vous devrez déconnecter le périphérique Bluetooth de UART0 et libérer UART0 pour ttyAMA0 - Si nécessaire, vous pouvez déplacer le Bluetooth vers le "mini-UART"

Procédez en éditant le fichier nommé "config.txt" (situé dans le répertoire "boot") et ajoutez UNE ligne tout en bas de la page:

dtoverlay=désactiver-bt

En fonction de votre situation et de votre envie d'utiliser le Bluetooth, vous souhaiterez peut-être ajouter la ligne suivante (mais il n'est pas nécessaire que ce tutoriel fonctionne correctement). Cette page contient également des détails précieux sur toutes ces affaires. Veuillez prendre le temps de lire le fichier lié (voir ci-dessus) pour mieux comprendre cela.

dtoverlay=miniuart-bt

Vérifiez votre orthographe, puis enregistrez le fichier en quittant et redémarrez.

À ce stade, vous devriez être prêt à partir.

Étape 5: Brochage RPI pour le port UART

Brochage RPI pour le port UART
Brochage RPI pour le port UART

Selon le site Web "pinout.xyz", les broches Raspberry Pi UART0 sont accessibles sur les broches suivantes.

Les broches UART en mode BCM sont: RPI Pin #8 / GPIO14 ==> TXD

Broche RPI #10 / GPIO15 ==> RXD

N'oubliez pas que pour ces broches, il s'agit de "niveaux TTL 3,3 volts". Tenter de le faire entraînera l'épuisement de votre UART intégré et emportera très probablement la puce du processeur avec lui.

Vous DEVEZ utiliser un convertisseur de niveau.

Pour vous connecter à un périphérique de niveau RS-232 ou RS-422/RS-485, vous avez besoin d'un convertisseur de niveau approprié.

Étape 6: Ajout d'un périphérique de conversion de niveau RS-232 en niveau TTL à votre Raspberry Pi

Ajout d'un périphérique de conversion de niveau RS-232 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-232 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-232 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-232 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-232 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-232 en niveau TTL à votre Raspberry Pi

Pour les conversions de niveaux TTL vers RS-232, j'utilise le convertisseur suivant.

Un convertisseur de niveau Mini RS232 vers TTL basé sur MAX3232.

Cet article peut être alimenté par 3,3 VDC ou même 5 VDC (tous deux disponibles à partir de broches spécifiques sur votre RPI) et utilise en fait très peu de courant.

La fiche technique du MAX3232 fournit des détails précieux sur son fonctionnement, mais en réalité aucun codage n'est requis pour que cela fonctionne

Reportez-vous aux photos ci-jointes et prenez le temps de connecter soigneusement les broches du Raspberry Pi aux broches appropriées du module. Sachez simplement que cet appareil fonctionnera soit sur 3,3 VCC, soit sur 5 VCC - tous deux disponibles sur le RPI (reportez-vous au schéma de brochage).

ATTENTION:

J'ai acheté un lot de 10 de ces unités sur eBay, et je ne pouvais PAS faire fonctionner l'une d'entre elles. En surface, ils semblent être assez faciles à utiliser, mais non. Après avoir lutté un peu avec eux, j'ai trouvé beaucoup de détails sur FAKE MAX3232 disponibles en ligne.

www.eevblog.com/forum/reviews/fake-max3232-any-additional-details/…

Je ne recommande PAS cet article.

Étape 7: Ajout d'un périphérique de conversion de niveau RS-485 en niveau TTL à votre Raspberry Pi

Ajout d'un périphérique de conversion de niveau RS-485 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-485 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-485 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-485 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-485 en niveau TTL à votre Raspberry Pi
Ajout d'un périphérique de conversion de niveau RS-485 en niveau TTL à votre Raspberry Pi

Similaire sur la plupart des manières à l'étape précédente, l'ajout d'un convertisseur de niveau RS-485 est tout aussi simple - peut-être même plus facile.

Pour les conversions de niveaux TTL vers RS-232, j'utilise le convertisseur suivant.

Un convertisseur MAX485 de niveau RS485 à niveau TTL. Encore une fois, cet élément peut être alimenté par 3,3 VDC ou même 5 VDC (tous deux disponibles à partir de broches spécifiques sur votre RPI) et utiliser en fait très peu de courant. La fiche technique du MAX485 fournit des détails précieux sur son fonctionnement, mais en réalité aucun codage n'est requis pour que cela fonctionne

Reportez-vous aux photos ci-jointes et prenez le temps de connecter soigneusement les broches du Raspberry Pi aux broches appropriées du module. Sachez simplement que cet appareil fonctionnera soit sur 3,3 VCC, soit sur 5 VCC - tous deux disponibles sur le RPI (reportez-vous au schéma de brochage).

A noter - contrairement à RS-232, RS-485 n'a pas de type de connecteur "standard" associé. La nomenclature est généralement "B-" et "A+", mais sachez que tous les fournisseurs ne suivent pas cette même nomenclature. RS-485 fonctionne sur le schéma de signal "Paire différentielle" - Plus de détails à ce sujet sont disponibles ici. Le « far west » vit dans la vallée RS-485.

Étape 8: Maintenant, c'est à votre tour…

Vous devriez maintenant pouvoir connecter votre Raspberry Pi directement à un appareil externe de votre choix. Il y en a BEAUCOUP encore en usage aujourd'hui.

C'est à vous de décider comment vous faites cela…

Pour commencer, consultez « Minicom » ou « CuteCom », ou consultez les possibilités en utilisant « NodeRED ».

Étape 9: Synopsis

N'hésitez pas à laisser des commentaires, ou des suggestions/corrections. J'apprécierais que.

Conseillé: