Skocz do zawartości

HC-05 na wszystkie komendy AT odpowiada ERROR:(0)


Danyeru

Pomocna odpowiedź

Cześć!

Chciałem pokonfigurować sobie moduły (własny pin, nazwy, łączenie automagiczne takie tam).

Jednak w trybie AT na wszystkie komendy dostaję odpowiedź: ERROR:(0)

Moduły mam trzy, odpowiada tak każdy w tym ten, który już kiedyś konfigurowałem. Do Arduino podłączam przez konwerter poziomów logicznych. Konwertery mam dwa, więc żeby wykluczyć, że któryś uszkodzony, to próbowałem na obu. Próbowałem także z pominięciem konwerterów i dzielnikiem na przychodzącej linii danych.

Próbowałem wykluczyć też śrdodowisko Arduino IDE i do terminala podłączałem się przez Tera Term.

Moduły i komunikacja ogólnie działają - kiedy zmieniam w sofcie baud na 9600 i nie jestem w trybie AT, to mogę sobie pomiędzy terminalami (Serial Arduino i BT Serial na telefonie sparowanym z HC) wysyłać wiadomości.

Próbowałem z tymi programami i bibliotekami:
 

#include <SoftwareSerial.h>
SoftwareSerial mySerial(12, 13);
void setup() {
  Serial.begin(9600);
  Serial.println("Komenda AT:");
  mySerial.begin(38400);
}
void loop()
{
  if (mySerial.available())
    Serial.println(mySerial.read());
  if (Serial.available())
    mySerial.write(Serial.read());
}

 

#include <SoftwareSerial.h>

SoftwareSerial BTSerial(8, 9); // RX | TX

void setup()
{
  Serial.begin(9600);
  Serial.println("Komenda AT:");
  BTSerial.begin(38400);
}

void loop()
{
  if (BTSerial.available()) Serial.write(BTSerial.read());

  if (Serial.available()) BTSerial.write(Serial.read());
}
#include <altSoftSerial.h>
altSoftSerial mySerial(8, 9);
void setup() {
  Serial.begin(9600);
  Serial.println("Komenda AT:");
  mySerial.begin(38400);
}
void loop()
{
  if (mySerial.available())
    Serial.println(mySerial.read());
  if (Serial.available())
    mySerial.write(Serial.read());
}

Różne piny, różne prędkości. Na innych niż 38400 nie dostaję w ogóle feedbacku.
Wchodzenie w tryb AT realizuję wciskając przycisk key34 w trakcie uruchamiania.
Próbowałem też wysyłać komendy przy stale podpiętym zasilaniu do wejścia EN, jak i wciskać ten przycisk podczas przesyłania komend.
Nic to nie zmienia.

Jakieś pomysły?

EDIT:
Spróbowałem płytki Arduino bez Atmegi jako bezpośredniego konwertera USB-UART i tutaj także odpowiada mi tylko ERROR:(0)

Edytowano przez Danyeru
Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.