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

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • 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.