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 13 mar 2025, o 06:00


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 
    Autor Wiadomość
    PostNapisane: 9 gru 2015, o 10:34 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Witam!

    Proszę o pomoc w zorganizowaniu wyświetlania temperatury na wyświetlaczu 4x7SEG (ATB V1.03) analogicznie do wyświetlania godziny:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Pomiar temperatury odbywa się za pomocą czujnika DS18B20 i z użyciem biblioteki Mirka:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

    Wyświetlenie cel i cel_fract_bits w sposób jak poniżej nie daje spodziewanego efektu:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Na wyświetlaczu LCD działa poprawnie (oczywiście inne ciało funkcji).
    Pozdrawiam



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 gru 2015, o 17:04 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 sty 2013
    Posty: 1760
    Pomógł: 196

    Witam
    To może spróbuj najpierw napisać takie coś:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    i działać na st i dz_st.

    Pozdr.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 gru 2015, o 17:14 
    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

    Taka funkcja main zadziała:
    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.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 gru 2015, o 19:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Krauser napisał(a):
    Taka funkcja main zadziała:

    Dzięki, ale jeszcze nie działa. Wyświetlacz mam podłączony przez SPI. Działa prawidłowo - wyświetla wartości po wpisaniu wprost: np cy=1 itd. Kod, który napisałem na wzór Twojego kompiluje się bez błędów i ostrzeżeń. Efekt jest jednak daleki od oczekiwań. Na Wyświetlaczu LED pojawia się wartość: 2800, a czujnik temperatury nie reaguje. W innych projektach, ale z wyświetlaniem na LCD na tym samym hardware czujnik działa poprawnie. Proszę o sprawdzenie, Kod poniżej:
    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.


    P.S. Działa, ale nie odświeża temperatury. Po resecie widać, że jest inna :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 gru 2015, o 19:16 
    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

    avrfun napisał(a):
    Na Wyświetlaczu LED pojawia się wartość: 2800, a czujnik temperatury nie reaguje.

    Bo temperatura odczytywana jest tylko na starcie.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 gru 2015, o 19:44 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Krauser napisał(a):
    Bo temperatura odczytywana jest tylko na starcie.

    Próbuję zorganizować warunek na timerze programowym, ale nadal nie działa.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    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: 9 gru 2015, o 20: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

    Zrób tak (ewentualnie zmień rejestry):
    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.

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 gru 2015, o 20:37 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Czy warunek z timerem programowym nie ma szans powodzenia?
    Debugger jednodiodowy pokazuje, że on działa tylko trochę nieregularnie ;) :
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Gdzie wstawić
    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: 9 gru 2015, o 22:23 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Nadal nie odświeża temperatury. Odczyt jednorazowy. Debugger jednodiodowy (linia 37) nie zmienia swego stanu. Nie widzę resetowania licznika counter.
    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.


    P.S. Zmienną counter zadeklarowałem jako volatile w programie głównym. Zerowanie licznika counter=0 ustawiłem po odczycie temperatury. Odczyt ruszył :D Ciekawi mnie tylko dlaczego części dziesiętne wyświetlane są tylko jako 0 i 5. Na LCD było płynnie 0-9.

    Nie wiem jak zaświecić kropkę dziesiętną:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Mam jeszcze jeden problem. Korzystam z wyświetlania LED na magistrali SPI. Tablice dla nr wyświetlacza LED i cyfr są zdefiniowane w programie głównym (cyfry bez kropki i z kropką). W jaki sposób dopisać do tablicy Cyfra[] symbol własny np. stopień Celcjusza Hex: 0x39 i użyć go do wyświetlenia cyfry 4: cy4= ?
    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.


    Dziękuję bardzo!



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 gru 2015, o 19:49 
    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

    avrfun napisał(a):
    Nie wiem jak zaświecić kropkę dziesiętną:

    Przed wysłaniem na wyświetlacz należy zrobić lub nie AND ze zdefiniowaną liczbą gdzie jest tylko kropka. Zgodnie z BB ja mam tak:
    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: 10 gru 2015, o 21:03 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 02 kwi 2015
    Posty: 450
    Pomógł: 3

    Krauser napisał(a):
    avrfun napisał(a):
    Nie wiem jak zaświecić kropkę dziesiętną:

    Przed wysłaniem na wyświetlacz należy zrobić lub nie AND ze zdefiniowaną liczbą gdzie jest tylko kropka. Zgodnie z BB ja mam tak:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Witam!
    Bardzo dziękuję. Ja zrealizowałem to tak. Nie wiem czy poprawnie, ale spełnia założenia:
    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.

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


    Mam jeszcze jeden problem do rozwiązania (na chwilę obecną). Chciałbym wyświetlać naprzemiennie czas z rtc np (20:49): cy1=2, cy2=0, cy3=4, cy5=9 i temperaturę jak powyżej.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

    Jak to zrealizować?



    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 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:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO