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 5 maja 2025, o 03:52


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 128 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5  Następna strona
    Autor Wiadomość
    PostNapisane: 27 sty 2014, o 10:58 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    mirekk36 napisał(a):
    sieja napisał(a):
    po dodaniu _delay_ms(7); wszystko zaczęło się układać


    No to teraz drugą łapkę ci urwę ;) ... a co? w poradniku nie było tego delaya ??? :twisted: 8-)


    było :) tym bardziej mi głupio :) ale na wcześniejszych przykładach z _delay_us(100); za czorta nie działało (trzeci poradnik)
    nie mniej nie łapkę a łepek powinno mi się urwać ;) karze poddaje się dobrowolnie ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 11:09 
    Offline
    Moderator
    Avatar użytkownika

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

    sieja napisał(a):
    karze poddaje się dobrowolnie


    No to chyba wiesz jaka jest domyślna kara na naszym forum ? ...

    zrób 20 pompek i będzie ok :lol:

    _________________
    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: 27 sty 2014, o 11:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 10 sty 2014
    Posty: 447
    Lokalizacja: DKL
    Pomógł: 53

    Ja tam bym łapek nie odrywał, te mogą się przydać np. do pisania kodu w Eclipsiku.
    Pompki mogą być, tylko trzeba udokumentować po czym wrzucić na YouTube i link podać.

    _________________
    Migracja z punktu B do punktu C
    Pozdrawiam



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 11:33 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    matw napisał(a):
    Ja tam bym łapek nie odrywał, te mogą się przydać np. do pisania kodu w Eclipsiku.
    Pompki mogą być, tylko trzeba udokumentować po czym wrzucić na YouTube i link podać.


    Ojojoj to się wpakowałem z tymi pompkami:/ :)

    Może jako zadośćuczynienie dodam coś co wyskrobałem przed minutką :)

    najpierw 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.


    i filmik (kurcze nie wiem czemu w tak słabej jakości :( )




    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 12:21 
    Offline
    Moderator
    Avatar użytkownika

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

    BRAWO sieja ! ;) .... brawo ...

    to się nazywa odrabianie zadań domowych ;) fajnie sobie poradziłeś tworząc tą funkcję serpixel()

    sieja napisał(a):
    void setpixel(int num, int color)


    ale niestety tu wyłazi brzydkie przyzwyczajenie programowania z arduino, więc mam nadzieję, że się nie obrazisz jeśli zwrócę uwagę - a resztę to doczytasz z Bluebooka jak już go zdobędziesz bo na prawdę warto zacząć myśleć w języku C

    co jest źle w tej linii kodu ?

    typy - panie kochany typy ....

    pomyśl po co przekazywać argumenty z typem int (przecież ten typ ZŻERA aż DWA BAJTY!) ... podczas gdy przesyłasz i tak liczby nigdy nie większe niż 255 zgadza się ??? a więc spokojnie zmieściłyby się w typie uint8_t .... postaraj się sobie to zapamiętać jako KOLEJNĄ WAŻNĄ WSKAZÓWKĘ na start drogi jaką rozpoczynasz czyli nauka języka C dla procków ...

    bo akurat ten przypadek jest o tyle ważny - że pomyśl sobie co on powoduje

    1. na stosie przy wywołaniu funkcji MUSZĄ zostać odłożone aż 4 bajty ! zamiast dwóch gdybyś typy dał uint8_t
    2. taki mechanizm powoduje jak już się chyba domyślasz nie tylko niepotrzebne zjadanie stosu, który kiedyś ci się przyda ale także co jeszcze ??? - ZŻERA ci to dwa razy więcej czasu !!! minimum dwa razy :( ... a tu szczególnie to ważne bo poruszamy się przy efektach dla diod Magic LED i na końcu jak będziesz chciał osiągnąć takie super wyśrubowane efekty to przyda się każdy takt zegara
    3. program zajmie więcej miejsca we Flash

    a z drugiej strony pomyśl - nawet w każdym innym projekcie, który nawet nie musi być wyśrubowany - po co TRACIĆ, skoro wystarczy tylko pamiętać jak dobierać typy .... A niestety Arduino przyzwyczaiło cię do chwytania za typ int jak za "kromkę chleba" na śniadanie - prawda ? ;) .... czas więc wyplenić ten nawyk ;) nieprawdaż .... walcz z nim od razu ogniem i mieczem ;)

    _________________
    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: 27 sty 2014, o 12:32 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    To fakt brzydkie przyzwyczajenie z arduino :) szczerze mówiąc przed poradnikami z Magic LED nigdy jeszcze nie pisałem nic w eclipse w czystym C... Zawsze moje zabawy zaczynały i kończyły się na arduino :/ no ale pora to zmienić :)

    mam jeszcze tylko jedno pytanie czy wgrywając kod do arduino(właśnie ten co na filmiku) mogłem skasować bootloader?
    bo za nic w świecie nic mi nie chce teraz wgrać na arduino tylko ten błąd wywala :/

    wiem wiem powienienem starać się zacząć pisać w czystym C ale w arduino mam kilka projektów a do nich gotowe biblioteki do arduino...



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 13:00 
    Offline
    Moderator
    Avatar użytkownika

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

    sieja napisał(a):
    mam jeszcze tylko jedno pytanie czy wgrywając kod do arduino(właśnie ten co na filmiku) mogłem skasować bootloader?


    Na pewno skasowałeś bootloader ... ale czego się obawiasz ? jak masz normalny programator to możesz równie dobrze wgrywać albo projekty z arduino na żywca przez ten programator i bez ŻADNEGO bootloadera ;) będzie szybciej

    albo jak się uprzesz to możesz sobie ten bootloader znowu wgrać ... tylko zastanawiam się po co ... skoro można bez niego ? ;)

    _________________
    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: 27 sty 2014, o 13:05 
    Offline
    Użytkownik

    Dołączył(a): 20 wrz 2013
    Posty: 647
    Zbananowany użytkownik

    Pomógł: 101

    Jest wygodniej: programowanie, zasilanie i komunikacja przez serial na jednym kablu. Mniej rupieci na biurku, mniej plączących się kabli, po zabawie można zabawki szybko zwinąć i schować do szuflady.

    _________________
    +++++[>++++<-]>[>++++++<-]>.---------.+++.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 13:08 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    mirekk36 napisał(a):
    jak masz normalny programator to możesz równie dobrze wgrywać albo projekty z arduino na żywca przez ten programator i bez ŻADNEGO bootloadera


    No właśnie tak próbowałem :) ustawiłem "płytka arduino uno" programator USBasp i cieniutko :/
    nie wiem czy nie będę musiał poszukać hardware do 328p do arduino i zaznaczyć sam procesor zamiast tak jak teraz płytkę arduino...

    ------------------------ [ Dodano po: 12 minutach ]

    Znalazłem rozwiązanie :)

    Cytuj:
    Tools->Board->Arduino UNO (or whatever Arduino board you are programming)
    Tools->Programmer->USBasp
    Tools->Burn Bootloader

    Then you can upload sketches with:

    Tools->Board->Arduino UNO (or whatever Arduino board you are programming)
    Tools->Programmer->USBasp
    File->Upload Using Programmer


    Przy okazji wgrałem kod z eclipsea i totalnie się diody rozjechały pod arduino :/
    pod eclipse gra i buczy :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 13:25 
    Offline
    Moderator
    Avatar użytkownika

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

    sieja napisał(a):
    No właśnie tak próbowałem ustawiłem "płytka arduino uno" programator USBasp i cieniutko :/


    Nie pomogę w tym zakresie ale na 100000% wiem że się da i to w miarę wygodnie ... Podpytaj że kogoś w dziale Arduino na naszym forum ... zamiast się poddawać ;)

    ------------------------ [ Dodano po: kilkunastu sekundach ]

    sieja napisał(a):
    pod eclipse gra i buczy


    No więc sam widzisz, że w końcu warto przejść na "JASNĄ STRONĘ MOCY" :lol:

    _________________
    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: 27 sty 2014, o 13:34 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    Pewnie że warto :D tylko wszystko zależy od posiadanej wiedzy :D ja narazie małymi kroczkami przechodzę na "JASNĄ STRONĘ MOCY" :D



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 18:47 
    Offline
    Użytkownik

    Dołączył(a): 26 mar 2012
    Posty: 26
    Pomógł: 0

    Bardzo przyjemny odcinek.. Widzę, że kolega Mirek dochodzi do mistrzostwa w prowadzeniu poradników!



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:13 
    Offline
    Nowy

    Dołączył(a): 10 sty 2014
    Posty: 10
    Pomógł: 0

    Podepnę się jeśli mogę - mam Bluebooka od piątku dopiero, przerobiłem przykłady z zaświecaniem LED, dodałem kilka, pozmieniałem czasy, potem przyciski itp, czyli programator działa i płytka też ;] Teraz wg poradników napisałem przykład dla WS2812 - odciąłem z taśmy 3 szt LED i podpiąłem pod port ATmegi 32 i zasilanie z płytki +5v (płytka EvB 5.1), kwarc 16MHz. Przy podłączaniu diody migną, więc niby tez ok. Eclipse niestety wyrzuca mi błędy (żeby jeszcze po polsku wytłumaczył o co mu chodzi :D) Poradźcie co źle napisałem.
    WS2812.c
    ../WS2812/WS2812.c:20: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    ../WS2812/WS2812.c:25: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    ../WS2812/WS2812.c:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    ../WS2812/WS2812.c:45: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    ../WS2812/WS2812.c:62: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    ../WS2812/WS2812.c:64: error: expected '{' at end of input
    make: *** [WS2812/WS2812.o] Error 1
    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.

    WS2812.h - syntax error linia void WS2812_init( void)
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    main.c - Unresolved inclusion: <interrupt.h>
    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.

    Liczę na jakąś podpowiedź naprowadzającą co sprawdzić - kopiowałem nawet skrawki Waszych kodów i to samo pokazywało dlatego nie wiem o co może chodzić.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:16 
    Offline
    Użytkownik

    Dołączył(a): 20 wrz 2013
    Posty: 647
    Zbananowany użytkownik

    Pomógł: 101

    .

    _________________
    +++++[>++++<-]>[>++++++<-]>.---------.+++.



    Ostatnio edytowano 27 sty 2014, o 20:24 przez xor, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:17 
    Offline
    Użytkownik

    Dołączył(a): 24 sty 2012
    Posty: 1469
    Pomógł: 56

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

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


    ------------------------ [ Dodano po: 3 minutach ]

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

    , że nie może znaleźć plliku interrupt.h.
    co nie jest takie dziwne, bo brakuje Ci ścieżki do katalogu

    _________________
    Jestem początkujący i moje porady mogą być błędne



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:44 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    BROWAReq napisał(a):
    void WS2812_init (void) {
                            WS_DIR |= WSPIN;
    }


    WS2812_init
    powinno być z małej litery :) ws2812_init( void )

    u mnie to rozwiązało Twój problem :)

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

    aaa przepraszam nie zauważyłem że u Ciebie w main też jest z dużej (ja mam z małej) dlatego u mnie wywalało błąd ale po zmianie wszystko się kompilowało tak jak trzeba... daj znać czy poszedł kod :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:47 
    Offline
    Użytkownik

    Dołączył(a): 24 sty 2012
    Posty: 1469
    Pomógł: 56

    po prostu wszędzie musi być tak samo ;-)
    A czy z wielkiej czy z małej to już bez znaczenia.
    Ewentualnie dla czytelności kodu.

    _________________
    Jestem początkujący i moje porady mogą być błędne



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:49 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    No i tu nie masz racji :) w C/C++ niestety wielkość liter ma znaczenie :) nawet jeśli chodzi o zmienne np.
    int k=1; int K=1; są to 2 różne zmienne tym bardziej przy nazewnictwie trzeba zwracać uwagę czy piszemy z małej czy z dużej



    Ostatnio edytowano 27 sty 2014, o 20:52 przez sieja, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:51 
    Offline
    Użytkownik

    Dołączył(a): 24 sty 2012
    Posty: 1469
    Pomógł: 56

    sieja napisał(a):
    No i tu nie masz racji :) w C/C++ niestety wielkość liter ma znaczenie :)

    hihihih...
    przeczytaj jeszcze raz co napisałem ;-)

    _________________
    Jestem początkujący i moje porady mogą być błędne



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 20:55 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    No tak :D
    hihihi zwracam honor :)
    WSZĘDZIE musi być tak samo :)

    ja jeszcze śpię :D to forum uzależnia! :D idę dalej spać :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 21:01 
    Offline
    Nowy

    Dołączył(a): 10 sty 2014
    Posty: 10
    Pomógł: 0

    Ufffff zaczęło działać - dziękuję ślicznie ;]
    Faktycznie brak średnika powodował błąd;
    Nie wiem dalej co z plikiem interrupt - jak go dołączyć jeszcze szukam
    W pliku nagłówkowym miałem jeszcze WS PORT zamiast WS_PORT.
    Co do wielkości liter - tak jak Mirko pisze ważne żeby były takie same po prostu ;]
    No to teraz mogę się zacząć bawić ;]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 22:07 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 sty 2014
    Posty: 129
    Lokalizacja: Londyn
    Pomógł: 0

    Cytuj:
    Nie wiem dalej co z plikiem interrupt - jak go dołączyć jeszcze szukam


    spróbuj
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    powinno zadziałać :) masz zaincludowany sam plik bez ścieżki (o ile sie nie myle) :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 22:15 
    Offline
    Nowy

    Dołączył(a): 10 sty 2014
    Posty: 10
    Pomógł: 0

    Wow - faktycznie
    Pomogło ;]
    Wybaczcie głupie problemy początkującego ;]
    Dziękuję.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 22:30 
    Offline
    Użytkownik

    Dołączył(a): 24 sty 2012
    Posty: 1469
    Pomógł: 56

    no przecież pisałem, że nie masz ścieżki ;-)
    interrupt.h jest standardowym plikiem nagłówkowym
    tak jak io.h to i ścieżka musi być taka sama ;-)
    Najważniejsze, że już działa i będziesz mógł działać dalej

    _________________
    Jestem początkujący i moje porady mogą być błędne



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 sty 2014, o 22:37 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 30 gru 2012
    Posty: 188
    Lokalizacja: Świnice Warckie woj. łódzkie
    Pomógł: 12

    Witajcie,
    no i przyszła pora na mnie aby zamieścić swoje wypociny...
    nie jest to moja biblioteka ja jedynie ją zmodyfikowałem i przystosowałem do działania z czystym C + wstawki asemblera oryginalny kod oraz opis pochodzi z Arduino strona autora http://www.instructables.com/id/Bitbanging-step-by-step-Arduino-control-of-WS2811-/ i pewnie wymaga jeszcze sporo pracy i przystosowania ale na obecna chwilę działa sprawnie z listwą 60 diod WS2812 wraz z ustawieniem jasności (tu zastosowano chyba najprostsze rozwiązanie... przesunięcia bitowe) oraz można stosować kolor z zapisie 24bitowym. wstawki asemblera umożliwiają osiągnięcie ~800kHz co widać na zdjęciach poniżej

    bit "1"
    Obrazek

    bit "0"
    Obrazek

    tak jak wspomniałem kod testowałem na atmega128 16MHz oraz listwa 1 m ( 60diod ws2812 ) zasilanie z zasilacza ATX

    Oryginalny opis oraz kod zgodnie z informacją na stronie dystrybuowany jest na licencji Public Domain więc i zmodyfikowane biblioteki takową licencje otrzymują...

    ws2812.h
    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.


    ws2812.c
    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.



    ws2812_color_definitions.h

    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.


    oraz main.c
    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.


    no... to chyba na tyle ... czekam na słowa krytyki ... bo na pewno coś można poprawić i zoptymalizować aby działało lepiej i sprawniej

    Pozdrawiam i życzę udanych testów...

    _________________
    ATMEL-ICE+ATXmega256A3BU oraz dużo samozaparcia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sty 2014, o 01:17 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 20 sie 2013
    Posty: 795
    Lokalizacja: Poznań
    Pomógł: 59

    kombinuję z kodaki i nie mogę osiągnąć efektu wyświetlania wszystkich kolorów RGB jak w tęczy, tylko rozżarzanie B, zgaśnięcie i znów rozżarzanie B + troszkę G. Na to wskazuje wyraźnie mój kod. Jak osiągnąć efekt oczekiwany przeze mnie?

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



    mam:
    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.




    Ostatnio edytowano 28 sty 2014, o 10:46 przez icer_cmg, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sty 2014, o 08:34 
    Offline
    Użytkownik

    Dołączył(a): 05 lis 2013
    Posty: 353
    Lokalizacja: Kraków
    Pomógł: 6

    lemurek napisał(a):
    60linia: asm volatile
    plik ws2812.c - Dla ATB1.04 oraz M128 Eclipse wywala błąd, że nie istnieje takie polecenie.

    Dzięki za bibliotekę kolorów :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sty 2014, o 10:28 
    Offline
    Użytkownik

    Dołączył(a): 20 wrz 2013
    Posty: 647
    Zbananowany użytkownik

    Pomógł: 101

    Cytuj:
    wstawki asemblera oryginalny kod oraz opis pochodzi z Arduino strona autora http://www.instructables.com/id/Bitbanging-step-by-step-Arduino-control-of-WS2811-/

    Fajnie tam jest wszystko wyjaśnione.
    Albo czegoś niezrozumiałem albo we wstawce jest maly błąd, chodzi o instrukcje po "nextbyte:":
    lemurek 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.

    breq wykonując skok zabiera dwa takty zegara więc timing instrukcji po nextbyte będzie o jeden większy:

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

    W konsekwencji co ósmy puls będzie dłuższy o jeden takt czyli 62,5ns. Mieści się to w tolerancji więc wszystko będzie działać a widoczne będzie tylko na oscylogramie. Mam rację?

    _________________
    +++++[>++++<-]>[>++++++<-]>.---------.+++.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sty 2014, o 15:49 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 30 gru 2012
    Posty: 188
    Lokalizacja: Świnice Warckie woj. łódzkie
    Pomógł: 12

    Aż tak szczegółowo się nie zastanawiałem i nie analizowałem ale dziś wieczorem się temu przyjże i zobaczę jak to wygląda na oscyloskopie

    _________________
    ATMEL-ICE+ATXmega256A3BU oraz dużo samozaparcia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 sty 2014, o 17:24 
    Offline
    Użytkownik

    Dołączył(a): 05 lut 2013
    Posty: 302
    Pomógł: 19

    Poradnik jak zwykle miodzio. Co prawda nie robie nic z tymi diodami bo ich nie mam, ale dygresja na temat optymalizacji Flash vs optymalizacja czasu wykonania bardzo sie przydala i przypomniala mi, ze mam rozgrzebany projekt gdzie moge natrafic na ten problem.


    PS. Hardkorowy mirku od zapedzania do prac domowych rozwalil mnie na lopatki :)
    PS2. To ten od silowania sie z callbackami? ;)



    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: 128 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5  Następna strona

    Strefa czasowa: UTC + 1


    Kto przegląda forum

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