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 w 2025? 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 9 kwi 2025, o 13:17


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 132 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5  Następna strona
    Autor Wiadomość
    PostNapisane: 15 sie 2012, o 20:59 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Dodałeś element do bufora (flaga_blokada) , ale nie zmieniłeś rozmiaru w funkcji odczytu (a może również zapisu). Masz 4, a powinno być po dodaniu 5.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 16 sie 2012, o 09:59 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Zmieniłem tylko tu na forum jest pomyłka. Wyświetliłoby mi warning :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 16 sie 2012, o 11:06 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    rafkins22 napisał(a):
    Zmieniłem tylko tu na forum jest pomyłka. Wyświetliłoby mi warning :)

    Nie wyświetli ostrzeżenia. Ta liczba to tylko ilość bajtów do odczytu i wcale nie musi pokrywać się z rozmiarem bufora. Funkcja nie zna rozmiaru bufora tylko miejsce gdzie się on zaczyna. I taka instrukcja TWI_write(*buf++); może wykonać się na komórkach pamięci poza buforem i np. nadpisać inna zmienną.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 16 sie 2012, o 12:34 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Masz rację! Zwracam honor ;)



    Ostatnio edytowano 16 sie 2012, o 15:41 przez rafkins22, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 16 sie 2012, o 15:41 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Jednak nadal NIE DZIAŁA! :|
    Krauser bardzo proszę o pomoc, bo widzę, że nikt inny nie ma takich chęci, ponieważ walczę z tym cały dzień, próbowałem na milionów sposobów i dalej lipa.

    Opiszę to dosyć dokładnie.
    LCD:
    ------------------------
    MENU STEROWNIKA:
    Program:
    ------------------------

    Kiedy mam podłączone zasilanie i wybiorę program 1 ( program się wykonuje się), a gdy następnie odłączę zasilanie i ponownie podłączę nadal wykonuje się program 1, czyli OK. Następnie klikam przycisk ESCAPE, który cofa się do menu głównego ( licznik zostaje zapamiętany, równy 1).

    ------------------------
    MENU STEROWNIKA:
    Program: 1
    ------------------------

    Niby wszystko jest okej, ale gdy ponownie odłączę i włączę zasilanie nadal wykonywany jest Program 1:
    np.-

    ------------------------
    Przekaźnik 1 ....

    -------------------------


    Wiem, że jest to spowodowane tym, że flaga_zasilania w momencie utraty zasilania jest zawsze równa 1, ale nie mam pomysłu co można z tym zrobić



    Ostatnio edytowano 10 sty 2013, o 11:07 przez rafkins22, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 16 sie 2012, o 16:23 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    No przecież jak klawisz escape ma przerywać działanie np. PROGRAM1 to to co zachowałeś w pamięci musisz teraz wyczyścić (wyzerować wszystkie wartości). Dodaj wpisywanie zer w funkcji klawisz_escape
    PS.
    Nie wiem dlaczego w funkcji klawisz_escape ładujesz licznik zachowany w pamięci zegara, bo niby powinno to być robione przed pętlą raz przy starcie programu. W niczym to nie przeszkadza, ale chyba to bez sensu.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 16 sie 2012, o 21:52 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Czyli rozumiem, że trzeba wyzerować wszystkie flagi programu 1 i 2 oraz flaga_blokada i flaga_zasilanie. Tak?



    Ostatnio edytowano 10 sty 2013, o 11:07 przez rafkins22, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 sie 2012, o 07:20 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Nie tylko wyzerować, ale i zapisać wyzerowane do pamięci nieulotnej. Jak tego nie zrobisz to pomimo wejścia do menu głównego w przypadku odłączenia i powrotu zasilania zmienne zostaną przywrócone.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 sie 2012, o 17:47 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Ale i tak ta linijka ustawi flage na 1:
    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: 17 sie 2012, o 18:45 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    rafkins22 napisał(a):
    Ale i tak ta linijka ustawi flage na 1:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    A niby dlaczego jak tam będzie zapisane 0.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 18 sie 2012, o 19:12 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Mam pytanie. Jak widać przekaźnik 4 wyłączy się jak sekundy>50. Jednak kiedy sekundy są większe od 50 i wcisnę enterem program 1 to wyświetla się napis "zakonczono...", czyli okej, ale gdy sekundy ponownie dojdą do 10 nie zapala się dioda 1 . Dlaczego?



    Ostatnio edytowano 10 sty 2013, o 11:08 przez rafkins22, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 sie 2012, o 07:46 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Bo po zakończeniu PROGRAM1 masz wyzerowane flagi. Jak chcesz aby program działał cyklicznie to po LEDx_OFF ustawiaj flagę na 1 a nie 0. W tym powyższym przykładzie w ogóle brakuje przestawiania flagi na końcu i to wykona się tylko raz i wciśniecie enter nic nie da, chyba że w międzyczasie wykonasz PROGRAM2. Jeszcze taka uwaga odnośnie warunku. Jak np. dla przekaźnika 4 sekundy są większe od 50 to nastąpi chwilowe włączenie (na kilka us). Przekaźnik nawet nie zdąży zareagować, ale to jednak błąd.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 sie 2012, o 12:40 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    ok dzięki.
    Powtarza się cyklicznie po jednokrotnym wciśnięciu przycisku enter. Jest tylko jeden problem, ponieważ gdy sekundy>50 i odłączę i włączę zasilanie nie ma napisu " Oczekiwanie..." a gdy sekundy dojdą do 10s Przekaźnik 1 się zapala. Wniosek jest taki, że jest zapis flag do pamięci RAM RTC i działa, tylko chyba flaga_p1_p4 przy wczytaniu po ponownym podaniu zasilania jest równa 1, dlatego "oczekiwanie.." nie działa. Nie wiem jak to mogę rozwiązać



    Ostatnio edytowano 10 sty 2013, o 11:08 przez rafkins22, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 sie 2012, o 14:07 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Jak chcesz mieć dokładnie to co w momencie wyłączenia to:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

    I tak zmień sobie dla każdej flagi.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 sie 2012, o 18:09 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Gdy odłączę zasilanie w momencie kiedy działa przekaźnik 1 i szybko ponownie podłącze to dopiero program 1 ponownie zostanie wznowiony kiedy zapali się przekaźnik 2 ( czyli flaga_p1_p2=1). Przekaźnik 1 nie będzie kontynuował pracy



    Ostatnio edytowano 10 sty 2013, o 11:09 przez rafkins22, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 sie 2012, o 21:10 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Przekaźnik nie załączy się, bo załadowany z pamięci został stan 2 (on), a dla tego stanu nie jest sprawdzany warunek czasowy włączenia. Musisz wrócić do poprzedniego sposobu wczytywania flag. A odnośnie wyświetlania "Oczekiwanie..." trzeba wymyślić inny sposób, gdy flaga jest równa 1:
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Pewnie jednak wystąpi migotanie, ale chyba wcześniej też już było bo nie zmieniasz flagi flaga_p1_p4.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sie 2012, o 17:40 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Przeczytałem dzisiaj w książce temat o magistrali 1wire i stwierdziłem, że spróbuje dodać wyświetlanie temperatury do mojego sterownika

    Ale wyświetla ERROR. Może mam źle podłączony czujnik. W trybie normal DQ jest podłączone do portu ( PD4) oraz przez rezystor 10K do VCC. Połączony mam JP31 z PD4

    link do instrukcji EVB 4.3 http://www.and-tech.pl/pl/download/evb43-v4



    Ostatnio edytowano 10 sty 2013, o 11:09 przez rafkins22, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sie 2012, o 18:20 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    No tak na schemacie brakuje węzła (kropki na linii DQ) więc nie wiadomo czy linia DQ od termometru czy ta od gniazda jest podłączona. Sprawdź to. Najlepiej odpal program testowy do 1-Wire od producenta zestawu albo inny gotowiec. Jak będziesz pewny sprzętu to zajmij się programem. Skąd wiesz gdzie jest JP3.1, bo nie podpisano? Lepiej podłącz się do SV1.2(środkowy).

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sie 2012, o 18:52 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Właśnie początkowo podłączałem do SV1.2 ale nie działało więc stwierdziłem, że JP3.1 jest odpowiedni. Program z DVD też odpalałem ale właśnie PD4 było podłączone do SV1.2, a nie sprawdzałem do JP3.1. Może coś w kodzie jest nie tak :?:



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sie 2012, o 19:48 
    Offline
    Użytkownik

    Dołączył(a): 24 sty 2012
    Posty: 1469
    Pomógł: 56

    rafkins22 napisał(a):
    Właśnie początkowo podłączałem do SV1.2 ale nie działało więc stwierdziłem, że JP3.1 jest odpowiedni. Program z DVD też odpalałem ale właśnie PD4 było podłączone do SV1.2, a nie sprawdzałem do JP3.1. Może coś w kodzie jest nie tak :?:


    Jeżeli to jest program z płyty z książki Mirka to działa na 100%. To kwestia konfiguracji, albo połączeń.

    _________________
    Jestem początkujący i moje porady mogą być błędne



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 sie 2012, o 20:16 
    Offline
    Moderator
    Avatar użytkownika

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

    rafkins22 napisał(a):
    Może coś w kodzie jest nie tak :?:


    Masz rację ;) .... jak tylko coś ci nie wyjdzie to od razu wiadomo co jest nie tak .... babol w kodzie z książki..... super podejście.

    _________________
    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: 23 sie 2012, o 10:38 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    MirkoT napisał(a):
    Masz rację ;) .... jak tylko coś ci nie wyjdzie to od razu wiadomo co jest nie tak .... babol w kodzie z książki..... super podejście.



    A czy ja tak napisałem?

    Może przepisując gdzieś się pomyliłem i nie widzę błędu



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 sie 2012, o 11:25 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Nie przepisuj kodów tylko skopiuj cały projekt i dostosuj do swojej płytki. Jak nie wiadomo gdzie jest błąd to trzeba sprawdzać osobno każdy moduł programu.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 sie 2012, o 11:49 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Odpaliłem 1wire i Projekt wielozadaniowy z DVD Pana Mirosława i wszystko działa. Podłączyłem do JP3.1. Jednak mój program nie wyświetla temperatury :(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 sie 2012, o 12:20 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Nie wiem co tam później może być nie tak, bo może sobie coś nadpisujesz innym działaniem, ale zaraz przed pętlą główną programu musi zadziałać. Może dodaj na chwilę przed pętlą główną po 1 odczycie opóźnienie ze 2 sekundy.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 sie 2012, o 13:30 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Niestety nic to nie dało. Próbowałem podłączać do kilku portów ale nadal lipa . Spróbuje z tym powalczyć, chociaż nie wiem co innego można jeszcze zrobić jeśli kod jest okej

    Szukając błędu znalazłem przy okazji że w kodzie SuperDebounce jest taki kod:

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



    Nie powinno być tak :?:

    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: 23 sie 2012, o 17:03 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    Masz rację. Na swojej płytce masz rezonator 16MHz i musisz przeliczyć wartość OCR2.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 sie 2012, o 17:06 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 12 lut 2012
    Posty: 243
    Lokalizacja: wlkp
    Pomógł: 2

    http://atnel.pl/uaktualnienia-programow-do-dvd.html

    post6106.html#p6106

    http://www.atmel.com/Images/doc2503.pdf

    strona 82



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 sie 2012, o 19:01 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2012
    Posty: 104
    Pomógł: 0

    Ale w AVR Studio mam ustawione na 8MHz :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 sie 2012, o 19:44 
    Offline
    Moderator
    Avatar użytkownika

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

    A w jakiej wersji AVR Studio piszesz ten kod ? tak z ciekawości zapytam i jak masz ustawione w AVR Studio te 8MHz ?

    _________________
    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: 132 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5  Następna strona

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO