HM-10 Bluetooth Modul mit Handy und Softwareserial

Hallo, ich habe ein HM-10 Bluetooth Modul an meinen Arduino UNO angeschlossen. Der RX Anschluss des Moduls ist mit PIN 11 verbunden und der TX Anschluss des Moduls mit PIN 10. Ich habe mein Handy mit dem Bluetooth Modul verbunden. Warum schaltet sich die LED nicht ein, wenn ich über das Handy Terminal "test" schreibe?
Hier mein Code:

#include <SoftwareSerial.h>
SoftwareSerial ble(10, 11);

void setup() {
  pinMode(12, OUTPUT);
  ble.begin(9600);

}

void loop() {
  if(ble.read() ==" test"){
    digitalWrite(12, HIGH);
  }
}

Hallo
probier mal:

 if(ble.readString()==" test")

Ich wünsche einen geschmeidigen Abend und viel Spass beim Programmieren in C++.

Funktioniert leider nicht. Trotzdem Danke

Hallo,
read liest nur ein Byte von der Schnittstelle ein. Zudem kommt es noch darauf an was als unsichtbare Zeichen mit ankommt. Dabei könnte es sich um ein Wagenrücklauf CR oder Linefied LF oder auch beides handeln. Was das genau ist hängt von der Handy app ab.
Mann liest alle Zeichen hintereinander ein und wenn ein Endzeichen kommt wird die Eingabe als beendet angenommen. readString() liest mehrere Zeichen gleichzeitig ein. Es gibt auch noch readStringUntil(). Such mal in der Referenz nach den Begriffen und Methoden. Beispiele zur Seriellen Schnittstelle gibt´s in der IDE ebenfalls um sich was abzuschauen.
Heinz

Hi,
müsste, wenn ich Serial.println(ble.readString()); mache, nicht eigentlich der vom Handy Terminal gesendete Text im Seriellen Monitor angezeigt werden. Das tut er nämlich nicht. Vielleicht liegt es dann auch an der App?

Hallo,
mach mal
Serial.print(ble.read(),HEX);
Dann siehst du alles was kommt
Heinz

Hallo
Im setup() fehlt ein Serial.begin(9600); für die Konsole.

Hallo,

ein

if (ble.available() > 0)

wäre auch nicht schlecht . Schau Dir doch noch mal die Beispiele an und hier was zum lesen

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.