Forum: Mikrocontroller und Digitale Elektronik USART Datenübertragung Probleme mit Bluetooth


von A. B. (developer_x)


Lesenswert?

Sehr geehrtes Forum,
ich habe folgendes Problem:
Ich habe ein Programm welches über den USART mit dem PC kommunizieren 
soll, das funktioniert alles auch soweit, ich benutze 4800 Baud, Bauteil 
B, ein RS232 Kabel und das Programm hTerm.

Nun habe ich mir ein Bluetooth Teil A) gekauft sowie einen Bluetooth USB 
Stick, mit welchem ich schon einige Experimente gemacht habe:
Wenn ich RX und TX miteinander verbinde, 5V anlege, und dann Verbindung 
zu diesem Teil via hTerm aufnehme, wird empfangen was gesendet wird.

Ebenso, wenn ich mit einem Smartphone Kontakt zu dem Teil aufnehme, über 
eine TerminalApp, kann ich mit diesem ohne Probleme kommunizieren.

Der Bluetooth USB funktioniert, wenn ich mit diesem mit dem Smartphone 
kommuniziere, einwandfrei.

Nur wenn ich nun einen MC-USART Daten senden lasse, über dieses BT Teil, 
dann kommt nichts gescheites an.
Hat jemand Erfahrungen, bzw. eine Idee woran dies liegen könnte?


A) Bluetooth Teil:
http://www.ebay.de/itm/Bluetooth-Module-Slave-Wireless-Serial-Port-fr-Arduino-Balance-Robot-/360663255764?hash=item53f9348ad4

B) RS232-TTL Wandler Teil:
http://www.ebay.de/itm/RS232-to-TTL-Converter-Module-COM-Serial-Board-MAX232CPE-Transfer-Chip-mit-Kable/271665405803?_trksid=p2047675.c100011.m1850&_trkparms=aid%3D222007%26algo%3DSIC.MBE%26ao%3D1%26asc%3D33846%26meid%3Dce83a52e34a44597ae827ce95d5b3801%26pid%3D100011%26rk%3D1%26rkt%3D10%26sd%3D400377783395

Danke für eine Antwort,
m.f.G.: Developer_X

von Felix A. (madifaxle)


Lesenswert?

Das BT-Modul arbeitet mit 3,3V, der MAX232 aber nur mit um die 5V.

Moment, Frage: was sollder MAX232 überhaupt? Von den schreibst du nichts 
im Artikel.

Mit welcher Spannung arbeitet dein Mikrocontroller?

: Bearbeitet durch User
von baud (Gast)


Lesenswert?

Richtige Baudrate? Richtige Übertragungsparameter?

von A. B. (developer_x)


Lesenswert?

Ah, es liegt an der Spannung:
Das BT Modul und den MC betreibe ich an der selben Spannung, 5V,
aber das BT sendet an den USART des MCs wahrscheinlich nur 3V Signale, 
ne?

Habt ihr ne Idee, wie ich das machen könnte?

Ich denke das einfachste wäre jetzt ne getrennte Spannungsversorung,
5V für das BT Modul, und 3V für den MC. Dann MC_USART und RXTX des BT 
Teils verbinden und es müsste klappen...

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

A. B. schrieb:
> Das BT Modul und den MC betreibe ich an der selben Spannung, 5V,
> aber das BT sendet an den USART des MCs wahrscheinlich nur 3V Signale,
> ne?

Warum sollte das so sein? Steht das im Datenblatt des BT-Moduls?

von A. B. (developer_x)


Lesenswert?

Also auf dem Modul, habe ich erst jetzt gesehen, steht drauf,
Spannungsversorung so 3.6-6V, TTL Level auf 3.3V.

Ich habe die Spannung des MCs auf 3.25V, (mit nem Potentiometer, genauer 
kann ich das nicht einstellen), aber das klappt leider auch nicht.

Ist es so wichtig, dass die Spannungspegel der beiden Teile genau 
identisch sind, oder liegt es doch an was anderem?

von Felix A. (madifaxle)


Lesenswert?

Schwer zu sagen. Wäre es möglich, mal ein Bild vom Aufbau zu bekommen?
Ohne Bild bliebe immernoch die Prüfung der Baudrate, ein Defekt durch 
die unterschiedlichen Spannungen an den RX- und/oder TX-Pins, fehlende 
Masseverbindung?

von Kirsch (Gast)


Lesenswert?

A. B. schrieb:
> Ich habe die Spannung des MCs auf 3.25V, (mit nem Potentiometer, genauer
> kann ich das nicht einstellen), aber das klappt leider auch nicht.

Wo ist der Potentiometer?
zwischen Versorgungsspannung und µC? Das kann nicht funktionieren.


oder hast du einen einstellbaren Spannungswandler?



So wie es aussieht arbeitet das BT-Modul mit 3,3V und 5V als 
Versorgungsspannung.
Aber seine IO-Pins haben immer 3,3V Pegel.

Während der µC mit 3,3V Pegeln am Eingang trotz 5V Versorgung keine 
Probleme hat, musst du in die andern Richtung ein Spannungsteiler 
nehmen, damit das BT-Modul nicht beschädigt wird.

von Andre R. (arduino_90)


Lesenswert?

Hallo,

hatte letztens das Problem, dass ich ebenfalls mit UART gearbeitet habe 
und die Kommunikatione mit nem µC nicht funktioniert hat (Arduino UNO). 
Das Problem lag daran, dass die eine Seite mit active low und die andere 
mit active high gearbeitet hat. Bei solch niedriger Baud kann man, wenn 
du Arduino nutzt, den Softwareserial verwenden und dort das Signal 
invertieren. Ansonsten kannst du das Signal auch mit einer einfach 
Inverterschaltung (1 Transistor, 3 Widerständen) selber invertieren.

grüße

von A. B. (developer_x)


Lesenswert?

Also: Wenn ich mit dem BT Teil verbunden bin, und den TX Pin an eine LED 
schalte, leuchtet die LED, wenn ich etwas sende flackert sie.

Wenn ich nun vor die LED nen Inverter (mit PNP Transistor) schalte, dann 
leuchtet die LED trotzdem die ganze zeit.

Es scheint eine Wechselspannung anzuliegen an TXD :|
Zumindest zeigt mir das mein Multimeter an, wenn ich mit V~ messe.

Habt ihr eine Idee, worum es sich beim BT Teil dann handelt?
Active low oder active high...

Habt ihr eine Idee was ich nun tun kann?

Danke für eure Antworten,
m.f.G.: Developer_X

: Bearbeitet durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

A. B. schrieb:
> Habt ihr eine Idee was ich nun tun kann?

Sieh ins Datenblatt.

von A. B. (developer_x)


Lesenswert?

http://www.ebay.de/itm/360663255764?clk_rvr_id=912713205928&rmvSB=true

Es gibt keins!
Sag mir wie das hier heißt, ich find keins.

von A. B. (developer_x)


Lesenswert?

Was ich nun herausgefunden habe:
Wenn ich das RS232 TTL Wandler Teil mit dem MC kommunizieren lasse, gab 
es ja nie Probleme, nun habe ich das RS232 TTL Wandler Teil mit dem BT 
Teil kommunizieren lassen:
Wenn ich über mein Handy das BT Teil etwas senden lasse, dann wird das 
am PC empfangen, aber völlig falsch, wenigstens die richtige anzahl an 
buchstaben.

Wenn ich vom PC das RS232 TTL Wandler Teil etwas senden lasse, kommt 
beim Handy über das BT Teil gar nichts an.

Es muss definitiv daran liegen, dass das BT Teil anders kommuniziert..

Denkt ihr, so ne Inverterschaltung mit nem PNP Transistor kann bei 4800 
Baud überhaupt so schnell reagieren?

Danke für eine Antwort,
m.f.G.: Developer-X

von A. B. (developer_x)


Lesenswert?

Ich habs!
Die Default Baud Rate liegt bei 9600, wenn ich hterm auf 9600 setze 
funktionierts, und wahrshceinlich dann auch mit dem MC....

von Felix A. (madifaxle)


Lesenswert?

Ernsthaft jetzt? Das steht doch in der Artikelbeschreibung fett 
drinne...

von A. B. (developer_x)


Lesenswert?

Tja, das hab ich erst jetzt entdeckt.
Jetzt stellt sich nur noch die Frage, ob man das auch umstellen kann...

von Felix A. (madifaxle)


Lesenswert?


von A. B. (developer_x)


Lesenswert?

Ok, vielen Dank!

:)

m.f.G.: Developer_X

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.