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 24 lip 2025, o 03:50


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
    Autor Wiadomość
    PostNapisane: 25 kwi 2013, o 18:08 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 25 kwi 2013
    Posty: 88
    Pomógł: 1

    Witam ;)
    Na początku zaznaczę że jestem kompletnie zielony jeśli o uC chodzi, jedyne doświadczenie mam w programowaniu :)
    Wczoraj przyszła do mnie paczka z podstawowymi elementami, w tym wyświetlaczem LED, tym konkretnie:
    http://sklep.avt.pl/p/pl/482881/wyswiet ... m++wa.html
    Jak na zielonego przystało, udało mi się go uruchomić, dość "chałupniczo" ;)
    Podłączyłem anody do Vcc, kolejne piny przez rezystory 1K do wszystkich PORTB mojej ATMegi8A.
    Kod do tego wygląda tak:
    http://pastebin.com/NviDZR30
    Jeśli liczyć to za sukces, działa :D
    Problem w tym że Pan Mirek powiedział mi na Skype że zrobiłem to kompletnie nie tak :o Wspominał coś o miltipleksowaniu, problem w tym że nie mam do tego żadnych materiałów. I tu prośba do was, forumowicze. Znacie jakieś dobre materiały o multipleksowaniu? Musi być to wytłumaczone dość łopatologicznie, jestem raczej laikiem elektroniki w ogóle ;)
    Z góry dziękuję za pomoc.

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 18:20 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 10 sty 2013
    Posty: 844
    Lokalizacja: Przemyśl
    Zbananowany użytkownik

    Pomógł: 43

    Sama zasada działania jest bardzo ładnie i w prosty sposób przedstawiona w niebieskiej księdze.
    Działa to tak:
    segmenty katod poszczególnych wyświetlaczy łączymy razem i poprzez driver lub tranzystory(npn) podłączamy do procesora. Anody każdą osobno zasilamy również przez driver lub tranzystory (pnp) i podłączamy do procesora.
    Dzięki temu ograniczamy ilość niezbędnych linii do 8+4 zamiast 32 ;)

    Aby wyświetlić daną cyfrę (np. 3) na drugim wyświetlaczu "włączamy" tranzystor anody drugiego wyświetlacza oraz tranzystory od danych segmentów. Działając w ten sposób oraz przełączając poszczególne wyświetlacze ze znaczną częstotliwością po kolei (oraz wykorzystując bezwładność ludzkiego oka) mamy zamierzony efekt, czyli w tym przypadku wyświetlona liczbę 4 cyfrową.

    Pogmatwany opis, wiem :(

    _________________
    Klimatyzacja Przemyśl



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 18:23 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 25 kwi 2013
    Posty: 88
    Pomógł: 1

    Wow, ale ja mam tylko jedną małą "ósemkę" nie żadne 4 cyfry ;D

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 18:34 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 10 sty 2013
    Posty: 844
    Lokalizacja: Przemyśl
    Zbananowany użytkownik

    Pomógł: 43

    Przy pojedynczym wyświetlaczu to normalnie podłączasz, anoda do plusa, katody przez rezystory do portu i heja ;)

    Jaki efekt chcesz osiągnąć?


    Autor postu otrzymał pochwałę

    _________________
    Klimatyzacja Przemyśl



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 18:36 
    Offline
    Moderator zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 18 lip 2012
    Posty: 3229
    Lokalizacja: Kraków - obok FAB5 ATMEL'a
    Pomógł: 91

    Przy wyświetlaczu jednocyfrowym żadne multipleksowanie ci nie jest potrzebne.

    Przyda się (a nawet trzeba je stosować) dopiero od 2 cyfr wzwyż.

    _________________
    http://www.jaglarz.info



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 18:47 
    Offline
    Użytkownik

    Dołączył(a): 11 lut 2013
    Posty: 140
    Lokalizacja: Kraków
    Pomógł: 10

    zrob sobie tablice gdzie wpiszesz wartosci jakie maja byc wystawiane na PORTB i potem ustawiaj na niego wartosci np tak:

    Składnia: [ Pobierz ] [ Ukryj ]
    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: 25 kwi 2013, o 19:04 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 25 kwi 2013
    Posty: 88
    Pomógł: 1

    @janeczq napisałem przecież, że właśnie tak zrobiłem ;)
    @Jaglarz pan Mirek mnie zmylił ;)
    @matisek1233 a przeczytałeś mój kod, który podesłałem w pierwsszym poście? To samo zrobiłem funkcjami ;)
    Mimo wszystko ponawiam prośbę o materiały dotyczące multipleksowania, kto wie, kiedy będą potrzebne ;)

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 19:19 
    Offline
    Użytkownik

    Dołączył(a): 11 lut 2013
    Posty: 140
    Lokalizacja: Kraków
    Pomógł: 10

    ta.. tyle ze teraz zajmuje ci to wiele wiecej pamieci.. ale to twoj wybor.. jak chcesz ogarnac multipleksowanie to poczytaj najpierw cos o przerwaniach



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 22:29 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lut 2012
    Posty: 598
    Lokalizacja: Warszawa
    Pomógł: 13

    kacperu2 napisał(a):
    @matisek1233 a przeczytałeś mój kod, który podesłałem w pierwsszym poście? To samo zrobiłem funkcjami
    Mimo wszystko ponawiam prośbę o materiały dotyczące multipleksowania, kto wie, kiedy będą potrzebne


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


    Wyświetlanie cyfr za pomocą takich funkcji właśnie przy multipleksowaniu bardzo mocno się zemści na tobie ......

    ponieważ w czasie multi zmieniasz wyświetlacz ok 200 razy na sek i wygodniej jest to robić na tablicy.

    Po krótce multipleksowanie to zmiana wyświetlacza a raczej segmenyu wyświetlacza ok 25 razy na sek na każdy wyświetlacz z równoczesną zmianą wartosci portu tak aby pozycja na wyświetlaczu odpowiadała cyfrze która ma się wyświetlić na nim.

    Uff ale zamotałem ;)

    Co do przykładowgo kodu to jest w bluebook'u :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 22:34 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 25 kwi 2013
    Posty: 88
    Pomógł: 1

    @Malutki_27 Ok, zastanowię się nad tym, dzięki.

    Muszę przyznać że społeczność na tym forum jest dużo bardziej otwarta na nowe osoby niż na elektrodzie ;D

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 kwi 2013, o 22:43 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lut 2012
    Posty: 598
    Lokalizacja: Warszawa
    Pomógł: 13

    Miło to słyszeć ;)

    Jeszcze jedno, jak piszesz funkcję która ma nic nie zwaracac to wykorzystaj typ void

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


    A powinieneś:
    Składnia: [ Pobierz ] [ Ukryj ]
    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: 26 kwi 2013, o 05:33 
    Offline
    Użytkownik

    Dołączył(a): 11 lut 2013
    Posty: 140
    Lokalizacja: Kraków
    Pomógł: 10

    jak chcesz to przerobie troche swoja biblioteke do obslugi wyswietlacza i ci podesle.. bo na dzien dzisiejszy to mam w niej strasznie namieszane. zobaczyl bys jak to mniejwiecej sie to zwykle robi.. no i przy okazji inni mogli by mi wytknac bledy
    no.. chyba ze masz juz jakies materialy



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 kwi 2013, o 11:22 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 21 gru 2012
    Posty: 161
    Pomógł: 9

    A poszukać to nie łaska?? Tematów na forum o multipleksowaniu mnóstwo...
    Tutaj nawet jest pełny kod: topic2490.html?hilit=multipleksowanie
    dalej: post27386.html?hilit=multipleksowanie
    kolejny: post26883.html?hilit=multipleksowanie
    i jeszcze: post19301.html?hilit=multipleksowanie

    I praktycznie masz wszystko wytłumaczone... Z gotowcami nawet, dobrze wyjaśnione. W jednym jest nawet jak podłączony jest wyświetlacz, a wszystko to na pierwszej stronie wyszukiwania słowa "multipleksowanie".

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 kwi 2013, o 15:40 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 25 kwi 2013
    Posty: 88
    Pomógł: 1

    @Malutki_27 Oczywiście że o tym wiem ;D Do niedawna opracowywałem prosty projekt w "pierwszym" Ansi C (standard C89). To o czym piszesz weszło do standardu Ansi dopiero gdy uznano C99, czyli trochę później ;) Przyzwyczajenia to zła rzecz.
    @matisek1233 Podsyłaj, podsyłaj ;D i sprawdź PW ;)
    @Domanoid Dzięki za linki. Wiem że na mniejszych forach, takich jak to szukanie nie boli, ale od kiedy próbowałem coś znaleźć na elektrodzie mam do szukajki lęk :)

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 kwi 2013, o 17:13 

    Pomógł: 0

    Najlepiej się wyszukuje przez "słowo kluczowe" a potem site:forum.atnel.pl
    np.



    Góra
      
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 

    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