Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 27 kwi 2024, o 17:25


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 
Autor Wiadomość
PostNapisane: 14 maja 2015, o 15:33 
Offline
Nowy

Dołączył(a): 14 maja 2015
Posty: 3
Pomógł: 0

Witam,

Mam problem z serwerem www na Atmedze zbudowanym na podstawie filmowego poradnika Atnel.
Poradnik jest bardzo czytelny i wszystko jest w nim jasne, ale...

Podczas transmisji kodu HTML z Atmegi do przeglądarki przez ATNEL WIFI 232 pojawiają się błędy.
Poświęciłem sporo czasu na analizę tych błędów i okazało się, że nie wszystkie bajty, które są transmitowane do modułu WiFI docierają do przeglądarki. Porównywałem to, co dochodzi z procesora do nóżki rxd modułu i to co dociera do komputera monitorując odpowiedni adres IP terminalem. Okazało się, że częśc bajtów w tajemniczy sposób gdzieś znika.
Jedyną zmianą w konfiguracji modułu było zgodnie z poradnikiem ustawienie AT+TCPDIS=OFF oraz AT+TCPTO=2
Przy plikach rzędu 50kB częściej zdarza mi się transmisja z błędami, niż transmisja bez błędów.
Przy prostych kodach HTML, rzędu kilkuset bajtów nie zauważyłem błędów.

Czy ktoś spotkał się z takim zachowaniem modułu WIFI? Czy jest na to jakieś znane lekarstwo?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 15:39 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

A jakie masz taktowanie procesora i jaką prędkość transmisji UART ustawiłeś?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 15:48 
Offline
Nowy

Dołączył(a): 14 maja 2015
Posty: 3
Pomógł: 0

115200, a kwarc 14,7456 MHz, ale to nie są błędy powodowane niewłaściwym ustawieniem transmisji w procku. Jeżeli równolegle do nóżki rxd modułu WiFi podłączę terminal RS232 to ta transmisja jest ok. Na terminalu nie ma błędów. To tajemnicze znikanie bajtów jest gdzieś na drodze pomiędzy modułem WiFi a przeglądarką.



Ostatnio edytowano 14 maja 2015, o 15:49 przez Pzx, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 15:48 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

Pzx napisał(a):
Przy prostych kodach HTML, rzędu kilkuset bajtów nie zauważyłem błędów.

Ja to omawiałem w poradnikach ....

Wyraźnie mówiłem że moduły WIFI nie nadają się do tworzenia jakichś potwornych stron www, nie nadają się do transmisji dużej ilości danych ciurkiem i to jest normalne jak kromka z masłem. Nawet w poradniki o serwerze www pokazywałem specjalne opóźnienia w trakcie transmisji danych żeby pozbyć się tych przerw w transmisji ... To nie są moduły odpowiadające możliwościami typowym kartom sieciowym jak w komputerach jeśli chodzi o przepustowość.

I nic z tym się nie zrobi ...

Za to IDEALNIE sprawują się do wszelkiej innej komunikacji z udziałem niewielkich pakietów danych i wtedy nie ma ŻADNYCH BŁĘDÓW, ŻADNEGO ZNIKANIA pakietów itp itd

Pzx napisał(a):
Przy prostych kodach HTML, rzędu kilkuset bajtów nie zauważyłem błędów.

Dokładnie bo moduły nie posiadają sprzętowych pinów do kontroli transmisji itp więc nadzorowana jest ona tylko programowo.

Jeśli więc ktoś chce sobie w oparciu o te moduły organizować strumieniowe przesyłanie danych to może o tym zapomnieć i lepiej niech nie kupuje tych modułów.

To nie jest żadna tajemnica.

------------------------ [ Dodano po: 1 minucie ]

Pzx napisał(a):
To tajemnicze znikanie bajtów jest gdzieś na drodze pomiędzy modułem a przeglądarką.

Możesz stosować opóźnienia pomiędzy przesyłanymi paczkami bajtów, tak jak w poradniku - wtedy okaże się że się uda. Ale nie licz na to że jak dwie osoby naraz odpytają stronę www to że nie nastąpi kaszana ;) bo nastąpi - nie ma innego wyjścia. Jak nie masz tych opóźnień w procku to pomyśl - ślesz dane do modułu na maxa, kończy w nim się bufor (bo musi się skończyć) .... w tym czasie kolejne dane które ślesz - idą w kosmos, dopiero jak część bufora się zwolni to przyjmuje kolejne dane z procka ...

------------------------ [ Dodano po: 2 minutach ]

Można na nich postawić małą prostą mini stronkę to wszystko 1-2 kb max ... a ty piszesz o 50 kb ! .....

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 16:16 
Offline
Nowy

Dołączył(a): 14 maja 2015
Posty: 3
Pomógł: 0

Dzięki za błyskawiczną odpowiedż :)

Oczywiście daję przerwy 100us po każdym 1000 bajtów (tyle standardowo ma ramka TCP), bez tego kaszana jest jeszcze większa :)
Testowałem różne czasy, powyżej 100us nie było już różnicy w błędach.
Te kilobajty potrzebuję do grafiki, którą też wysyłam z procka :)

A może jest jakaś softwaerowa metoda korekcji tych błędów, jakaś specyficzna metoda pisania HTMLa?
Taki fajny moduł (UDP, konfiguracja przez www, dobra dokumentacja), że aż mi szkoda tak to zostawić :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 16:32 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

Pzx napisał(a):
Te kilobajty potrzebuję do grafiki, którą też wysyłam z procka

Grafika! ;) ło Matko boska !

Pzx napisał(a):
jakaś specyficzna metoda pisania HTMLa?

Pierwsze słyszę :) moduł wysyła bajty - i czochra go permanentnie czy w nich jest html, php, muzyka, obraz czy inne "ogórki" ;)

Pzx napisał(a):
Taki fajny moduł (UDP, konfiguracja przez www, dobra dokumentacja), że aż mi szkoda tak to zostawić

Do takich celów to musisz użyć

1. procka 32-bitowego ARM/STM najlepiej z wbudowaną obsługą stosu TCP
2. układów typu ENC28J60

wtedy gwarantuję ci, że osiągniesz cel

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 16:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 16 mar 2014
Posty: 745
Lokalizacja: Warszawa
Pomógł: 32

Może jakimś wyjściem byłoby wczytywanie obrazków po prostu z zewnętrznego serwera?
Jeśli dobrze rozumiem chodzi Ci o upiększenie swojej stronki o ładną grafikę, którą pewnie teraz wysyłasz uC z karty SD?

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 17:10 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

No i o tych obrazkach z zewn serwera tez byla mowa w poradniku ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 17:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 16 mar 2014
Posty: 745
Lokalizacja: Warszawa
Pomógł: 32

Ach, to przepraszam, nie wiedziałem :oops: Przyznam się bez bicia, że jeszcze całego cyklu nie obejrzałem, gdyż ten temat jest jeszcze przede mną.
Pomysł ten zatem wydaje się być chyba dobrym rozwiązaniem dla kolegi ;)

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 maja 2015, o 22:20 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

MikieMan napisał(a):
Ach, to przepraszam, nie wiedziałem

Ale przecież nie ma żadnego problemu a tym bardziej - że jak widać to taki od razu domyślny sposób - ciągnąć grafikę z jakiegoś hosta zamiast z procka ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 maja 2015, o 11:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 gru 2013
Posty: 121
Pomógł: 16

Witam

Myślę , że zdecydowanie optymalnym rozwiązaniem dla problemów Kolegi jest postawienie strony na serwerze hostingowym a Atmegę + WIFI Mirka sprowadzić do formy klienta wysyłającego i odbierającego dane z serwera . Odpadają wtedy wszystkie problemy a wszystko chodzi miodzio i bez zacinek. W tym przypadku Atmega wysyła małe pakiety do serwera hostingowego takie jak stany wyjść, poziomy temperatur etc itp.Od strony serwera za pomocą formularzy i innych prostych narzędzi HTML+PHP możemy komunikować się zwrotnie z Atmegą i tworzyć interakcję.
Aby pójść w tym kierunku należy w skrócie :
- założyć sobie konto na hostingu (ja polecam darmowe np hostinger.pl)
- zapoznać się z HTML-em
- zapoznać się z CSS
- zapoznać się z PHP
- wydziergać sobie stały adres IP (można to prosto zrobić za pomocą opcji rutera DDNS)
Powyższe jest naprawdę bardzo proste do ogarnięcia w szczególności dla adepta programującego w C.
Sam polazłem w tym kierunku i polecam gorąco.

_________________
http://strefapic.blogspot.com



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO