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 18 maja 2025, o 18:13


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
    Autor Wiadomość
    PostNapisane: 9 kwi 2018, o 07:57 
    Offline
    Nowy

    Dołączył(a): 09 kwi 2018
    Posty: 2
    Pomógł: 0

    Moi drodzy,

    muszę wyświetlić liczbę wykonanych pętli na wyświetlaczu segmentowym. Wiem, że to banał, niestety jestem kompletnie zielony w temacie.
    Proszę pomóżcie mi poprawić ten kod :oops:

    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.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 kwi 2018, o 09:50 
    Offline
    Użytkownik

    Dołączył(a): 07 gru 2013
    Posty: 90
    Pomógł: 6

    Witam. Zrób tak:
    1 - zmienna którą chcesz wyświetlić np: "jakis_licznik" przekształć na poszczególne cyfry do wrzucenia na wyświetlacz ( masło maślane ). Przyjmijmy że każdy wyświetlacz ma swoją zmienna np dis1 - pierwszy wyświetlacz "dis2" - drugi "dis3" - trzeci.
    I teraz:

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


    teraz w dis1 masz setki (2), dis2 dziesiątki (3) dis3 jedności (7)

    2 - Stwórz tablice cyfr i kodów na wyświetlacz np taką
    ( które segmenty wyświetlacza mają się zapalić dla danego znaku )

    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.


    Np wyświetlacz masz podłączony pod PORTB, wcześniej zrobiłeś tak ( pod które piny fizycznie podłączone są segmenty wyświetlacza )

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


    Teraz np aby zapalić segment 0 na wyświetlaczu ( kontrolnie )

    PORTB|=(SEG_A|SEG_B|SEG_C|SEG_D|SEG_E|SEG_F);


    3 - I teraz "wrzucasz" na wyświetlacz ( czy to statycznie czy multipleksowo w przerwaniu )

    PORTB = znaki_tablica[dis1];

    W dis1 jest "2" to na PORTB ląduje trzeci ( liczymy od zera ) element tablicy:

    (SEG_A|SEG_B|SEG_D|SEG_E|SEG_G), //2

    Trochę chaotycznie to opisałem ale jak byś czegoś nie zrozumiał to pisz, aha zakładam że wyświetlacz masz z wspólną katoda tj, jedynka na pinie ( 5V ) zapala segment.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 kwi 2018, o 11:55 
    Offline
    Nowy

    Dołączył(a): 09 kwi 2018
    Posty: 2
    Pomógł: 0

    Dziękuję za odpowiedź.

    Trochę poczytałem w temacie i poszedłem na łatwiznę, ale wydaje mi się że lepiej tzn. skorzystałem z biblioteki SevSeg. Wciąż jednak mam ten sam problem. Otóż wyświetlanie liczb działa prawidłowo, jednak nie wiem w jaki sposób zrealizować zwiększanie liczby po wykonaniu danej sekwencji przez program.

    np. chcę żeby program wystawiał takie piny na zmiane z opóźnieniem i wyswietlał liczbe cykli "i", jednak jeśli jest to w osobnej funkcji to rosnące cykle się nie wyświetlają, ale jesli w tej samej to wyswietlacz nie dziala prawidlowo przez opóźnienie
    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.



    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: 3 ] 

    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