Zmiana prędkości BT HC-05 na wyższą...

Elektronika w modelu i na ziemi

Moderatorzy: moderatorzy2014, moderatorzy

Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Zmiana prędkości BT HC-05 na wyższą...

Post autor: Jakub Jewuła »

Bry :)

Jako, że BT działa - Arduino wysyła dane, PC lub telefon odbiera to chciałbym zwiększyć prędkość
z domyślnych 9600bps... Niestety nie udaje mi się. Gdy zmienię w BT prędkość na 115200 to wogóle
nie udaje mi się połączyć ani z PC ani z telefonu. Na PC dostaje komunikat, że "port jest zajęty"(?).
Na Androidzie po prostu nie łączy się.
Gdy ustawię BT na 38400 to co prawda udaje się połączyć ale zarówno na PC jak i Androidzie
zamiast poprawnych danych odbieram sieczkę - tak jakby połączenie było źle skonfigurowane,
a ja zmieniam wyłącznie prędkość...

O ile na PC mogę ustawiać parametry COMa to na Androidzie nie ma możliwości zmiany prędkości -
przypuszczam, ze rozpoznaje to automatycznie...

Co mogę zrobić, żeby wyższe prędkości działały poprawnie? Danych jest dość sporo...

Z góry dzięki...

PS. Zachowanie BT jest dziwne, albo czegos nie kumam.
Ustawiam w BT 9600 - dziala.
Ustawiam w BT 19200 - nie moge sie polaczyc z predkoscia 19200, ale moge z 9600, 38400
z tym, ze zamiast danych dostaje kaszanke :) Hmm polaczyc sie moge z kazda predkoscia
inna niz 19200, ktora niby wybralem w BT. WTF?
Awatar użytkownika
maxiiii
Posty: 2348
Rejestracja: piątek 03 kwie 2015, 07:04

Re: Zmiana prędkości BT HC-05 na wyższą...

Post autor: maxiiii »

9600 - prędkość ustawiona fabrycznie
38 prędkość do konfiguracji modułu
“AT+UART=115200,1,0” komenda do zmiany prędkości portu com. Nie zmienia prędkości do konfiguracji.
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Zmiana prędkości BT HC-05 na wyższą...

Post autor: Jakub Jewuła »

No, o tym pisalem. Zmieniam predkosc BT i nie dziala - predkosc ustawiona w BT sie zmienia
(AT+UART? ja pokazuje) ale albo nie mozna sie wogole polaczyc, albo mozna polaczyc ale
dostaje sieczke zamiast danych...

q
Awatar użytkownika
Avatar
Posty: 127
Rejestracja: środa 12 sie 2015, 19:46
Lokalizacja: Ruda Śląska

Re: Zmiana prędkości BT HC-05 na wyższą...

Post autor: Avatar »

Może głupie pytanie, ale w projekcie z Arduino również zmieniasz prędkość UART?

Prędkość którą zmieniasz w HC-05 to jest prędkość portu UART a nie szybkość wysyłania danych po łączu radiowym - BT.
Aparatura: Taranis 9XD + pulpit
Modele: MPX Easy Glider 4; dronik 5" na ramie KHXC5 GEPRC
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Zmiana prędkości BT HC-05 na wyższą...

Post autor: Jakub Jewuła »

Tak. Wiem, że chodzi o prędkość portu. To jak sprzętowo działa BT i co robi tego nawet nie wiem bo i po co ;)
Niestety coś się kaszaniło i nie dałem rady ustawić skutecznie wyższej prędkości. Na razie układ działa na 9600.
Jak się ogarnę czasowo to kiedyś do tego wrócę...

q
Jakub Jewuła
Posty: 1867
Rejestracja: poniedziałek 12 lip 2010, 11:51
Lokalizacja: Kraków

Re: Zmiana prędkości BT HC-05 na wyższą...

Post autor: Jakub Jewuła »

Wracając do tematu :)

Sprawę w końcu rozkminiłem podłączając HC-05 do Arduino Mega Serial3
i wgrywając prosty programik przekazujący połączenia na serial monitor:

Kod: Zaznacz cały

void setup()
{
  Serial.begin(115200);
  Serial3.begin(38400);
}

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

  if (Serial.available())   
  Serial3.write(Serial.read());
}
Cokolwiek wpisujemy na serial monitor pierwszego portu, czyli tego którym jesteśmy podłączeni
do płytki Arduino Mega trafi na Serial3 i z powrotem. HC-05 należy uruchomić w trybie AT przytrzymując
przycisk podczas załączania. Myląca jest kwestia taka, że ta płytka z trybie AT działa z prędkością
nie wyższą niż 38400 bodów. Można ustawić 115200 i taka mam nadzieję będzie normalna prędkość
pracy ale gdy ustawimy Serial na te 115200 to nie pogadamy z płytką bo ona będzie działać na 38400 ;)

Tak więc uruchamiamy z przyciśniętym przyciskiem, wpisujemy AT+UART:8 - jeśli odpowie OK to jest ok ;)
Po resecie będzie łączyć się z Arduino z prędkością 115200. Chyba ;)

q
ODPOWIEDZ