Serielle Kommunikation mit Raspberry pi
Wie können wir tun, serielle Kommunikation über den raspberry pi mit einem python-Skript zum senden/empfangen von Daten zu meinem laptop? Wenn ja können wir das RS232-Kabel zum Anschluss an die TX/RX-Anschlüsse auf dem raspberry pi direkt? Wenn ja, welche pins verwendet werden muss, aus dem RS232-Kabel? Es würde helfen, wenn jeder posten kann, ein Beispiel python-Skript?
Da mein erstes Ziel ist das senden/empfangen von Daten zum laptop auf/von der raspberry pi, ich bin mit einem RS232-zu-USB-Kabel an beiden enden zu verbinden, um den laptop als auch den raspberry pi.
InformationsquelleAutor Randu | 2013-07-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
RS-232/RS-485 zu PC und USB-zu-PC -
Für RS-232
1) Download Putty.
2) Kaufen Sie ein Serielle Schnittstelle RS232 zum TTL-Konverter-Modul und ein RS-232 serielles Kabel für PC.
3) Folgen Sie den Schritten in Anschluss an einen mikrocontroller oder andere Peripherie - auf dieser
link. Eigentlich lese die ganze Sache besser zu verstehen.
4) Macht Ihr Konverter-Modul mit entweder 3,3 V (pin 1) oder 5,0 V (pin 2) verbinden Rxd-pin des Moduls an Rxd (pin 8) auf Rpi und Txd-pin Txd (pin 10) auf Rpi.
5) Schließen Sie das RS-232 (vom PC) - Kabel an den Konverter-Modul
Nun sind Sie bereit, mit der Programmierung in Python. Doch vorher stellen Sie sicher, dass Sie die Bibliothek namens serielle für python zu erstellen, die Kommunikation. Sie können easliy bekommen Sie via terminal durch Eingabe sudo apt-get install python-serial. Auch sehen Sie die baudrate in den code ist 7200. Es könnte sein, weniger oder mehr, je nach der Synchronisation. Stellen Sie außerdem sicher, dass die baudrate sollte gleich in putty und COM1, das ist der port, RS-232 mit dem PC verbunden ist. Sie können überprüfen, und stellen Sie es aus dem Geräte-manager in Windows. Durch die Art und Weise, timeout wird die zeitliche Lücke zwischen jeder Nachricht, die Sie erhalten.
In Fall können Sie nicht führen Sie den code aus dem Ruhezustand (das geschieht für einige Bibliotheken), tun Sie es in terminal. Dafür gehen Sie zu dem Ordner, in dem Sie Ihre python-code, und geben Sie python name.py.
Für USB-Seriell-zu-PC -
Haben Sie zwei Möglichkeiten
Ersten, können Sie kaufen ein USB-dongle für RS-232/RS-485, so dass Sie nicht verwenden würde GPIO-pins. Aber es ist besser, sich einen USB-hub für alle Maus -, Tastatur und dongle.
Zweiten und einfacher wird, können Sie kaufen ein FTDI USB zu TTL-Konverter und GPIOs verwenden, um eine serielle Kommunikation mit dem Rpi. Der code ist genau der gleiche, den man mit den oben. Verbindung ist einfach.
Modul -- Rpi
Txd -- > Txd
Rxd -- > Rxd
Gnd ---> Gnd
InformationsquelleAutor Caglar Sekmen
Dem Raspberry Pi die serielle Schnittstelle verwendet die 3,3 v-Logik; RS232 verwendet 12v, also ein Pegelwandler erforderlich wäre, um diese pins so kann man nicht mit RS232 direkt.
Serielle Schnittstellen in Python mit der PySerial-Modul (http://pyserial.sourceforge.net) es ist ziemlich einfach zu senden und empfangen von Daten. Es gibt Beispiele in der Dokumentation, sondern im wesentlichen um Daten zu senden:
Es hängt davon ab, was man mit den Daten macht und welche Art von Daten, die Sie erhalten, zu entscheiden, den besten Weg zu erhalten von Daten, sondern ein sehr einfaches Beispiel:
Diese einfach wartet, bis die angegebene Anzahl bytes abgerufen wurden oder der timeout-Wert erreicht ist.
Können Sie port.inWaiting() zurück, wie viele bytes sind derzeit in den Puffer.
pip installieren pyserial
InformationsquelleAutor beesbees
Sind Sie versuchen, um Befehle an den Raspberry Pi? (wie eine Konsole?) Ich würde vorschlagen, eine plain jane 3.3 V FTDI-Kabel. Sie können Sie von Digikey oder Sparkfun. Hinweis: der Raspberry Pi läuft auf 3,3 V, so müssen Sie sicher sein, dass alles, was Sie verbinden es läuft mit 3,3 V oder hat einen level-shifter. Weitere Informationen über level-shifter hier. (gehen Sie nach unten zu den Logik Spannungspegel Abschnitt)
Erste, Sie brauchen, um stellen Sie sicher, dass Raspbian veröffentlicht die serielle Konsole. Sie können tun, dass mit dem Skript, das sich hier.
Wenn Sie mehr daran interessiert, mit der Kommunikation mit anderen Geräten, dann ist vielleicht das folgende zu Ihnen passt:
Hast du einen Arduino? Sie können einen einfachen test, indem Sie diesen sketch auf den Arduino:
Und wire es mit dem folgenden Diagramm:
Hinweis: stellen Sie sicher, dass Sie nicht schließen Sie ein usb-Kabel an den Arduino. Angetrieben wird er von der Raspberry Pi.
Anschließend können Sie installieren und ausführen
screen
. Bildschirm ist ein Toter einfache Weise eine Verbindung zu einem seriellen port.Führen Sie dann die folgenden:
Dem Bildschirm erscheint leer. Aber, wenn Sie mit der Eingabe beginnen, werden Sie bemerken, dass die Zeichen, die Sie schreiben, sind immer geloopt zurück zu Ihrem terminal.
Hinweis: Wenn der Bildschirm noch leer ist, sollten Sie doppelt überprüfen Sie die Anschlüsse (power led auf dem Arduino ist eine gute Sache, um zu überprüfen).
Wenn Sie Zweifel haben, können Sie sehen, meine ganze Beispiel hier.
InformationsquelleAutor jaredwolff
installieren Sie python-Bibliothek für serial-Treiber. Sie können nicht mit rs232 direkt, stattdessen können Sie mit einem max232-chip zwischen rx(gpio15) tx(gpio 14) Stifte und usb-zu-Seriell-Konverter. oder Sie können einen usb zu ttl serial Kabel von adafruit. hier ist der link zum setup : http://learn.adafruit.com/adafruits-raspberry-pi-lesson-5-using-a-console-cable/overview
InformationsquelleAutor shreyas_patel21
Serielle Kommunikation Raspberry pi.
Es gibt viele Optionen für die serielle Kommunikation
und Schleife wieder die txd und rxd pins und überprüfen Sie, ob die send-Nachricht empfangen wird oder nicht.
Wenn Sie sind vertraut mit java Installieren pi4j und in den Beispiel-Ordner gibt es eine Beispiel-Programm , kompilieren und ausführen mit terminal. und überprüfen Sie die Ausgabe.
wenn Sie eine Verbindung über RS232 und Max232 , bitte beachten Sie, dass verwendet die 3.3 volt nicht 5 oder 12v. es kann brennen Sie Ihre Bord.
InformationsquelleAutor Arun Chand