Taula de continguts:

Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15: 9 passos
Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15: 9 passos

Vídeo: Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15: 9 passos

Vídeo: Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15: 9 passos
Vídeo: Полный курс IoT: изучите IoT за 4 часа | Интернет вещей | Учебное пособие по Интернету вещей для начинающих | Эдурека 2024, Desembre
Anonim
Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15
Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15
Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15
Raspberry PI 3: activeu les comunicacions en sèrie a TtyAMA0 a BCM GPIO 14 i GPIO 15

Fa poc vaig tenir interès a habilitar UART0 al meu Raspberry Pi (3b) per poder connectar-lo directament a un dispositiu de nivell de senyal RS-232 mitjançant un connector d-sub estàndard de 9 pins sense haver de passar per un USB a RS-232. adaptador.

Part del meu interès aquí era també poder connectar un convertidor de nivell RS-232 (MAX3232) o un dispositiu RS-485 (MAX485).

Em va costar una mica intentar que la configuració de Pi funcionés. No tinc molta experiència amb el Raspberry Pi o el seu sistema operatiu, de manera que tenia una corba d’aprenentatge força pronunciada.

Finalment, a través de les cerques de Google juntament amb "Prova i error", vaig aconseguir reunir tots els detalls perquè funcionés per a la meva satisfacció, però la informació no figurava en un document concís que contenia tots els passos per aconseguir-ho.

Aquí enumero els passos que vaig fer per fer-ho funcionar.

Subministraments

1 - Raspberry Pi. He utilitzat un model 3b.. però aquest procediment hauria de funcionar amb la majoria de Pi, especialment amb les versions més recents de Raspberry Pi IOS (abans Raspian).

2 - Un "mini" convertidor de nivell RS-232 - TTL a RS-232 - He utilitzat un petit PCB carregat amb un IC MAX 3232 que he comprat a eBay.. També ho he provat amb èxit amb un TTL a RS-485 convertidor - també comprat a eBay.

Un cop configurat el Pi, tots dos convertidors van funcionar per a la meva satisfacció sense cap problema per mi.

Pas 1: instal·leu una còpia FRESH a Raspbian a la targeta de memòria

Instal·leu una còpia FRESH a Raspbian a la targeta de memòria
Instal·leu una còpia FRESH a Raspbian a la targeta de memòria

Vaig començar instal·lant una còpia més recent / més actualitzada de Raspberry Pi IOS (abans Raspian) a la meva targeta de memòria. Vaig optar per no seguir la ruta NOOBS.

Descarregueu i instal·leu l'eina Imager

www.raspberrypi.org/downloads/

Descarregueu, descomprimiu i instal·leu a la targeta de memòria la imatge del Raspberry Pi IOS.

Després de l'arrencada, comproveu i actualitzeu segons calgui …

Pas 2: activeu el port sèrie Raspberry Pi: mitjançant la GUI

Activeu el port sèrie Raspberry Pi: mitjançant la GUI
Activeu el port sèrie Raspberry Pi: mitjançant la GUI
Activeu el port sèrie Raspberry Pi: mitjançant la GUI
Activeu el port sèrie Raspberry Pi: mitjançant la GUI

Per defecte, en una nova instal·lació de Raspberry Pi IOS, UART0 està reservat per al "Logon Shell". Això vol donar-vos una mica d’accés / control del Pi mitjançant una combinació de programa de port sèrie / terminal.

Per poder utilitzar UART0 per a altres aplicacions, heu de "desactivar" aquesta connexió amb el Shell d'Inici de sessió. Això passa en un parell de passos bastant senzills.

La forma més ràpida d’habilitar el "Port sèrie" és fer-ho mitjançant la GUI.

Al menú desplegable "Raspberry -", seleccioneu "Preferències" i, a continuació, "Configuració de Raspberry Pi"

Des d'allà, aneu a la pestanya "Interfícies" i "Activeu" el port sèrie (fent clic al botó d'opció corresponent.

Feu clic a D'acord per sortir i, a continuació, realitzeu un reinici.

O.. podeu seguir aquest mètode …

Pas 3: un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)

Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)
Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)
Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)
Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)
Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)
Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)
Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)
Un mètode alternatiu per habilitar el port sèrie (i desactivar el Shell d'inici de sessió)

Aquest mètode és de referència; no és necessari, però és bo conèixer-lo.

== == ==

Un mètode alternatiu per desactivar la consola mitjançant UART0 en arrencar.

utilitzar:

sudo raspi-config

Trieu l'opció # 5 - Opcions d'interfície ==> Selecciona

Trieu Sèrie P6 ==> Selecciona

Resposta NO a: Voleu que es pugui accedir a un intèrpret d’ordres d’inici de sessió a través de la sèrie?

Respon SÍ a: Voleu que el maquinari del port sèrie estigui habilitat?

La resposta serà:

L'intèrpret d'ordres d'inici de sessió està desactivat

La interfície sèrie està habilitada

Seleccioneu D'acord

Seleccioneu Finalitza

Pas 4: desactiveu Bluetooth: llançar UART0 i alliberar-lo per a TtyAMA0

Desactiva el Bluetooth: llança UART0 i allibera'l per a TtyAMA0
Desactiva el Bluetooth: llança UART0 i allibera'l per a TtyAMA0
Desactiva el Bluetooth: llança UART0 i allibera'l per a TtyAMA0
Desactiva el Bluetooth: llança UART0 i allibera'l per a TtyAMA0
Desactiva el Bluetooth: llança UART0 i allibera'l per a TtyAMA0
Desactiva el Bluetooth: llança UART0 i allibera'l per a TtyAMA0

La segona part del procés és també desconnectar el Bluetooth d’UART0.

Segons aquesta pàgina "CONFIGURACIÓ UART", haureu de desconnectar el dispositiu Bluetooth d'UART0 i alliberar UART0 per a ttyAMA0. Si cal, podeu moure el Bluetooth al "mini-UART".

Continueu editant el fitxer anomenat "config.txt" (situat al directori "boot") i afegiu UNA línia al final de la pàgina:

dtoverlay = desactiva-bt

En funció de la vostra situació i del vostre desig d’utilitzar Bluetooth, és possible que vulgueu afegir la següent línia (però no és necessari que aquest tutorial funcioni correctament). Aquesta pàgina també conté detalls valuosos sobre tot aquest negoci. Preneu-vos el temps per llegir el fitxer enllaçat (vegeu més amunt) per entendre-ho.

dtoverlay = miniuart-bt

Comproveu l'ortografia i, a continuació, DESEU el fitxer mentre SURTIU i reinicieu.

En aquest punt, hauríeu d’anar bé.

Pas 5: Pin-out RPI per al port UART

Pin-out RPI per al port UART
Pin-out RPI per al port UART

Segons el lloc web "pinout.xyz", els pins Raspberry Pi UART0 són accessibles als pins següents.

Els pins UART en mode BCM són: Pin RPI # 8 / GPIO14 ==> TXD

Pin RPI # 10 / GPIO15 ==> RXD

Recordeu que per a aquests pins, són "nivells TTL de 3,3 volts" … aquests no es poden utilitzar per conduir i rebre des d'un dispositiu de nivell RS-232 o RS-422 / RS-485. Si ho intenteu, provocareu que el vostre UART incorporat es quedi consumit i probablement emporteu el xip del processador.

DEVEU utilitzar un convertidor de nivell.

Per connectar-vos a un dispositiu de nivell RS-232 o RS-422 / RS-485, necessiteu un convertidor de nivell adequat.

Pas 6: afegir un nivell RS-232 al dispositiu convertidor de nivell TTL al vostre Raspberry Pi

Afegir un nivell RS-232 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Afegir un nivell RS-232 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Afegir un nivell RS-232 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Afegir un nivell RS-232 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Afegir un nivell RS-232 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Afegir un nivell RS-232 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi

Per a conversions de nivells TTL a RS-232, faig servir el següent convertidor.

Un convertidor de nivell Mini RS232 a TTL basat en MAX3232.

Aquest element es pot alimentar amb 3,3 VDC o fins i tot amb 5 VDC (tots dos disponibles a partir de pins específics del vostre RPI) i, de fet, utilitzen molt poc corrent.

El full de dades del MAX3232 proporciona detalls valuosos sobre el seu funcionament, però en realitat no cal cap codificació per fer que això funcioni

Consulteu les fotos adjuntes i preneu-vos el temps per connectar acuradament els pins Raspberry Pi als pins corresponents del mòdul. Només heu de saber que aquest dispositiu funcionarà a 3,3 V CC o a 5 V CC, tots dos disponibles a l’RPI (consulteu el diagrama Pin-out).

AVÍS:

He comprat moltes d'aquestes unitats a eBay i NO he pogut fer funcionar cap d'elles. A la superfície sembla que hauria de ser prou fàcil d’utilitzar-los, però no. Després de lluitar una mica amb ells, vaig trobar molts detalls sobre FAKE MAX3232 disponibles en línia.

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

NO recomano aquest element.

Pas 7: Afegir un nivell RS-485 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi

Addició d’un nivell RS-485 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Addició d’un nivell RS-485 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Addició d’un nivell RS-485 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Addició d’un nivell RS-485 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Addició d’un nivell RS-485 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi
Addició d’un nivell RS-485 a un dispositiu convertidor de nivell TTL al vostre Raspberry Pi

De manera similar a la majoria de formes del pas anterior, afegir un convertidor de nivell RS-485 és igual de fàcil, potser fins i tot més fàcil.

Per a conversions de nivells TTL a RS-232, faig servir el següent convertidor.

Un MAX485 basa el convertidor de nivell RS485 a nivell TTL. Una vegada més, aquest element es pot alimentar amb 3,3 VDC o fins i tot amb 5 VDC (tots dos disponibles a partir de pins específics del vostre RPI) i, de fet, utilitzen molt poc corrent. El full de dades del MAX485 proporciona detalls valuosos sobre el seu funcionament, però en realitat no cal cap codificació per fer que això funcioni

Consulteu les fotos adjuntes i preneu-vos el temps per connectar acuradament els pins Raspberry Pi als pins corresponents del mòdul. Només heu de saber que aquest dispositiu funcionarà a 3,3 V CC o a 5 V CC, tots dos disponibles a l’RPI (consulteu el diagrama Pin-out).

Cal destacar - a diferència de l'RS-232, l'RS-485 no té un tipus de connector "estàndard" associat. La nomenclatura sol ser "B-" i "A +", però tingueu en compte que no tots els proveïdors segueixen aquesta mateixa nomenclatura. El RS-485 funciona amb un esquema de senyal "Parell diferencial": hi ha més detalls disponibles aquí. El "salvatge oest" viu a la vall RS-485..

Pas 8: ara és el vostre torn

Ara hauríeu de poder connectar el vostre Raspberry Pi directament a un dispositiu extern que trieu. Hi ha MOLTS d'ells encara en ús en l'actualitat.

Com ho fas depèn de tu …

Per començar, fes un cop d'ull a "Minicom" o "CuteCom" o fes una ullada a les possibilitats mitjançant "NodeRED".

Pas 9: sinopsi

No dubteu a deixar comentaris, ni suggeriments / correccions. Ho agrairia.

Recomanat: