Elektroda.pl
Elektroda.pl
X
Sklep HeluKabel
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Rozwiązanie logiczne + typ tranzystorów przekazujących

marenc 26 Mar 2006 20:42 1406 6
  • #1 26 Mar 2006 20:42
    marenc
    Poziom 24  

    Chcę uzykać efekt pracy:
    1. Na na wejście logiczne jest przekazywana logicznie wartość od 0 do 255
    2. Na wejście 4-bitowe jest podany numer wyjścia od 0 do 3
    3. Przekazanie wartości z wejścia na wyjście określone przez wartość na wejściu opsanym w punkcie #2

    Poniżej zamieszczam schemat mojego "próbnego" rozwiązania tego problemu. Schemat przedstawia pracę dla dwóch portów wyjściowych.

    Pytanie i problemy:
    1. Jakie zastosować tranzystory? Konkretny model.
    2. Gdy na wejściu logicznym 8-bitowym są tylko stany logiczne '1' to wszystko (na symulatorze) działa LUX, ale gdy choć jeden jest w stanie niskim to już nie działa poprawnie. Jak to naprawić?

    0 6
  • Sklep HeluKabel
  • #2 26 Mar 2006 21:31
    jony
    Specjalista elektronik

    mariuszlorenc napisał:

    2. Gdy na wejściu logicznym 8-bitowym są tylko stany logiczne '1' to wszystko (na symulatorze) działa LUX, ale gdy choć jeden jest w stanie niskim to już nie działa poprawnie. Jak to naprawić?


    Do tego nie nadaje się żaden tranzystor. Tranzystor bipolarny nie działa jak klucz i napięcie z kolektora nie przenosi się na emiter.
    Do tego to trzeba albo dać 4066(klucz analogowy) albo może jakiś multiplekser.

    0
  • Sklep HeluKabel
  • #3 26 Mar 2006 21:36
    marenc
    Poziom 24  

    jony napisał:
    mariuszlorenc napisał:

    2. Gdy na wejściu logicznym 8-bitowym są tylko stany logiczne '1' to wszystko (na symulatorze) działa LUX, ale gdy choć jeden jest w stanie niskim to już nie działa poprawnie. Jak to naprawić?


    Do tego nie nadaje się żaden tranzystor. Tranzystor bipolarny nie działa jak klucz i napięcie z kolektora nie przenosi się na emiter.
    Do tego to trzeba albo dać 4066(klucz analogowy) albo może jakiś multiplekser.


    Ok, zastosuje ten 4066, ale czy idea jest dobra? Niemam jeszcze układów logicznych w szkole bo jestem na drugim roku technikum.

    Pytam bo niewiem czy mam sam kombinować z schematem czy może "ktoś" zrobi go za mnie :)

    0
  • #4 27 Mar 2006 15:36
    qrdel
    Poziom 28  

    Przy wejściu 4 bitowym (jak dla mnie raczej 2 bitowym) jednak zastosowałeś bramki logiczne.

    Oczywiście można to zrobić na tranzystorach, tylko nieco inaczej.
    Proponuję żebyś obejrzał schematy typowych bramek TTL.
    Tranzystor (NPN) winien być zasilany (kolektor do +) żeby wysterował następną bramkę musi z jej rezystora wejściowego pociągnąć prąd.
    Zwykle w TTL stopień wyjściowy ma więc kolektor połączony z + przez rezystor natomiast emiter połączony z masą. Wyjściem jest kolektor.
    Przy braku wysterowania, prąd kolektora jest znikomo niski, na kolektorze napięcie bliskie UCC (plusa zasilania). Przy wysterowaniu prąd kolektora wysoki całe napięcie odklada się na rezystorze i kolektor ma potencjał niski, dodatkowo kolektor może jeszcze przewodzić prąd "wyciągnięty" z układu wejścia kolejnej bramki (i to powoduje wysterowanie tej bramki).
    Tak podłączony tranzystor jest negatorem (odwraca bit), żeby zrobić coś więcej trzeba doczepić więcej tranzystorów.
    Na szczęście wszystko daje się poskładać z bramek NAND (albo z NOR) więc wystarczy opanować budowę takiej jednej (lub drugiej) bramki.
    Oczywuiście takie przepisy polecam hobbystom którzy chca pokazać że potrafią na tranzystorach, albo chcą coś dogłębnie przebadać.

    A swoją drogą, co ma się pojawiać na innych wyjściach 8 bitowych gdy nie są wybrane. Bo z tego co próbowałeś to gdyby miało działać to albo 0 albo 255 (zależy od ostatecznej konstrukcji).
    Ale gdyby odpowiedź brzmiała "Nieważne co, liczy się tylko przekazanie do wybranego" to najprostszym rozwiazaniem jest magistrala 8 bitowa (z drutu) podłączona równolegle do wejscia i wszystkich wyjść 8 bitowych.
    Wejście sterujace zostawić w powietrzu.
    Układ jest odporny na awarie układów scalonych (impuls elektromagnetyczny), nie pobiera energii, łatwo dowieść prawidłowości działania. przy typowej technologii także bardzo tanio kosztuje.

    Pozdrawiam.

    0
  • #5 27 Mar 2006 15:50
    marenc
    Poziom 24  

    qrdel napisał:
    ...
    A swoją drogą, co ma się pojawiać na innych wyjściach 8 bitowych gdy nie są wybrane. Bo z tego co próbowałeś to gdyby miało działać to albo 0 albo 255 (zależy od ostatecznej konstrukcji).
    Ale gdyby odpowiedź brzmiała "Nieważne co, liczy się tylko przekazanie do wybranego" to najprostszym rozwiazaniem jest magistrala 8 bitowa (z drutu) podłączona równolegle do wejscia i wszystkich wyjść 8 bitowych.
    Wejście sterujace zostawić w powietrzu.
    Układ jest odporny na awarie układów scalonych (impuls elektromagnetyczny), nie pobiera energii, łatwo dowieść prawidłowości działania.
    ...


    Sorki za pomyke z tym 4-bitowym wejściem.

    Ma przekazywać dokładnie to co się pojawi na wejściu(jeżeli '0' to '0' a jeżeli '1' to '1') Układ będzie służył do sterowania wyświetlaczami LED. Poprostu popełniłem błąd robiąc płytkę i potrzebuję teraz taki rozdzielacz programowy.

    Może jakieś bliższe informacje o magistrali 8-bitowej?

    0
  • Pomocny post
    #6 27 Mar 2006 22:17
    qrdel
    Poziom 28  

    Sorry, to miało być dowcipne
    magistrala to po prostu 8 przewodów biegnacych obok siebie

    Ale z Twojej ostatniej wypowiedzi wynika że nie chcesz zeby stan wyjścia zmieniał się gdy nie jest wybrane. Wszystkie proste pomysły będące rozwinięciem podstawowego pomysłu z tranzystorami odpadają.

    To jest elektronika, a nie programowanie. Jak linia nie jest sterowana (wymuszana) to napięcie się "rozłazi" albo leci do 0 albo do UCC (zależnie od konstrukcji). W językach programowania jak ustawisz wartość zmiennej to gotowa trwać na wieki (do następnej zmiany).

    [na marginesie, ten sam błąd tylko w drugą stronę popełniają "fachowcy" opisując programowanie w LabView jako "ściśle odzwierciedlające elektronikę"; to tam własnie "drucik" potrafi pamiętać nadaną wartość]

    Teraz o problemie.
    Rozumiem że dana 8 bitowa ma się pojawiać na wyjściu 8 bitowym i po zmianie wybranego wyjścia pozostawać bez zmian.
    Do tego celu potrzebne są zatrzaski, to taki rejestr do pamiętania wartości na dłużej (czyli taka np. 1 bajtowa pamięć){ale można użyć np. 8 sztuk i pamiętać bajt}.
    I tu okazuje się że magistrala jest całkiem na miejscu.
    Przyda się jeszcze sygnał WR, jednobitowy zlecający wpisanie.

    Działa to tak:
    - magistrala doprowadza informację wejściową do wszystkich rejestrów (zatrzasków) wyjściowych
    - każdy rejestr ma wejście Enable (zezwalające na wpisywanie danych) podłączone do jednego bitu wyjściowego z dekodera sygnału sterującego (dekoder już zaprojektowałeś, zamienia liczbę 2 bitową na sygnał 1 z 4ech)
    - gdy zewnętrzny układ ustali już na wejściu informacyjnym daną wejściową, oraz ustali stan wejścia sterującego, dopiero wtedy podaje sygnał na wejście WR (write czyli zapisz) podłączone do wejść WR wszystkich zatrzasków
    - ponieważ tylko jeden zatrzask ma wysterowane wejście Enable, to tylko do niego zostanie wpisana informacja wejściowa i natychmiast zaprezentowana na liniach wyjściowych tego zatrzasku
    - zatrzask jest tak miły że ten stan wyjść utrzymywać będzie do zaniku zasilania (jeśli nie dostanie polecenia zapisania nowych danych)
    - po zaniku impulsu WR można zmieniać zarówno dane wejściowe jak i dane sterujące
    - dopiero kolejny impuls WR spowoduje zapis chwilowo występujących danych wejściowych do jednego zatrzasku, dokładnie do tego który jest wskazywany przez dane sterujące
    - zatrzaski stale pamiętają ostatnio wpisane dane (każdy swoje własne)

    prosty zatrzask to 7475 (4 bity) typowy 8 bitowy np. 74373
    wejście Enable należałoby sterować przez bramkę AND, jedno wejście jako Enable w sensie mojego wcześniejszego wywodu, a drugie wejście jako WR.

    Proponuję popatrzeć na schematy prostych urządzeń mikroprocesorowych, studiowanie gotowych rozwiązań może przynieść wiele pożytku. (np. w Elektronice Praktycznej, albo innych kolorowych miesięcznikach)

    no prawie rozdział wyszedł

    pozdrawiam

    0
  • #7 27 Mar 2006 23:15
    marenc
    Poziom 24  

    Zrobie to na mikrokontrolerze ... właśnie zaczynam się uczyć a coś takiego na uC niejest zbytnio trudne. Dzienx za próbę pomocy, a te informację przydadzą mi się do wielu rzeczy :)

    0