Skocz do zawartości

Demultiplekser 74LS138


miccaldo

Pomocna odpowiedź

Witam, chcę zaprogramować zapalenie diody przez demultiplekser, jednak jeszcze nie miałem do czynienia z tego typu scalakami także mam parę pytań:

1. Piny A, B, C podłączam do pinów wejściowych uC?

2. Piny enable, czytałem że podobnie jak kanały A, B, C są to piny sterujące, czy muszę je podłączać? Nie mogę sterować tylko za pomocą kanałów A, B, C?

3. Nie za bardzo rozumiem jak to programować, wiem że podaję 1 i 0 na kanały, ale to wygląda w ten sposób że kiedy podam 1 na kanał A, B i C to na wszystkich wejściach będzie stan wysoki? A kiedy podam na kanał A 1, B i C 0, to stan wysoki będzie na wejściu 4?(100)

4. Dlaczego gdy mam podłączoną diodę do wejścia 0 demultipleksera, to ona świeci od razu, nawet kiedy podepnę anodę do obojętnie jakiego pinu demultipleksera? Nawet do GND.

Bardzo proszę o odpowiedzi,

pozdrawiam.

Link do komentarza
Share on other sites

1. Tak

2. Przynajmniej jeden musisz sterować z uC, chyba że nie chcesz mieć ustawienia wszystkich wyjść na stan wysoki. Osobiście polecam wykorzystać do tego En3, a pozostałe dwa do GND.

3. Zajrzyj do datasheeta

4. A po co dioda do wejścia?

Link do komentarza
Share on other sites

Ok, widziałem dokumentację, w tej tablicy prawdy wszystko jest wyjaśnione. Ale mam inny problem, bo podłączyłem demultiplekser w taki sposób:

A - PB4

B - PB3

C - PB2

G1 - PA1

G2A - PA0

Ale teraz uC(attiny2313) zachowuje się w bardzo dziwny sposób, bo mam ustawione w ten sposób:

int main(void) 
{ 

DDRA = 0xff;
DDRB = 0xff;
DDRD = 0xff;

PORTD = 0x00;
PORTA = 0x00;
PORTB = 0x00;

}

czyli stany niskie na wszystkich portach, ale niezależnie od tego na całym porcie A jest stan wysoki, na pinach PD0, PB2... i tutaj dotknąłem VCC anodą diody i już nic nie działa.

O co tutaj chodzi?

[ Dodano: 23-12-2012, 14:37 ]

Ah tam przecież dioda mi się spaliła...🙂 więc dalej PB3, PB4. Zauważyłem że głównie są to piny gdzie mam podłączone wejścia demultipleksera, występuje na tych pinach może negacja powodująca odwrócenie stanu niskiego?

Link do komentarza
Share on other sites

Ustawienie DDRA = 0xff; czyli DDRA =0b11111111 nie jest przypadkiem błędem?

Attiny 2313 ma tylko 3 porty I/O DDRA z czego jeden jest jako reset. Również ma 7 portów DDRB czyli

DDRB=0x7F;

Odsyłam do noty katalogowej --->>

www.atmel.com/Images/doc2543.pdf

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.