Ich verwende PIC16F1824, Xtal 8 MHz und ein Bluetooth-Modul mit einer Baudrate von 9600. Wenn ich Daten über Hyperterminal an das BT-Modul gesendet habe, funktioniert es einwandfrei. Aber wenn ich dieselben Daten mit Android (Amarino) sende, wurden die empfangenen Daten beschädigt.
Was schief gelaufen ist?
Zusätzliche Informationen: Beschädigte Daten. @Kevin: Originaldaten: 1234567890 Aber als ich mit Android gesendet habe, lautet es 1234!!0 Irgendwie hat 56789 gefehlt.**
Ein anderes Beispiel: ABCDEF, aber es liest sich nur als ABCD!! Grundsätzlich kann es nur die ersten 4 Zeichen lesen.
Sie haben nicht viele Informationen gegeben, aber das riecht nach einem Konfigurationsproblem der seriellen Schnittstelle. Sind Sie wirklich sicher, dass die Baudrate, die Anzahl der Datenbits, die Parität und die Anzahl der Stoppbits in beiden Fällen gleich sind? Wahrscheinlich nicht. Da es mit Hyperterm funktioniert, sehen Sie, worauf es eingestellt ist, und stellen Sie dann sicher, dass das Android auf dasselbe eingestellt ist.
Sehen Sie sich auch an, wie die Flusskontrolle gehandhabt wird. Wenn das Gerät erwartet, RTS/CTS zu verwenden, und das Android diese Leitungen nicht angeschlossen hat oder nicht eingeschaltet hat, könnte es dazu führen, dass es nicht funktioniert.
Ich habe dies mit einer Sena Bluetooth-App in Android für mein Android versucht. Ich habe sichergestellt, dass mein CTS und RTS meines Bluetooth-Moduls miteinander verbunden sind. Meine Bluetooth-App erforderte, dass ich die Baudrate auf 115200 einstellte. Ich war erfolgreich bei der Datenübertragung.
Sie müssen Ihr Bluetooth-Modul einschalten und die Baudrateneinstellungen ändern. Siehe folgenden Link:
Wie ändere ich die Baudrate für Bluesmirf, ohne eine Verbindung zum PC herzustellen?
Kellenjb
stevenvh
Kevin Vermeer
Kortuk
Kortuk