Witam
Mam na stole moduł wifi232. Napisałem do jego testowania skromną aplikację pod windows.
Moduł po uruchomieniu jest w trybie transparentnym, aby wejść do trybu at zgodnie z instrukcja wysyłam +++ i w odpowiedzi na 'a' wysyłam 'a'. I to działa, po przejściu do trybu at mogę wysyłać dowolne polecenia AT. Przejście do trybu transparentnego następuje po wysłaniu komendy AT+ENTM.
Poniżej przykład komunikacji i wysyłania danych do serwera
Problem napotykam na pkt 9, ta sekwencja +++ jest traktowana jak poprzednia paczka danych (z pkt 7) i wysyłana do sieci.
Samo wysyłanie danych działa, po stronie serwera sprawdzałem i ciąg bajtów jest taki jak oczekiwano, czyli zgodny z tym co wyszło z wifi232.
Ale gdy pominę pkt 7 i 8 to ciąg znaków +++ powoduje przełączenie modułu to trybu at.
Dlaczego po rozpoczęciu transmisji do sieci moduł każdy nadesłany siąg znaków (w tym przypadku +++) traktuje jako paczkę przeznaczoną do wysłania danych ?
wifi232 - wyjście z trybu transparentnego
- Marcin
- User
- Posty: 309
- Rejestracja: środa 09 wrz 2015, 19:30
- Lokalizacja: Królewskie miasto Sandomierz
wifi232 - wyjście z trybu transparentnego
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Re: wifi232 - wyjście z trybu transparentnego
"To switch from data mode to command mode, sessions sent an escape sequence string of three plus signs ("+++") followed by a pause of about a second. The pause at the end of the escape sequence was required to reduce the problem caused by in-band signaling: if any other data was received within one second of the three plus signs, it was not the escape sequence and would be sent as data."
https://en.wikipedia.org/wiki/Hayes_command_set#+++
https://en.wikipedia.org/wiki/Hayes_command_set#+++
- Marcin
- User
- Posty: 309
- Rejestracja: środa 09 wrz 2015, 19:30
- Lokalizacja: Królewskie miasto Sandomierz
Re: wifi232 - wyjście z trybu transparentnego
Dodałem przed wysłaniem +++ instrukcję Thread.Sleep(1000) powodującą wstrzymanie wątku na 1000ms.
Jeszcze przed wysłaniem +++ należy odczytać zawartość bufora.
I teraz wygląda na to że działa poprawnie.
Dzięki za info, przejrzałem manual wifi232 ale nie ma tam takiej informacji.
Jeszcze przed wysłaniem +++ należy odczytać zawartość bufora.
I teraz wygląda na to że działa poprawnie.
Dzięki za info, przejrzałem manual wifi232 ale nie ma tam takiej informacji.
Re: wifi232 - wyjście z trybu transparentnego
Coś słabo szukałeś......
In order to exit from Data mode to AT command mode, you have to write +++(0x2B 0x2B 0x2B)
without any followed char during more than 2 seconds.
In order to exit from Data mode to AT command mode, you have to write +++(0x2B 0x2B 0x2B)
without any followed char during more than 2 seconds.
Wróć do „Inne mikroklocki, również peryferyjne”
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości