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 29 maja 2025, o 20:26


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
    Autor Wiadomość
    PostNapisane: 25 gru 2017, o 01:34 
    Offline
    Użytkownik

    Dołączył(a): 08 cze 2016
    Posty: 204
    Lokalizacja: Katowice
    Pomógł: 0

    Mam problem z ożywieniem kropek kod jest z blogu Piotra „Mikropasje” walczę z tematem o kilku dni przeglądając fora ale nie umiem wymyślić coś sensownego nie wiem od czego zacząć chciałbym żeby kropka na początek świeciła a w dalszych planach mrugała co sek próbowałem coś z tym zrobić ale efekty marne ma to być prost program czyli prosty zegar
    multipleks.h
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

    Obrazek
    Poz.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 gru 2017, o 21:43 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Jakieś dziwne rzeczy tutaj robisz:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    Odczytaj normalnie z tablicy układ segmentu dla danej cyfry a potem sprawdź czy kropka[licznik] == 1 i jak tak to załącz SEG_DP.

    --
    Pozdrawiam,
    Robert

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

    A błąd mówi Ci że linker nie wie co to jest za tablica kropka. Gdzie masz jej definicję i deklarację?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 gru 2017, o 00:35 
    Offline
    Użytkownik

    Dołączył(a): 08 cze 2016
    Posty: 204
    Lokalizacja: Katowice
    Pomógł: 0

    Przyznam się szczerze że sam nie wiem to jest jedna z moich prób ;) , od kilku dni siedzę nad tym przeszukuje różne fora i nie umiem sobie tego po układać w całość :mrgreen: . Kod z blogu Piotra-”Mikropasje” różni się z kodem z BB i był on nie jednokrotnie omawiany na forum ale chciałbym jakoś wstawić kropkę do obecnego kodu a z tego co udało mi się zrozumieć np.
    cyfra[0]=5 z ”.” ;
    [0]=licznik pierwszy wyświetlacz = 5
    czyli cyfry = SEG_A|SEG_C|SEG_D|SEG_F|SEG_G a gdzie mam zapisać SEG_DP

    Darek
    Poz



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 gru 2017, o 12:31 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Przecież wszystko masz dokładnie podane i wytłumaczone w BB.
    Nie wiem jak to jest opisywane na cytowanym blogu, ale ogólnie zasada jest taka:
    - masz zdefiniowaną tablicę CYFRY w pamięci flash zawierającą opisy wyglądu cyfr, czyli który segment ma być zaświecony a który zgaszony
    - tablica CYFRY zawiera kolejne cyfry od 0 do 9 (lub więcej ale to nie ważne)
    - jak masz wyświetlić np. cyfrę 3 to odczytujesz wartość z tablicy CYFRY o indeksie 3 i masz układ segmentów do zaświecenia.
    Jeżeli chcesz mieć kropki to możesz zrobić sobie tak nadmiarowo drugą tablicę i tam mieć zdefiniowany wygląd cyfry z kropką (dodany twój SEG_DP), ale ze względu że kropka przy każdej cyfrze to ten sam segment, to robi się to bez definiowania dodatkowego układu znaków, tylko po odczytaniu z flash układu z tablicy CYFRY, dodajesz do niej zapalenie segmentu kropki.
    Czyli robisz na przykład tak - odczytujesz z pamięci flash do zmiennej segmenty_port układ cyfry znajdujący się w tablicy CYFRY:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    gdzie zmienna cyfra to tablica zawierająca wartości dla kolejnych wyświetlaczy a zmienna licznik określa która z nich jest teraz odczytywana i wyświetlana.
    Jak już masz układ znaku bez kropki to robisz sprawdzenie czy dla danej cyfry masz zaświecić kropkę i jak tak to robisz:
    - jak masz wyświetlacz ze wspólna katodą
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    lub jak masz ze wspólną anodą a taki chyba masz :)
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    --
    Pozdrawiam,
    Robert

    PS. Starałem zrobić się na tych samych nazwach zmiennych co Ty, lecz nie wiem czy tak samo miałeś je poprzypisywane.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 gru 2017, o 23:42 
    Offline
    Użytkownik

    Dołączył(a): 08 cze 2016
    Posty: 204
    Lokalizacja: Katowice
    Pomógł: 0

    Właśnie przerabiam multipleksowanie z BB i na naszym forum było już nieraz przerabiane zagadnienie kropek na podstawie BB a cały problem polega na tym że mam trochę inny kod i na jego podstawie chcę napisać program prostego zegara godziny minuty odlicza timer programowy plus dwa przyciski do nastawiania tylko brakuje mi jeszcze jednej kropki a przy okazji mugłbym się czegoś nowego nauczyć a teraz do sedna to co mi podałeś zapisałem w ten sposób
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    zadziałało tylko że zapaliły się wszystkie kropki a w jaki sposób przypisać kropkę do danej cyfry z tablicy
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    nie tworząc nowej tablicy z kropkami iwstawić ją tu

    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.

    i może jeszcze podam obsługe Timera sprzetowego
    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.

    Darek
    Poz.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 gru 2017, o 14:00 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Daro68 napisał(a):
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    zadziałało tylko że zapaliły się wszystkie kropki a w jaki sposób przypisać kropkę do danej cyfry z tablicy

    Jak masz kropki na stałej pozycji i tylko te chcesz zapalać, to najprościej dać tak (np. dla pozycji wyświetlacza 2):
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    lub zrobić tablicę uint8_t kropki[4] i w niej ustawiać które chcesz zasiecać a w kodzie:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    --
    Pozdrawiam,
    Robert


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 gru 2017, o 17:18 
    Offline
    Użytkownik

    Dołączył(a): 08 cze 2016
    Posty: 204
    Lokalizacja: Katowice
    Pomógł: 0

    Dzięki za pomoc i cierpliwość teraz wszystko wydaje się oczywiste :oops: wszystko gra :D
    Darek
    Poz.



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

    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