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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 13 cze 2025, o 22:42


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
    Autor Wiadomość
    PostNapisane: 3 lip 2015, o 18:24 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Witam serdecznie!
    W trzeciej części poradników o serwerze http mowa jest o ustawieniu AT+TCPTO=2 i AT+TCPDIS=off na module wifi. W związku z tym łącze się z modułem po UDP, wpisuje te komendy, oby dwie komendy ustawiają się poprawnie. Wykonuję restart modułu i upewniam się, czy wszystko ustawiło się dobrze. TCPTO jest 2, więc dobrze, ale TCPDIS przestawia się na on. Próbowałem już ustawiać to przez RS232, to samo.

    Z góry dziękuje za pomoc!

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 3 lip 2015, o 19:12 
    Offline
    Użytkownik
    Avatar użytkownika

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

    Sprawdziłem na dwóch modułach i jest tak samo jak u Ciebie. Po restarcie moduły zawsze pokazują AT+TCPDIS=on.
    Pomimo tego mój testowy serwer działa bez problemów bezustannie od chyba 4 miesięcy, na płytce stykowej z ATmega328p, z resztą sam zobacz :D


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 3 lip 2015, o 19:41 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Faktycznie, wszystko działa pięknie. Rozumiem, że w programie nie jest ustawiane w żaden sposób TCPDIS na off?

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 3 lip 2015, o 19:52 
    Offline
    Użytkownik
    Avatar użytkownika

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

    Nie, nie jest.
    A ostatnio zawitał: "ShutDownSystem" ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 3 lip 2015, o 19:59 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Dzięki Kolego za informacje!

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 3 lip 2015, o 20:23 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 23 paź 2011
    Posty: 401
    Lokalizacja: Siedlce
    Pomógł: 7

    anshar napisał(a):
    Sprawdziłem na dwóch modułach i jest tak samo jak u Ciebie. Po restarcie moduły zawsze pokazują AT+TCPDIS=on.
    Pomimo tego mój testowy serwer działa bez problemów bezustannie od chyba 4 miesięcy, na płytce stykowej z ATmega328p, z resztą sam zobacz :D


    Też to zauważyłem - musi być jakiś babolek w firmware.

    _________________
    Czekamy na RedBook'a!



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 3 lip 2015, o 20:28 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 01 sty 2014
    Posty: 243
    Pomógł: 9

    Ja też zauważyłem tego babolka u siebie. Wcześniej pisałem już o tym na forum z zapytaniem czy tylko ja tak mam ale jakoś obeszło się bez odzewu. Ja myślę, że nie powinno być problemem dopisania kilku linijek kodu na samym początku programu w atmedze, który by na kilka sekund po starcie przełączył WiFi w tryb komend AT, ustawił tę opcję i wrócił do tego co ma być.

    _________________
    http://www.ate-zbaszyn.eu



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 lip 2015, o 20:01 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Generalnie ta komenda ma jakiś kolosalny wpływ na działanie takiego prostego serwera? Warto dopisać ten kawałek do avr'ka, czy nie zawracać sobie flash'u tą komendą?

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 lip 2015, o 20:52 
    Offline
    Użytkownik
    Avatar użytkownika

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

    Jak sam sprawdziłeś, wszystko śmiga bez problemu. Chyba nie ma co kombinować. W razie czego zawsze można dopisać. Jeśli bardzo Ci na tym zależy to daj znać,
    pomogę.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 lip 2015, o 20:55 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Chyba dla pewności sobie to zrobię, co mi szkodzi 29kb Flashu wolnego, więc co będę oszczedzal. Raczej dam radę, tym bardziej, że mam poradniki Pana Mirka.

    Pozdrawiam!

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 lip 2015, o 21:04 
    Offline
    Użytkownik
    Avatar użytkownika

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

    Fajnie, jak już napiszesz to pochwal się koniecznie, jak to rozwiązałeś. Może się komuś przyda?! ;)
    Pozdrawiam!



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 5 lip 2015, o 22:04 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Może majstersztyk to nie jest, ale działa:

    Na samym początku programu takie 2 pierdółki:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Potem w funkcji main():
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    W pętli while(1) w funkcji main():
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    I gdzieś na dole kodu:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    I jedna uwaga, u mnie to działa tylko wtedy, gdy moduł podłączy się do sieci. Dlatego na samym początku funkcji main() strzeliłem brzydkiego _delay_ms(2000); . Pewnie można by rozwiązać to sprzętowo, ale już nie chciało mi się kombinować. Oczywiście robione na ATmega32.

    _________________
    :)



    Ostatnio edytowano 6 lip 2015, o 10:16 przez ShutDownSystem, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 lip 2015, o 07:31 
    Offline
    Moderator
    Avatar użytkownika

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

    ShutDownSystem napisał(a):
    TIMSK &= ~(1<<OCIE2); //W ten sposób da się wyłączyć timer sprzętowy???!

    W ten sposób wyłączasz TYLKO przerwanie od timera, a nie timer - to dość duża różnica. Jeśli więc zależy ci tylko na wyłączeniu przerwania a timer może sobie tykać to jest ok ....

    Samo wyłączenie (zastopowanie) timera uzyskujesz za pomocą bitów prescalera , trzeba je po prostu wyzerować i już.

    _________________
    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: 6 lip 2015, o 11:10 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Tak jeszcze się zastanawiam, skoro to będzie wykonane tylko raz w trakcie życia programu, to czy warto wyciągnąć ten programowy Timer poza pętle w funkcji main().

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    :)

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 lip 2015, o 17:25 
    Offline
    Moderator
    Avatar użytkownika

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

    ShutDownSystem napisał(a):
    Tak jeszcze się zastanawiam, skoro to będzie wykonane tylko raz w trakcie życia programu, to czy warto wyciągnąć ten programowy Timer poza pętle w funkcji main().

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    :)


    Jak już robić to raz przy starcie programu to RAZ przed pętlą główną i bez żadnego timera programowego, ot po prostu wysłać

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    albo w ogóle sobie tym poleceniem głowy nie zawracać.

    _________________
    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  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

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


    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