eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaProblem z odczytem karty CFRe: Problem z odczytem karty CF
  • Data: 2025-01-04 20:50:06
    Temat: Re: Problem z odczytem karty CF
    Od: Atlantis <m...@w...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 4.01.2025 11:43, Janusz wrote:

    > Wg mnie to będzie jedyna przyczyna, dane musisz zatrzaskiwać tym ALE.

    Samo ALE to chyba za mało. W tej chwili polegam tylko na sygnale IO_RD
    do ustawiania kierunku transferu - jeśli linia jest w stanie niskim, to
    mamy odczyt z karty, jeśli jest wysoka, to zapis do niej.
    Gdybym w takim wypadku użył ALE do sterowania pinem G, to za każdym
    razem gdy tylko na liniach D0..D7 pojawiałyby się dane, bufor otwierałby
    się w którąś stronę. Pół biedy, gdyby linia IO_RD znajdowała się wtedy w
    stanie wysokim - karta by po prostu zignorowała to co pojawi się na
    magistrali, nie widząc aktywnych sygnałów CS i RD. Jednak gdyby kierunek
    bufora był ustawiony w przeciwną stronę, to wtedy pojawi się następująca
    sytuacja:
    1. ALE otworzy bufor.
    2. IO_RD ustawi kierunek od karty do magistrali systemowej.
    3. Karta nie widząc sygnału CS, będzie trzymała swoje wyjścia danych w
    stanie wysokiej impedancji. Przez bufor na magistralę trafią więc stany
    nieustalone.

    Trochę poeksperymentowałem, dodając trochę logiki do GAL-a. Na chwilę
    obecną wygląda to tak:

    /MEMRD = /IOM * /RD
    /MEMWR = /IOM * /WR
    /IORD = IOM * /RD
    /IOWR = IOM * /WR
    /LOCPTCS = /LOCIOCS * /A4 * IOM * /WR
    /LOCCFCS = /LOCIOCS * A4 * IOM * /ALE

    Rzeczy, których mogę być pewien:
    - Poprawnie działa generowanie sygnałów MEMRD i MEMWR, bo pamięci
    działają poprawnie i kod z EPROM-u się wykonuje.
    - Poprawnie działa generowanie sygnałów IORD i IOWR, bo peryferia (poza
    kartą) działają poprawnie. Mogę odczytywać i zapisywać z/do nich dane.
    - Poprawnie działa przynajmniej kawałek dekodera adresów, bo linia
    LOCPTCS (sterująca portem 74273) działa poprawnie.

    Tylko z kartą są problemy. Bufor wydaje się być najbardziej oczywistym
    kandydatem, bo to główna różnica w stosunku do innych peryferiów.
    Zastanawiam się teraz czy przypadkiem nie mam jakiegoś problemu z
    timingami i któryś sygnał nie pojawia się za wcześnie lub za późno.
    Przykładowo w chwili obecnej sygnał CS steruje zarówno kartą, jak i
    otwarciem bufora (linia G). Może powinienem to jakoś rozdzielić?

    Nie wiem czy w akcie desperacji nie wywalę w ogóle tymczasowo bufora i
    nie połączę linii danych bezpośrednio. Widziałbym przynajmniej czy coś
    się zmieniło i czy jest poprawa. W prototypie na 8080 karta działała bez
    bufora w miarę ok, ale od czasu do czasu pojawiały się przekłamania w
    transmisjach.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: