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 21 maja 2025, o 06:09


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 21 ] 
    Autor Wiadomość
    PostNapisane: 13 lis 2011, o 20:27 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 60
    Lokalizacja: Bieszczady/Krosno
    Pomógł: 4

    Witam
    A tak napisałem pierwszy programik który ma zapalać diody i wyszło że gasi zapalone diody.
    Szukałem rozwiązania i chyba nie rozumiem kiedy jest wejście a kiedy wyjście w internecie jest tyle opisów że zgłupiałem.
    Proszę o pomoc.

    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.


    Pozdrawiam Augustyn



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lis 2011, o 21:12 
    Offline
    Użytkownik

    Dołączył(a): 05 lis 2011
    Posty: 81
    Pomógł: 0

    a jak wgl ma dzialac ten program tzn w jaki sposob maja sie te diody zapalac ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lis 2011, o 21:18 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    z tego co widzę to pokolei ... zastanawiam się czemu nie w petli for ich obsługa bo te delaye to ....

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lis 2011, o 21:25 
    Offline
    Użytkownik

    Dołączył(a): 05 lis 2011
    Posty: 81
    Pomógł: 0

    tzn ja mysle ze jezeli maja sie zapalac po kolei to dac petle poki wszystkei sie nei swieca to przesuniecie



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 lis 2011, o 21:32 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

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


    ja bym sie tak pobawił trochę :)

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Ostatnio edytowano 13 lis 2011, o 22:35 przez atneladmin, łącznie edytowano 1 raz
    test kolorowania składni


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 lis 2011, o 00:14 
    Offline
    Moderator
    Avatar użytkownika

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

    augustyn1 napisał(a):
    Witam
    A tak napisałem pierwszy programik który ma zapalać diody i wyszło że gasi zapalone diody.


    Hmm no gasi zapalone diody bo trzeba spojrzeć jak są one dołączone do procesora ;) Schemat, schemat.

    Jeśli podłączone są katodą do pinów portu natomiast anoda przez rezystor do VCC to chyba nie dziwne, że stan niski na wyjściu pinu powoduje zapalenie się diody. W tym przypadku wszystkich diod naraz po poleceniu:

    Kod:
    DDRA = 0xFF;


    (przy okazji to całkiem poprawne polecenie bo za jednym zamachem ustawia wszystkie piny PORTA jako wyjścia, gdyż wpisujesz jedynki do rejestru kierunku DDRA)

    Jednak po resecie, wszystkie bity w różnych rejestrach są wyzerowane, zatem także w rejestrze wyjściowym PORTA także są wyzerowane, dlatego bezpośrednio po tym rozkazie zapalają ci się wszystkie diody - ponieważ na pinach, które zostały ustawione jako wyjścia pojawiły się stany niskie z bitów rejestru PORTA ;) teraz jaśniej ???

    A dalej twój program co realizuje ? Ano po kolei wystawia na kolejne piny stan wysoki:

    Kod:
    PORTA |= led1;


    prawda ? czyli do bitu PA0 wpisuje wartość 1, czyli na tym pinie pojawia się stan wysoki a zarazem na katodzie diody LED tak ??? więc teraz to już chyba nie dziwne, że dioda gaśnie ;) i tak dalej robisz z kolejnymi.

    Zatem jeśli chcesz aby po starcie programu wszystkie były najpierw zgaszone to po ustawienie pinów jako wyjścia, ustaw także od razu na wszystkich pinach stan wysoki:

    Kod:
    DDRA = 0xFF;
    PORTA = 0xFF;


    a później w tej swojej pętli zamiast wystawiać po kolei stany wysokie - wystawiaj stany niskie żeby zapalać diody czyli tak:

    Kod:
    PORTA &= ~led1;


    i teraz zadziała tak jak chcesz ;) .... ale przypominam jeszcze raz - zawsze trzeba zacząć od spojrzenia na schemat jak są diody LED podłączone prawda ?

    _________________
    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 lis 2011, o 15:23 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    swoją drogą geshi ładnie koloruje składnie :)

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 lis 2011, o 15:59 
    Offline
    Moderator
    Avatar użytkownika

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

    SunRiver napisał(a):
    swoją drogą geshi ładnie koloruje składnie :)


    Tak tylko te pojedyncze linijki kodu wrzucam w znacznikach code bo troszkę lepiej widać ;) .... ale generalnie fajnie już wygląda to GeShi. Mój informatyk pracował ostatnio nad wszczepieniem tego no i w końcu się udało i ładnie się prezentuje teraz jak mówisz.

    _________________
    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 lis 2011, o 19:41 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 60
    Lokalizacja: Bieszczady/Krosno
    Pomógł: 4

    Witam
    Ćwiczenia są wykonywane na zestawie ATB 1.02. Teraz już wszystko rozumie. Jeszcze muszę rozgryźć kod kolegi SunRiver i podziałać coś w pętli.
    Robię przymiarkę do Led 3D 4x4x4 i muszę nauczyć się programować to jest teraz cel. Pierwsze co to muszę opanować proste mruganie itp rzeczy.
    Przykładzik działa super.
    Dzięki za pomoc.
    Pozdrawiam Augustyn



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 lis 2011, o 20:33 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Sorki augustyn1: ale z rozpedu nikt nie zauważył , że pętle machnołem w C++ :)
    ale w GCC będzie wygladać podobnie tylko inaczej zdefiniujesz sobie porty:)

    co do LED Cube to jest łatwiejsze niż Ci się wydaje , na początek proponował bym ci taki kod:

    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.



    Takie coś 3x3x3 na szybko zmajstrowałem jakis czas temu jako lampke nocna dla córci :)

    Kod oczywiście w c++ odpala na M16/32/324/644 oraz małych 168/328 w trybie arduino.

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 lis 2011, o 20:39 
    Offline
    Moderator
    Avatar użytkownika

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

    No tak warto ćwiczyć od podstaw, a kod kolegi SunRiver może być troszkę trudniejszy do rozgryzienia ponieważ pochodzi on wprost z platformy Arduino, więc nie spotkasz w AVR GCC wszystkich takich poleceń jak w tym kodzie. Będzie trzeba je przerobić na to co dostępne w C czyli proste przesunięcia bitowe, np:

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


    Teraz będziesz się mógł cieszyć kolejnym zapalaniem i gaszeniem diod LED na zmianę ;)

    No chyba że odpalisz platformę Arduino - bo to także możliwe - to wtedy kod można pisać w tamtejszym narzeczu C++ bez problemu ;)

    _________________
    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 lis 2011, o 21:00 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    A tu jest filmik z testu na stole operacyjnym :)

    http://www.sunriver.psp29.opole.pl/filmiki/DSCF9890.AVI

    ładnie widać jak działa kod z poprzedniego postu i do czego był potrzebny ten specjalistyczny przyrząd :)

    Obrazek

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 lis 2011, o 09:23 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 60
    Lokalizacja: Bieszczady/Krosno
    Pomógł: 4

    Witam
    Filmik bardzo fajny. Przyrządy już dawno są wykonane na 4x4x4 oraz 8x8x8. Elementy są zakupione na 4x4x czekają na montaż.
    Ważne są podstawy programowania i tego muszę się nauczyć. Jednak pozostanę w AVR GCC.
    Dzięki.
    Pozdrawiam Augustyn



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 lis 2011, o 15:53 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Augustyn:

    W zasadzie to maleństwo 3x3x3 jak pisalem zrobiłem na lampke dla córci -- migotała jej przy łużeczku jak miala roczek :)
    teraz ma 4 latka i dalej ja lubi stą róznicą te teraz jest zamknieta w obudowie po "śnieżnej kuli" a plytka zmniejszona do minimum
    i całosc zasilane z 3ch szt R6 :)

    w sumie to kod ten łatwo przerobić na GCC gdyz samo Arduino kożysta z kompilatora WinAVR tyle ze ma swoje biblioteki
    ze specyficznymi rozkazami mającymi ułatwić pisanie programów ...

    Obecnie chciałbym zmajstrować Cuba 16x16x16 RGB tylko jest jeden mały problem ....

    kto to polutuje :)

    Wrazie problemów z oprogramowaniem chętnie pomogę :)

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 lis 2011, o 20:52 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 60
    Lokalizacja: Bieszczady/Krosno
    Pomógł: 4

    Witam
    SunRiver samo lutowanie to nie problem tylko trochę cierpliwości.
    Po pierwsze trzeba zrobić przyrząd do wyginania nóżek diody w odpowiednich kierunkach.
    Po drugie trzeba wykonać szybki tester do diagnozowanie połączeń aby się nie okazało że po zlutowaniu gdzieś w środku jest zimny lut.

    Kiedy zobaczyłem ten filmik chyba ponad cztery lata temu
    http://www.youtube.com/watch?v=4MGKhFIu ... playnext=1
    pomyślałem to jest nie do wykonania.
    Dziś już jestem trochę mądrzejszy i wiem że jeszcze trzeba się uczyć.
    A tu proszę filmik z Cube 8x8x8 z bardzo fajną animacją
    http://www.youtube.com/watch?v=6mXM-oGg ... re=related
    i coś dla ZAWODOWCÓW !!
    http://www.youtube.com/watch?v=Qk_03gXv ... re=related

    Pozdrawiam Augustyn



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 lis 2011, o 21:03 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    http://www.youtube.com/watch?v=qRlr784q ... re=related

    ja to się od kilku miesiecy biore za takie cos :) mam już gotowy napęd

    ale brak czasu ... :(

    ale takie cos to już masakra przy lutowaniu
    http://www.youtube.com/watch?v=mKCQ_QAx ... re=related

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 16 lis 2011, o 22:22 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Augustyn: trochę mnie wzieło więc powoli dziergam kod do Kostki
    4x4x4 ale z możliwością przerobienia na 8x8x8 lub 2 kolorową :)

    narazie wygląda to tak:
    jeszcze wiele pracy --- AVR GCC tym razem

    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.

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 18 lis 2011, o 07:31 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 60
    Lokalizacja: Bieszczady/Krosno
    Pomógł: 4

    Witam
    Dzięki kolego SunRiver jest co analizować oraz jest mobilizacja do poskładania takiego cuda.
    Pozdrawiam Augustyn



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 18 lis 2011, o 15:22 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    Agustyn... to tylko część , kod już się rozbudował więc jak chcesz to ci moge całość udostępnić :)


    Albo zrobie inaczej :

    Chciałbym by sie kodowi przyglądnoł nasz naczelny wódz i ew wskazał błedy lub co można by zoptymalizować :)


    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.

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 18 lis 2011, o 22:23 
    Offline
    Moderator
    Avatar użytkownika

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

    Trudno mi się odnieść tak do całości , bo spory kod i nie wszystkie includy są zawarte. Co do pytania w kodzie:

    Kod:
                   // Trzeba by tu zerknac bo coś mi tu generuje błedy
                    //launch_effect(rand()%13);  // TRYB DEMO  -- przypadkowa kolejność


    to warto byłoby podać/pokazać jakie błędy generują się w trakcie kompilacji ?

    Ale tak na szybko co ja bym poprawił w sensie pierwszej optymalizacji to zmiana typów wielu zmiennych, bo np często używane są zmienne typu int, np "int i" po czym i używane jest w zakresie od 0 do 255 zatem wystarczyłby zwykły typ 8-bitowy "uint8_t i". Po pierwsze zaoszczędziłoby to zawsze troszkę RAM'u a po drugie w wielu przypadkach o ile istotna gdzieś jest szybkość zdecydowanie by się ona zwiększyła, gdyby operacje wykonywane były na zmiennej 8-bitowej zamiast 16-bitowej, co chyba jest zrozumiałe.

    To tyle tak na gorąco.

    _________________
    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: 19 lis 2011, o 10:41 
    Offline
    Użytkownik

    Dołączył(a): 04 paź 2011
    Posty: 8615
    Pomógł: 338

    W sumie Mirku to masz racje co do typów zmiennych , w sumnie to nawet niewiem czemu je tak deklarowałem na wyrost
    moze dlatego że pierwsza faza to kostka 4x4x4 ale z mozliwością zrobienia 8x8x8 lub 4x4x4 2 kolorowej
    w kazdym razie wiekszosc błedów juz poprawiłem , tylko w jednym miejscu mam mała sieczkę niemniej zamieszczę całosc wieczorem
    jeszcze dziergam include efektów i tam mam najwiecej problemów

    _________________
    Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



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

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 16 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