Sommario:
- Forniture
- Passaggio 1: installa una nuova copia su Raspbian sulla tua scheda di memoria
- Passaggio 2: abilitare la porta seriale Raspberry Pi - Utilizzando la GUI
- Passaggio 3: un metodo alternativo per abilitare la porta seriale (e disabilitare la shell di accesso)
- Passaggio 4: disabilita il Bluetooth: rilascia UART0 e liberalo per TtyAMA0
- Passaggio 5: pin-out RPI per la porta UART
- Passaggio 6: aggiunta di un dispositivo convertitore da livello RS-232 a livello TTL al tuo Raspberry Pi
- Passaggio 7: aggiunta di un dispositivo convertitore da livello RS-485 a livello TTL al tuo Raspberry Pi
- Passaggio 8: ora tocca a te
- Passaggio 9: sinossi
Video: Raspberry PI 3 - Abilita le comunicazioni seriali da TtyAMA0 a BCM GPIO 14 e GPIO 15: 9 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 09:59
Di recente ho avuto interesse ad abilitare UART0 sul mio Raspberry Pi (3b) in modo da poterlo collegare direttamente a un dispositivo a livello di segnale RS-232 utilizzando un connettore d-sub standard a 9 pin senza dover passare da USB a RS-232 adattatore.
Parte del mio interesse qui era anche poter collegare un convertitore di livello RS-232 (MAX3232) o un dispositivo RS-485 (MAX485).
Ho fatto un po' fatica a far funzionare la configurazione di Pi. Non ho molta esperienza con il Raspberry Pi, o il suo sistema operativo, quindi ero su una curva di apprendimento abbastanza ripida.
Alla fine, attraverso le ricerche su Google insieme a "Trial and Error", sono riuscito a mettere insieme tutti i dettagli per farlo funzionare in modo soddisfacente, ma le informazioni non erano in un documento conciso che conteneva tutti i passaggi per farlo accadere.
Sto elencando qui i passaggi che ho preso per fare questo lavoro per me.
Forniture
1 - Lampone Pi. Ho usato un modello 3b.. ma questa procedura dovrebbe funzionare con la maggior parte dei Pi, specialmente quelli con le ultime versioni di Raspberry Pi IOS (precedentemente Raspian).
2 - Un "mini" convertitore di livello RS-232 - da TTL a RS-232 - Ho usato un piccolo PCB caricato con un IC MAX 3232 su di esso che ho acquistato da eBay.. L'ho anche provato con successo con un TTL su RS-485 convertitore - acquistato anche da eBay.
Una volta che il Pi è stato configurato, entrambi i convertitori hanno funzionato con mia soddisfazione senza problemi da me riscontrati.
Passaggio 1: installa una nuova copia su Raspbian sulla tua scheda di memoria
Ho iniziato installando una copia fresca/più aggiornata di Raspberry Pi IOS (precedentemente Raspian) sulla mia scheda di memoria. Ho scelto di non seguire il percorso NOOBS.
Scarica e installa lo strumento Imager
www.raspberrypi.org/downloads/
Scarica, decomprimi e installa sulla tua scheda di memoria l'immagine IOS Raspberry Pi.
Dopo l'avvio, controlla e aggiorna come richiesto…
Passaggio 2: abilitare la porta seriale Raspberry Pi - Utilizzando la GUI
Per impostazione predefinita, su una nuova installazione IOS Raspberry Pi UART0 è riservato per "Logon Shell". Questo ha lo scopo di darti un po 'di accesso / controllo del Pi tramite una combinazione di programma porta seriale / terminale.
Per utilizzare UART0 per altre applicazioni, è necessario "disattivare" tale connessione a Logon Shell. Ciò si verifica in un paio di passaggi abbastanza semplici.
Il modo più rapido per abilitare la "porta seriale" è farlo tramite la GUI.
Dal "Raspberry - Menu a discesa", seleziona "Preferenze", quindi "Configurazione Raspberry Pi"
Da lì, vai alla scheda "Interfacce" e "Abilita" la porta seriale (facendo clic sul pulsante di opzione appropriato.
Fare clic su OK per uscire, quindi eseguire un riavvio.
OPPURE.. puoi seguire questo metodo…
Passaggio 3: un metodo alternativo per abilitare la porta seriale (e disabilitare la shell di accesso)
Questo metodo è di riferimento, non necessario ma utile a sapersi.
== == ==
Un metodo alternativo per disabilitare la console utilizzando UART0 all'avvio.
utilizzo:
sudo raspi-config
Scegli l'opzione n. 5 - Opzioni di interfaccia ==> Seleziona
Scegli Seriale P6 ==> Seleziona
Rispondi NO a: Vuoi che una shell di login sia accessibile tramite il seriale?
Rispondi SI a: Vuoi che l'hardware della porta seriale sia abilitato?
La risposta sarà:
La shell di accesso seriale è disabilitata
L'interfaccia seriale è abilitata
Seleziona OK
Seleziona Fine
Passaggio 4: disabilita il Bluetooth: rilascia UART0 e liberalo per TtyAMA0
La seconda parte del processo consiste nel disconnettere anche il Bluetooth da UART0.
Per questa pagina "CONFIGURAZIONE UART" dovrai disconnettere il dispositivo Bluetooth da UART0 e liberare UART0 per ttyAMA0 - Se necessario puoi spostare il Bluetooth sul "mini-UART"
Procedi modificando il file denominato "config.txt" (che si trova nella directory "boot") e aggiungi UNA riga in fondo alla pagina:
dtoverlay=disable-bt
A seconda della tua situazione e del desiderio di utilizzare il Bluetooth, potresti voler aggiungere la seguente riga (ma non è necessario che questo tutorial funzioni correttamente). Questa pagina contiene anche preziosi dettagli su tutta questa attività. Per favore, prenditi il tempo necessario per leggere il file collegato (vedi sopra) per ottenere una certa comprensione di questo.
dtoverlay=miniuart-bt
Ricontrolla l'ortografia, quindi SALVA il file mentre esci e riavvia.
A questo punto dovresti essere a posto.
Passaggio 5: pin-out RPI per la porta UART
Per il sito Web "pinout.xyz" i pin UART0 di Raspberry Pi sono accessibili sui seguenti pin.
I pin UART in modalità BCM sono: RPI Pin #8 / GPIO14 ==> TXD
Pin 10 RPI / GPIO15 ==> RXD
Si ricorda che per questi pin si tratta di "livelli TTL da 3,3 Volt".. questi NON POSSONO essere utilizzati per pilotare e ricevere da un dispositivo di livello RS-232 o RS-422/RS-485. Il tentativo di farlo PROVOCHERÀ il burn-out del tuo UART integrato e molto probabilmente porterà con sé il chip del processore.
DEVI usare un convertitore di livello.
Per connettersi a un dispositivo di livello RS-232 o RS-422/RS-485 è necessario un convertitore di livello appropriato.
Passaggio 6: aggiunta di un dispositivo convertitore da livello RS-232 a livello TTL al tuo Raspberry Pi
Per le conversioni dei livelli da TTL a RS-232 utilizzo il seguente convertitore.
Un convertitore di livello da Mini RS232 a TTL basato su MAX3232.
Questo articolo può essere alimentato da 3,3 V CC o anche 5 V CC (entrambi disponibili da pin specifici sul tuo RPI) e in realtà utilizza pochissima corrente.
Il datasheet del MAX3232 fornisce dettagli preziosi sul suo funzionamento, ma in realtà non è richiesta alcuna codifica per farlo funzionare
Fare riferimento alle foto allegate e dedicare del tempo a collegare con cura i pin Raspberry Pi ai pin appropriati sul modulo. Sappi solo che questo dispositivo funzionerà a 3,3 V CC o 5 V CC, entrambi disponibili sull'RPI (fare riferimento al diagramma Pin-out).
AVVERTIMENTO:
Ho acquistato un sacco di 10 di queste unità da eBay e NON sono riuscito a far funzionare nessuna di esse. In superficie sembra che dovrebbe essere abbastanza facile usarli, ma no. Dopo aver lottato un po' con loro, ho trovato molti dettagli su FAKE MAX3232 disponibili on-line.
www.eevblog.com/forum/reviews/fake-max3232-any-additional-details/…
NON consiglio questo articolo.
Passaggio 7: aggiunta di un dispositivo convertitore da livello RS-485 a livello TTL al tuo Raspberry Pi
Simile nella maggior parte dei modi al passaggio precedente, l'aggiunta di un convertitore di livello RS-485 è altrettanto semplice, forse anche più semplice.
Per le conversioni dei livelli da TTL a RS-232 utilizzo il seguente convertitore.
Un MAX485 basa il convertitore da livello RS485 a livello TTL. Anche in questo caso questo articolo può essere alimentato da 3,3 V CC o anche 5 V CC (entrambi disponibili da pin specifici sul tuo RPI) e in realtà utilizza pochissima corrente. La scheda tecnica del MAX485 fornisce dettagli preziosi sul suo funzionamento, ma in realtà non è necessaria alcuna codifica per farlo funzionare
Fare riferimento alle foto allegate e dedicare del tempo a collegare con attenzione i pin Raspberry Pi ai pin appropriati sul modulo. Sappi solo che questo dispositivo funzionerà a 3,3 V CC o 5 V CC, entrambi disponibili sull'RPI (fare riferimento al diagramma Pin-out).
Da notare: a differenza di RS-232, RS-485 non ha un tipo di connettore "standard" ad esso associato. La nomenclatura è tipicamente "B-" e "A+", ma tieni presente che non tutti i fornitori seguono questa stessa nomenclatura. RS-485 funziona su schema di segnale "Coppia differenziale" - Maggiori dettagli su questo sono disponibili qui. Il "selvaggio west" continua a vivere nella valle RS-485..
Passaggio 8: ora tocca a te
Ora dovresti essere in grado di connettere il tuo Raspberry Pi direttamente a un dispositivo esterno di tua scelta. Ce ne sono MOLTI ancora in uso oggi.
Come farlo dipende da te…
Per cominciare, controlla "Minicom" o "CuteCom" o controlla le possibilità usando "NodeRED".
Passaggio 9: sinossi
Sentiti libero di lasciare commenti o suggerimenti / correzioni. Lo apprezzerei.
Consigliato:
Aggiungi un display digitale a un vecchio ricevitore di comunicazioni: 6 passaggi (con immagini)
Aggiungi un display digitale a un vecchio ricevitore di comunicazione: uno dei difetti dell'utilizzo di un vecchio dispositivo di comunicazione è il fatto che il quadrante analogico non è molto preciso. Stai sempre indovinando la frequenza che stai ricevendo. Nelle bande AM o FM, questo generalmente non è un problema perché di solito
MKR1000 Comunicazioni client/server IoT: 4 passaggi
Comunicazioni client/server MKR1000 IoT: questo progetto descrive come configurare due dispositivi Arduino/Genuino MKR1000 come server e client. Il client MKR1000 si connetterà al tuo wifi locale e ascolterà due ingressi fisicamente collegati al client; uno da un pulsante e l'altro da una vibrazione
Rack per comunicazioni 9U da 19 pollici in legno: 5 passaggi
Rack di comunicazione 9U da 19 pollici in legno: volevo un piccolo "cornice aperto" 19" rack di comunicazione per la mia casa, ma non sono riuscito a trovare nulla delle dimensioni giuste o ad un prezzo ragionevole, quindi ho deciso di crearne uno da solo. I lati aperti facilitano l'ingresso e l'uscita dei cavi e anche un
Generatore di suoni Arduino senza libreria o funzioni seriali (con interruzioni): 10 passaggi
Generatore di suoni Arduino senza libreria o funzioni seriali (con interruzioni): questo non è qualcosa su cui normalmente farei un istruttore, preferisco il mio lavoro in metallo, ma poiché sono uno studente di ingegneria elettrica e devo seguire un corso sui microcontrollori ( Embedded Systems Design), ho pensato di creare un istruibile su uno dei miei p
Connettore Tea per cavi seriali RS232: 8 passaggi
Connettore Tea per cavi seriali RS232: i cavi e le connessioni seriali possono essere frustranti. Ci sono 4 diversi connettori di uso comune (9 pin e 25 pin ciascuno sia in maschio che femmina) e 2 modi comuni di collegarli, straight through e null modem. Questo progetto è il mio tentativo di