logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[ATMEGA32][Bascom] Diody.

MacFis 29 Paź 2008 18:13 2371 19
  • #1 5680479
    MacFis
    Poziom 17  
    Witam!

    Sterowałem już kilkoma diodami.
    Wygenerowałem dźwięki.
    Teraz przyszła pora na zrobienie prostej gierki na LED.
    I mam pytanie.
    Jak sterować większą ilością diod od ilości wyjść atmega32?
    Chciałbym aby mój wyświetlacz miał 64 diody (8x8).
    Czy może lepiej by było kupić jakiś wyświetlacz np. od nokii?
  • #2 5680525
    dawid512
    Poziom 32  
    Matryca LED 8x8 + multiplexowanie.
  • #4 5680583
    komanche
    Poziom 13  
    używając multipleksowania. Kilka z końcówek atmegi będzie decydowac który rząd diod się zaświeci.

    Każdy rząd ma wspólną anodę podłączoną przez cośtam do atmegi (sam rozwiąż ten problem jak podłączyc). czyli na każdy rząd używasz jedną nóżkę. natomiasz potem patrzysz na kolumny (diody w pionie). Każda z kolumn ma wspólną katodę podłączoną do jednej z nóżek atmegi. używasz więc 8+8 = 16 nóżek na 64 diody.

    Zapalasz diody na zasadzie gry w statki.

    Rząd 1, kolumna 1 = dioda1
    rząd 8, kolumna8 = dioda64

    zapalając każdą diodę na bardzo krótko uzyskasz efekt świecenia wszystkich
  • #6 5680599
    dawid512
    Poziom 32  
    Głównie zasada multiplexowania polega na bezwładności oka ludzkiego. Wyświetlacze( w tym przypadku twoje diody) zostają wygaszone. Na port zostaje wystawiona odpowiednia wartość co odpowiada pewnej ilości zapalonych diod. Następnie wyświetlacz (jeden) zostaje zapalony i świecą ustalone wczesniej diody. Pozostałe wyświetlacze analogicznie. Sterowanie odbywa się za pomocą tranzystorów. Całość dzieje się na tle szybko że oko ludzkie nie zauważa wygaszania i zapalania poszczególnych wyświetlaczy. Więcej w google i na elektrodzie było o tym sporo tematów. Problem jest taki że chcesz sterować 8 diodami na jeden tranzystor czyli tak jak bajt masz aż 256 możliwości zapalania tych diod.
  • #7 5680650
    komanche
    Poziom 13  
    po prostu ustaw diody w 8 rzędach po 8

    masz 8 rzędów (poziom) i 8 kolumn (pion)

    rzędy łączysz anodami i przez opornik do nóżek atmegi
    kolumny łączysz katodami i do innych nóżek.

    chcesz zapalic gorna diode pierwsza od lewej to na porcie od gornego rzędu ustawiasz 0 a na porcie od pierwszej kolumnie dajesz 1. Dioda swieci!
  • #8 5680690
    dawid512
    Poziom 32  
    komanche napisał:
    po prostu ustaw diody w 8 rzędach po 8

    masz 8 rzędów (poziom) i 8 kolumn (pion)

    rzędy łączysz anodami i przez opornik do nóżek atmegi
    kolumny łączysz katodami i do innych nóżek.

    chcesz zapalic gorna diode pierwsza od lewej to na porcie od gornego rzędu ustawiasz 0 a na porcie od pierwszej kolumnie dajesz 1. Dioda swieci!


    Komplikujesz sobie życie. Wystarczy kupić gotową matryce led 8x8. Każdą kolumnę (anody)łączysz przez tranzystor PNP do zasilania i uc zaś każdy rząd(katody) przez rezystor też do uc. Wtedy opiera się to na multipleksowaniu zwykłych wyświetlaczy 7 segmentowych. Wybierasz które diody mają się zapalić w odpowiedniej kolumnie.
  • #9 5680720
    komanche
    Poziom 13  
    no na jedno wychodzi. nigdzie nie napisał, że nie chce lutowac diod kilka godzin wiec zaproponowalem mu najtoporniejsze rowiazanie ;) ale dobrze obrazuje to zasade działania ;)
  • #11 5681068
    komanche
    Poziom 13  
    starczy atmega i rezystory. ;)
  • #13 5681275
    komanche
    Poziom 13  
    albo... 64 diody led i dwuwarstwowa pcb dzięki cudownemu działaniu producentów którzy dają jedną nóżke diody bardziej od drugiej ;) i masa lutowania ! :)
  • #14 5681289
    MacFis
    Poziom 17  
    komanche napisał:
    albo... 64 diody led i dwuwarstwowa pcb dzięki cudownemu działaniu producentów którzy dają jedną nóżke diody bardziej od drugiej ;) i masa lutowania ! :)


    Nie bardzo to zrozumiałem...

    Czyli to się nada czy nie?
  • #15 5681353
    komanche
    Poziom 13  
    ze wspolna katoda albo anoda nie nada sie.

    Mialem na mysli, ze sam zrobisz taki panel led:

    [ATMEGA32][Bascom] Diody.
  • #16 5681966
    wader_669
    Poziom 28  
    dodaj tranzystory bo inaczej spalisz port
  • #17 5682022
    komanche
    Poziom 13  
    iii tam.
    u mnie działa na 6x6 i nawet nie jest Ciepła.
    rezystorki załatwiają sprawę.
  • #18 5682091
    wader_669
    Poziom 28  
    no nie wiem.
    Ok to leci ci pokolei kolumny i bedzie przypadek ze cala kolumna swieci to nie wiem czy to wytrzyma procek.
  • #19 5682213
    submariner
    Poziom 32  
    takie multipleksowanie 8x8 oslabia dosc wyraznie swiecenie , wypelnienie swieci/nie swieci jest jak 1:8.
    Lepiej dac 2 razy 4x8 wykorzystujac 3 porty , 1/4 jeszcze nie rzuca sie tak w oczy , nie odnosi sie wrazenia oslabionego swiecenia.
REKLAMA