Probleme beim Verbinden des UART-Geräts über den USB-Anschluss

Probleme beim Verbinden des UART-Geräts über den USB-Anschluss

Ich versuche, über USB mit einigen UART-Geräten zu kommunizieren. Ein HT-06-Bluetooth-Modul und ein GY-NEO6MV2-GPS-Modul. Ich verwende ein Prolific PL2303-USB-Kabel. Als Backup habe ich auch ein Silicon Labs CP2102.

Wenn ich den PL2303 anschließe

  • ein lsusbBefehl gibt zurück
    Bus 001 Device 015: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
    
  • und ein dmesgBefehl gibt zurück
    [147697.657037] usb 1-11: pl2303 converter now attached to ttyUSB0
    
  • eine ls -lvon /devShows
    crw-rw----  1 root dialout   188,   0 Jun 15 08:58 ttyUSB0
    

und ich habe mich selbst zur dialoutGruppe hinzugefügt und die Einstellungen chmodauf gesetzt 666.

Ich verwende dann Putty mit einer seriellen Verbindung mit Port /dev/ttyUSB0, Baud 9600 und Parität 8,1,Keine. Ich verbinde das PL2303-Kabel mit dem HT-06 als GND-GND, VCC-VCC, TX-RX und RX-TX. Alles ziemlich grundlegende Dinge.

Der Putty-Bildschirm beginnt mit einem Cursor in der oberen linken Ecke. Ich sende einen AT-Befehl. Ich erwarte OK, aber es passiert nichts. Ich habe ein zweites HT-06, aber immer noch nichts.

Ich dachte, es könnte ein defektes RX- oder TX-Kabel sein (ich bekomme eine blinkende LED auf dem HT-06, also sind VCC und GND in Ordnung), also habe ich den PL2303 gegen den CP2102 ausgetauscht. Sowohl lsusb als auch dmesg sagen mir, dass der Konverter angeschlossen ist (wieder bei /dev/ttyUSB0). Mit denselben Putty-Einstellungen bekomme ich immer noch nichts.

In ähnlicher Weise habe ich den NEO6M sowohl mit dem PL2303 als auch mit dem CP2102 verbunden und xgps(eine Teilmenge von gpsd) verwendet. Dies gibt einen Fehler zurück

gpsd is not connected to /dev/ttyUSB0

und offensichtlich passiert nichts.

Ich verwende Linux Mint 20 mit Kernel 5.4.0-74-generic, der die Treiber für CP210X und PL230X enthält. Ich habe auch verschiedene USB-Anschlüsse (USB2 und USB3) ausprobiert. Trotz 2 verschiedener USB-TTL-Konverter, 3 UART-Geräten und mehreren verschiedenen seriellen Terminal-Apps (ich habe auch minicommund ausprobiert rfcomm) funktioniert nichts.

Antwort1

Ich habe einen alten Arduino ausgegraben, der zuvor auf meinem PC funktioniert hat, als es noch eine viel ältere Linux-Version war. Mit der neuesten Arduino IDE und dem Serial Monitor ... funktioniert es. Ich kann jetzt sowohl mit HC-06- als auch mit NEO6m-Geräten kommunizieren. Nicht die Auflösung, nach der ich gesucht habe, aber es ist ein Workaround

Antwort2

Können Sie Ihre TTY-Konfiguration stty --all -F /dev/ttyUSB0 freigeben und das CLOCAL-Flag überprüfen, alle Konfigurationsflags überprüfen und auch Ihre Hardwarekonfiguration überprüfen? Es gibt verschiedene Verdrahtungskonfigurationen für den DB9-Anschluss. Denken Sie auch daran, dass die Geschwindigkeit die Baudrate oder die Bitrate ist (abhängig von der Treiberkonfiguration). Wenn Sie also eine Bitrate von 9600 möchten, sollten Sie die Geschwindigkeit manchmal auf 1200 einstellen

Antwort3

Ich habe mein Modem mithilfe des picocom( sudo apt install picocom)-Programms zum Laufen gebracht:

picocom /dev/ttyUSB0

Geben Sie dann einfach Befehle ein. Versuchen Sie es auch mit sudo, wenn es nicht funktioniert.

verwandte Informationen