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 28 maja 2025, o 08:40


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 12 ] 
    Autor Wiadomość
    PostNapisane: 13 lip 2015, o 21:41 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 maja 2015
    Posty: 14
    Pomógł: 0

    częśc w dołączonej płytce do BB w pliku main.c z ćwiczenia wyświetlacz LED 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.


    Mógł by mi ktoś wytłumaczyć o co chodzi w tym przykładzie bo nie bardzo rozumiem skąd się tam wzięła wartość licznik=6000.
    oraz warunek if ja rozumiem tak:
    Jeśli wartość d1 czyli po obliczeniu 6 jest spełniona (nie bardzo wiem przez co spełniona ... ??) to ustaw cy1=d1 a jeśli nie to ustaw cy1=NIC

    Dalej w miarę rozumiem ale nie wszystko a mianowicie co oznacza ten zapis (zaznaczone na czerowno):

    if(d2) cy2=d2; else cy2=(licznik>999)?0:NIC;

    _________________
    Dopiero się uczę ;)



    Ostatnio edytowano 13 lip 2015, o 21:49 przez major697, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lip 2015, o 21:48 
    Offline
    Moderator
    Avatar użytkownika

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

    posłuchaj a weź sobie wciśnij pan klawisz lewy CTRL i po najechaniu myszą na NIC, gdy się podkreśli kliknij lewym klawiszem myszy i wtedy zobaczysz co to jest ;) ok?

    _________________
    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: 13 lip 2015, o 21:53 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 maja 2015
    Posty: 14
    Pomógł: 0

    OK a dalsza część pytania ...

    _________________
    Dopiero się uczę ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lip 2015, o 21:54 
    Offline
    Moderator
    Avatar użytkownika

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

    major697 napisał(a):
    OK a dalsza część pytania ...


    No ale najpierw odpowiedz mi co zobaczyłeś - to poprowadzę dalej ;)

    _________________
    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: 13 lip 2015, o 22:02 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 maja 2015
    Posty: 14
    Pomógł: 0

    Po naciśnięciu CTRL przeszedłem do pliku d_led.h i tam widzę, że wartość NIC jest zdefiniowana i zainicjowana wartością 10.

    A więc z tego kodu wynika:

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


    jeśli d1 po wyliczeniu 6 jest spełnione ustaw cy1 czyli cyfrę 1 na wartość d1 jeśli nie to sustaw d1 na wartość 10

    Dobrze myślę ... ??

    _________________
    Dopiero się uczę ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lip 2015, o 22:06 
    Offline
    Moderator
    Avatar użytkownika

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

    dobrze myślisz a co to jest to 10 ? ... to jest kod kolejnego znaku przecież na wyświetlaczu LED, tyle że ten znak jest pusty - jakby spacja ;) nic nie wyświetla

    no toż zobacz

    if( d1 ) .... czyli jeśli d1 nie jest zerem - to wyświetl d1 a jeśli jest zerem to wyświetl NIC czyli pusty znak - czyli nie wyświetlaj zera nieznaczącego

    teraz jaśniej ?

    _________________
    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: 13 lip 2015, o 22:14 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 maja 2015
    Posty: 14
    Pomógł: 0

    Aaaa no teraz rozumiem np gdy d1 jest równe 2 to wyświetl 2 a jeśli jest równe 0 to zostaw puste miejsce ;)

    _________________
    Dopiero się uczę ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lip 2015, o 22:28 
    Offline
    Moderator
    Avatar użytkownika

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

    major697 napisał(a):
    Aaaa no teraz rozumiem np gdy d1 jest równe 2 to wyświetl 2 a jeśli jest równe 0 to zostaw puste miejsce ;)

    no tak się realizuje (przykładowo) wygaszanie zer nieznaczących

    _________________
    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: 13 lip 2015, o 22:40 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 maja 2015
    Posty: 14
    Pomógł: 0

    OK a więc co oznacza ta część kodu:

    if(d2) cy2=d2; else cy2=(licznik>999)?0:NIC;

    _________________
    Dopiero się uczę ;)



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

    Dołączył(a): 25 lis 2013
    Posty: 120
    Lokalizacja: Koło
    Pomógł: 6

    To jest skrócony zapis warunku if else. Jeśli większe od 999 to przypisz cy2 0 jeśli nie, to zero nieznaczące. W bluebooku jest opisany ten zapis o ile dobrze pamiętam.

    _________________
    Kompleksowa realizacja ogrodów



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lip 2015, o 22:46 
    Offline
    Moderator
    Avatar użytkownika

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

    major697 napisał(a):
    OK a więc co oznacza ta część kodu:

    if(d2) cy2=d2; else cy2=(licznik>999)?0:NIC;


    Widzę, że masz Bluebooka

    to dlaczego nie czytasz pan ? ;)

    jak widzisz coś takiego

    ? :

    to to jest wyrażenie warunkowe w języku C

    i masz to opisane w BB ... więc proszę zajrzyj najpierw i poczytaj ok ?

    _________________
    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: 14 lip 2015, o 00:29 
    Offline
    Użytkownik
    Avatar użytkownika

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

    Witam
    mirekk36 napisał(a):
    i masz to opisane w BB ...

    na str.103 :)
    mirekk36 napisał(a):
    ... więc proszę zajrzyj najpierw


    Pozdr.



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

    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