IP: *.cbk.waw.pl / *.cbk.waw.pl 01.03.05, 12:43
Poniższa zagadka to trochę wyidealizowana sytuacja z jaką się spotkałem
w praktyce. Jest układ elektroniczny składający się z następujących
elementów:

- Procesor z czterema wejściami cyfrowymi In1..In4 i czterema wyjściami
cyfrowymi Out1..Out4.

- Do wejść procesora dołączone są cztery przyciski P1..P4, ale nie wiadomo
który przycisk do którego wejścia, ani jaka jest ich polaryzacja (polaryzację
nazywamy dodatnią jeśli naciśnięcie przycisku powoduje powstanie sygnału 1
na wejściu, a puszczenie przycisku - sygnału 0, w przciwnym przypadku mówimy
o polaryzacji ujemnej). Każdy przycisk może mieć dowolną polaryzację.

- Do wyjść procesora dołączone są cztery diody świecące D1..D4, i tu też nie
wiadomo która dioda do którego wyjścia, ani która ma jaką polaryzację
(w tym przypadku polaryzacja jest dodatnia jeśli sygnał 1 powoduje świecenie
diody a 0 nieświecenie).

Chcemy rozszyfrować co jest z czym połączone i jaką ma polaryzację i w tym
celu konstruujemy testy. Na jeden test składa się program procesora, który
uzależnia odpowiednio stany czterech wyjść od stanów czterech wejść, oraz
z sekwencji naciśnięć klawiszy lub kombinacji klawiszy i obserwacji jak na to
reagują diody świecące.

PYTANIE: Ile co najmniej testów wystarcza?

Umówmy się od razu że w programie testera uzależnienie wyjść od wejść jest
czysto kombinacyjne, t.zn. że stany wyjść zależą wyłącznie od aktualnych
stanów wejść, a nie od stanów poprzednich.

Może na razie, wzorem zagadki o Uczniu Alchemika, podawajcie same minimalne
liczby testów. O wyjaśnienie spytam później.

(sam nie znam odpowiedzi)
Obserwuj wątek
    • Gość: Uczeń Re: Tester IP: *.neoplus.adsl.tpnet.pl 03.03.05, 21:51
      Podaj to samo mniej trchnicznym językiem. Czy polaryzacja przycisku jest
      związana z swieceniem diody, czy też odpowiedni układ przycisków powoduje
      zaświecenie wszystkich lub niektórych diod?
      • Gość: grzesiek Re: Tester IP: *.visp.energis.pl 03.03.05, 23:45
        O to właśnie chodzi, że na wstępie przyciski nie są z diodami wcale połączone bezpośrednio.
        Przyciski wchodzą na wejścia czarnej skrzynk (procesora)i, a diody są podłączone do
        jej wyjść. Zadaniem jest ustalenie co powinno być w czarnej skrzynce, t.zn. jak
        połączyć wejścia z wyjściami, aby badając reakcję diod świecących na naciśnięcia
        przycisków dojść do tego co jest niewiadome.

        Połączenia wewnątrz czarnej skrzynki mogą być proste, np. Out2=In3, mogą
        zawierać negację, np. Out3=nie In1, albo mogą też być zastosowane bardziej
        skomplikowane funkcje logiczne, np. Out1=In2 i In3, albo Out4=In3 lub nie In4.
        Opis najprostrzego testu (same połączenia proste) mógłby tak wyglądać:
        Out1=In1
        Out2=In2
        Out3=In3
        Out4=In4
        Ten test daje pewne informacje, ale jest oczywiście niewystarczający.

        Problem polaryzacji bierze się z tąd, że mamy trzy rodzaje sygnałów logicznych:
        1) Przycisk naciśnięty / puszczony,
        2) Sygnał na wejściu procesora równy 0 lub 1.
        3) Sygnał na wyjściu procesora równy 0 lub 1.
        4) Dioda świeci / nie świeci,
        Polaryzacja przycisku określa relację między 1) a 2).
        Polaryzacja diody określa relację między 3) a 4).

        Przepraszam za techniczny język, i że nie starczyło mi wyobraźni na ubarwienie
        tego zadania przez sprowadzenie np. do krainy czarów. Wydaje mi się jednak
        że ciekawy może być sam fakt, że jest to zadanie zrodzone przez praktykę, a nie
        tylko wydumane.

        Dodam, że w międzyczasie znalazłem rozwiązanie (nie powiem teraz jakie).

Nie masz jeszcze konta? Zarejestruj się


Nakarm Pajacyka
Wersja mobilna