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

Rozbudowa 8-bitowego kontrolera do PC o dodatkowe 8 bitów - jakie układy?

Galareta 16 Sty 2006 20:14 4589 17
REKLAMA
  • #1 2188209
    Galareta
    Poziom 23  
    Posty: 696
    Pomógł: 14
    Ocena: 182
    Mam problem chciałbym rozwinąć ten schemacik o kolejne 8bitów i jakieś układy które można dostać w normalnym sklepie elektronicznym!
    Lutować umiem :D Nie znam się za bardzo na elektronice 1klasa technikum. No i jeszcze jak ktoś wpadnie na tani pomysł na np. 64bity to nie mam nic przeciwko
    Załączniki:
    • Rozbudowa 8-bitowego kontrolera do PC o dodatkowe 8 bitów - jakie układy? Schemat na MC74HCT14.GIF (17.78 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #2 2190287
    _jta_
    Specjalista elektronik
    Posty: 49007
    Pomógł: 3211
    Ocena: 4241
    To pewnie trzeba połączyć kilka sztuk tych MC14094; jeszcze zależy, co to ma robić - nie napisałeś.
    Może sprawdź w katalogu i podaj, która końcówka tego MC14094 jest do czego? Łatwiej będzie
    zobaczyć, i co tu chodzi w tym układzie. Masz tylko ten schemat, bez żadnego opisu?
  • #3 2191345
    Galareta
    Poziom 23  
    Posty: 696
    Pomógł: 14
    Ocena: 182
    No wiem tylko tyle że te rezystorki 100k to są wyprowadzenia logiczne czy jakoś tak (0 lub 1) tam mają być tranzystory które będą włączać oświetlenie w komputerze itd. a nie mam żadnego opisu do tego wiem tylko że ten układ MC14094 można zastąpić układem CD4094, a MC74HCT14 nawet nie wiem czym zastąpić żeby to można było kupić bo MC74HCT14 nigdzie nie widziałem w sklepach :cry:
  • #4 2192061
    _jta_
    Specjalista elektronik
    Posty: 49007
    Pomógł: 3211
    Ocena: 4241
    74HCT14 to jest sześciokrotny inwerter, CMOS TTL, z przerzutnikiem Schmidta na wejściu.

    MC14094 i CD4094 to w zasadzie to samo - różni producenci różnie oznaczają. Mogą się różnić
    jakością (jeden robi lepiej, drugi gorzej), ale nie nominalnymi parametrami (bo jest standard).

    Czy czytać karty katalogowe mają za Ciebie inni? Jeśli jesteś inwalidą z wadą wzroku, to jest to
    jakoś uzasadnione, ale jak dobrze widzisz, to może spróbuj poczytać sam? Wiem, czytanie jest
    dość trudne, ale jak się tego nie nauczysz, to zawsze będziesz musiał prosić innych o pomoc.

    Aha, nadal nie określiłeś, co chcesz żeby układ robił - a ja jasnowidzem nie jestem, by odgadnąć.
  • REKLAMA
  • #5 2192654
    Galareta
    Poziom 23  
    Posty: 696
    Pomógł: 14
    Ocena: 182
    No wczoraj znalazłem wszystko o tych układach chciałem napisać ale nie mogłem bo się mi elektroda nie chciała włączyć ale nadal nie wiem jak to rozbudować. Ma to kontrolować różne rzeczy w komputerze włączać i wyłączać oświetlenie (3bity) prędkości wentylatorów (5 x 2bity) a trzeba mi 13lini a jeden układ ma 8 z tego co mi wiadomo to można je jakoś połączyć.
  • REKLAMA
  • #6 2192763
    elektryk
    Poziom 42  
    Posty: 11029
    Pomógł: 439
    Ocena: 241
    Moim zdaniem tego układu nie da się przerobić ze względu na działanie jego i tricku w jaki sposób wykorzystuje on transmisje szeregową. Pozatym jak czytam pytania kolegi to odnosze wrażenie że nie ma zielonego pojęcia o tym jak ten układ ma funkcjonować, domyślam się że następnym problemem jaki będzie nie do przeskoczenia to napisanie programu obsługującego.
  • #7 2192882
    Galareta
    Poziom 23  
    Posty: 696
    Pomógł: 14
    Ocena: 182
    Nie akurat z programem nie będzie problemu a z tym że nie mam zielonego pojęcia jak to funkcjonuje to maż racje tzn. mogę dorzucić to co z tego zrobiłem. Programowanie tego jest tak proste ze wystarczy podstawy znać i jak to działa a tyle wiem. Tam gdzie jest napisane 3x arctic fan Pro2L to się okaże jak te wentylatory działają majom regulacje oryginalnie na 3 kabelkach wyprowadzoną i nie wiem jeszcze jak to będzie dokładnie wyglądać tam jest po prostu przełącznik z 3 pozycjami więc później się popatrzę jak to jest dokładnie podłączone
    Załączniki:
    • Rozbudowa 8-bitowego kontrolera do PC o dodatkowe 8 bitów - jakie układy? 8bit.GIF (23.62 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #8 2193200
    _jta_
    Specjalista elektronik
    Posty: 49007
    Pomógł: 3211
    Ocena: 4241
    Myślę, że napisanie programu obsługującego, ani ilość bitów nie jest problemem - wystarczy
    odpowiednio ustawić parametry portu szeregowego (jest do tego program MODE, jak komuś
    się nie chce używać interfejsu niskiego poziomu), i wysłać na niego sekwencję bajtów.

    Natomiast to, że Galareta nie określa, co chce zrobić, jest poważnym problemem.
    I chyba dokumentację do tych scalaków będę musiał sam ściągnąc i przeczytać,
    choć mam ze trzy razy tyle lat, co Galareta, i już coraz gorzej widzę.
  • #9 2193361
    Galareta
    Poziom 23  
    Posty: 696
    Pomógł: 14
    Ocena: 182
    to jest dokumentacja do CD4094 do drugiego jeszcze nie znalazłem
    Załączniki:
    • cd4094.pdf (78.77 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #10 2193701
    rasty
    Poziom 27  
    Posty: 734
    Pomógł: 126
    Ocena: 23
    Znależć łatwo,
    http://www.alldatasheet.com/
    wpisujesz w okienku nazwę układu i już.
    Ale do meritum:
    MC74HCT14 to zwykły inverter z wejściem Schmitta.
    MC14094 to rejestr przesuwny. Każdy impuls CLOCK przepisuje stan z wejścia DATA do wyjścia Q1. Następny CLOCK wpisuje stan z DATA do Q1 i przepisuje to co było poprzednio na Q1 do Q2 ( przesuwa dane wzdłuż rejestru).
    Ale jest jeszcze wejście STROBE. Zeby rejestr "przesuwał" na tym wejściu musi być "1" logiczna, czyli musi być koincydencja czasowa miedzy CLOCK i STROBE.
    W układzie sterujacym na Twoim rysunku impulsy CLOCK i STROBE są przesuniete wględem siebie, czyli układ nie bedzie działał. :cry:
    Poza tym na wejscie pierwszego invertera wchodzą impulsy z portu szeregowego, z definicji +12v i -12V, co nie jest zdrowe dla tego wejścia. Zasilany jest z +5V i max. nap. wejściowe moze być Vcc + 0,5V.
    Wskazana była by jakaś zabezpieczająca dioda Zenera np. C5V6 na wejściu.
  • #11 2193792
    _jta_
    Specjalista elektronik
    Posty: 49007
    Pomógł: 3211
    Ocena: 4241
    rasty, niedokładnie tak: STR przepisuje dane na wyjścia; CP działa i bez niego.
    Zabezpieczenie wejścia rzeczywiście by się przydało - układ jest do sygnału TTL.
    A może projektant liczy na to, że ten opornik 22k wystarczająco zabezpieczy?
    Pewnie 74HCT14 ma jakieś diody przy wejściach, tylko trzeba ograniczyć prąd.

    Poza tym robienie opóźnień na inwerterach jest trochę ryzykowne - czy to zadziała?
    Ja bym raczej proponował użycie 74HC123, albo - jakby polaryzacja pasowała - NE556.

    ------------------------------------------------------------------------------------------------------------
    Skrócony opis układu CD4094.

    Układ końcówek CD4094:
    wejścia: 16=VDD, 8=VSS, 15=EO. 1=STR, 2=D, 3=CP,
    wyjścia: 4,5,6,7,14,13,12,11=O0-O7, 9=Os, 10=Os'.

    STR: przepisywanie danych z rejestru przesuwnego do wyjściowego, aktywny H;
    EO: aktywowanie wyjść z rejestru wyjściowego, aktywny H;
    Os,Os': wyjścia szeregowe z rejestru przesuwnego (Os' opóźniony);
    CP: przesuwanie danych w rejestrze przesuwnym, zbocze L->H;
    i przepisywanie Os do Os', zbocze H->L.
    ------------------------------------------------------------------------------------------------------------

    A jak podłączyć kilka, żeby mieć więcej wyjść, jest w tym pdf-ie (którego Galareta tu
    umieścił, ale sam nie raczył przeczytać, boby wiedział i nie pytał), na samym końcu.
    Tyle tylko, że zamiast tego 10n powinien być wielokrotnie większy.

    Jeszcze pozostaje pytanie, z jaką szybkością trzeba wysyłać i jakie dane, żeby wpisać
    to, co się zechce, do wyjść. Przypuszczam, że trzeba ustawić na 7 bitów bez parzystości
    i wysłać: bit 0 - dana1, bit 1 - 1, bit 2 - 0, bit 3 - dana2, bit 4 - 1, bit 5 - 0, bit 6 - dana3,
    potem: bit 0 - dana4, bit 1 - 1, bit 2 - 0, bit 3 - dana5, bit 4 - 1, bit 5 - 0, bit 6 - dana6,
    i na koniec: bit 0 - dana7, bit 1 - 1, bit 2 - 0, bit 3 - dana8, bity 4,5,6 - 1. To do wysłania
    8 bitów, odgadnięcie jak wysyłać więcej pozostawiam jako proste ćwiczenie.

    I pytanie, czy ten układ w ogóle może zadziałać - mam wrażenie, że sygnał na bramkę
    b przychodzi w odwrotnej polaryzacji, niż trzeba - na bit startu powinna dawać impuls...

    Korekta - ten kondensator 10n może pozostać, jaki jest - kolejne impulsy rozładowują
    go, dopiero jak się skończą, zostaje wygenerowany STR i dane przechodzą na wyjścia.
    Może ten układ nie będzie bardzo krytyczny czasowo i nie będzie miało znaczenia,
    jeśli będą 2 bity stopu? A nawet 8 bitów danych, tylko wtedy bit 7 ma być 1.
    Zwiększenie kondensatora 10n spowoduje zwiększenie czasu bez danych,
    po którym transmisja zostanie uznana za zakończoną i przepisana na wyjścia.
    A nieprzyjemny problem z takim układami jest taki, że zależnie od parametrów
    74HCT14, które mogą mieć pewien rozrzut, wyjdą różne opóźnienia sygnałów.
  • REKLAMA
  • #12 2193890
    rasty
    Poziom 27  
    Posty: 734
    Pomógł: 126
    Ocena: 23
    Fakt. :D
    Miałem tylko "krótkiego" PDF-a z Function Table.
    Odwołuję poprzedniego posta :oops:

    pozdr.
  • #13 2196343
    Galareta
    Poziom 23  
    Posty: 696
    Pomógł: 14
    Ocena: 182
    Zabieram się do roboty :D jak nie będzie działać to się nic nie stanie! Się przy składaniu okaże komputer powinien przeżyć i tak będę testował na starym jakimś.
    Do _jta_ według tego co mi wiadomo powinno być na 8bitów bez parzystości i 1 stopu dane muszą być wysyłane tak że 8 bitów w całości zmienia jedno wyjście czyli 255 albo 0 cała konfiguracja ma zawierać wartość np. 255 0 0 255 0 0 0 0 przepustowość trzeba ustawić chyba na 9600b/s
    Co do PDF mam go od wczoraj
  • #14 2197126
    _jta_
    Specjalista elektronik
    Posty: 49007
    Pomógł: 3211
    Ocena: 4241
    Można i tak - wtedy większy margines na rozrzut parametrów 74HCT14, i więcej bajtów trzeba wysłać,
    żeby przesłać tyle samo informacji; sprawdź jak z tą polaryzacją sygnały TxD, bo coś mi się wydaje,
    że jest +12V jak nie ma sygnału, -12V jak wysyłasz 0; bit startu to jest 0, i _początek_ bitu startu ma
    generować (z opóźnieniem) impuls zegarowy (wejście CP 4094). Najwyżej trzeba będzie zmienić
    jedno połączenie (tego kondensatora z lewej strony schematu), jak nie będzie dobrze działać.

    Co do przepustowości - można by spróbować zrobić test z wysyłaniem danych: FFh, FEh, FCh, F8h,
    F0h, E0h, C0h, 80h, 0 i zobaczyć, która jaką wartość wpisuje. Jak ustawisz, żeby nie było parzystości,
    to każda z nich daje na TxD impuls stanu 0, o długościach od 1 (FFh - tylko bit startu jest 0), do 9
    (0 - bit startu i 8 bitów danych). A układ odczytuje 0 lub 1 zależnie od długości impulsu.

    Jak ustawisz za małą szybkość, to może się nie dawać wpisać wszystkich bitów - wpisze się jeden,
    i zostanie podany na wyjście. To może być trudne do wykrycia (statycznie nic nie wykryjesz).
    I zarówno ustawienie bardzo dużej, jak i bardzo małej szybkości spowoduje, że wysyłając tylko
    jeden bajt i robiąc długą przerwę zawsze wpiszesz to samo, niezależnie od tego, co wyślesz.

    Można zacząć testowanie od dużej szybkości (115k), wysyłać FF, a potem spróbować 0, i zobaczyć,
    czy wynik się zmieni - jeśli tak, to szybkość jest w przybliżeniu dobra, jak nie, to trzeba ją zmniejszyć.

    A jak jest zła polaryzacja, to żadna szybkość nie zmieni wpisywanych do rejestru danych.
  • #15 2209168
    Hornet60
    Poziom 18  
    Posty: 332
    Pomógł: 13
    Ocena: 15
    Witam
    A może by zastosować jakiś multiplekser? wtedy dało by się rozszerzyć nawet do 64 bitów, albo kombinować coś z zatrzaskami...
  • #17 2211115
    Galareta
    Poziom 23  
    Posty: 696
    Pomógł: 14
    Ocena: 182
    Mam jeszcze pytanie jak daleko może być układ od układu? i dorzucam płytkę może się komuś przyda skala 200% zaczynam robić w przyszłym tygodniu bo dopiero będę miał układy jak zrobię to napisze czy działa
    Załączniki:
    • Rozbudowa 8-bitowego kontrolera do PC o dodatkowe 8 bitów - jakie układy? 2.jpg (44.91 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • Rozbudowa 8-bitowego kontrolera do PC o dodatkowe 8 bitów - jakie układy? 1.jpg (127.29 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #18 2230561
    _jta_
    Specjalista elektronik
    Posty: 49007
    Pomógł: 3211
    Ocena: 4241
    Jak mają być długie połączenia (wiele metrów), to przy wejściach (z takiego długiego połączenia) dodaj
    równolegle kondensator (kilka-kilkanaście nF) do masy i szeregowo z połączeniem opornik (ze 100R).

    W długich przewodach są zniekształcenia spowodowane odbiciami, taki układ tłumi odbicia
    (kosztem spowolnienia - megaherc już nie przejdzie - ale go nie potrzebujesz).

Podsumowanie tematu

✨ Dyskusja dotyczy rozbudowy 8-bitowego kontrolera do PC o dodatkowe 8 bitów, wykorzystującego układy CD4094 (odpowiednik MC14094) oraz problemów z dostępnością i zastępowalnością układów takich jak MC74HCT14 (sześciokrotny inwerter Schmitta). Poruszono kwestie działania rejestru przesuwnego CD4094, w tym znaczenia sygnałów CLOCK, STROBE i zabezpieczeń wejść przed napięciami spoza zakresu TTL, np. poprzez diody Zenera. Zwrócono uwagę na trudności związane z synchronizacją sygnałów i transmisją szeregową oraz na konieczność zrozumienia działania układu i jego programowania. Zaproponowano rozszerzenie liczby bitów przez łączenie kolejnych układów CD4094, a także alternatywne rozwiązania, takie jak multipleksery lub zatrzaski. Omówiono także kwestie praktyczne, jak długość połączeń między układami i sposoby tłumienia odbić sygnału (rezystory szeregowe i kondensatory do masy). Wskazano na konieczność dostosowania parametrów transmisji szeregowej (np. 9600 b/s, brak parzystości, 1 bit stopu) oraz testowania działania na przykładzie sterowania oświetleniem i prędkością wentylatorów w komputerze.
Podsumowanie wygenerowane przez AI na podstawie treści dyskusji.
REKLAMA