Witam!!!
Bardzo proszę o sprawdzenie, pod względem koncepcji, poprawności układu. Proszę natomiast nie wypisywać błędów związanych z brakiem C w zasilaniu, podciągnięciem resetu do Vcc itp. Chodzi mi o samą ideę i realizację projektu.
Mam zamiar zbudować układ, który będzie zliczał punkty graczom darta. Punkty będą zapisywane na wyświetlacze za pośrednictwem kodu RC5 (z pilota) (w późniejszym czasie pilot zostanie zastąpiony specjalnym panelem-pilotem z układem guzików identycznym jak dla tarczy w darta - ale nie o tym teraz).
A więc 4 wyświetlacze będą przeznaczone dla graczy, piąty posłuży za wyświetlacz, na którym będą widoczne dopisywane obecnie punkty.
Oto schemat:
Przy każdym wyświetlaczu gracza znajduje się dioda sygnalizująca, który gracz obecnie rzuca. Dioda jest podłączona do któregoś z wyprowadzeń dekodera BCD CD4543.
Przełączanie cyfr odbywa się przy pomocy licznika 4017.
Odbiornik IR natomiast został podłączony do INT0.
Przebiegi logiczne dla układów wyglądac będą następująco:
- Na szyny danych zostaje podany kod BCD dla cyfr.
- Zbocze narastające na lini sterującej spowoduje przełączenie cyfry przez licznik 4017.
- Stan wysoki lini sterującej pozwala na przyjęcie danych przez koder - w rezultacie wyświetlona zostanie cyfra.
- Zbocze opadające spowoduje zatrzaśnięcie danych BCD w koderze 4543.
- Dane BCD mogą zostać już wyzerowane - cyfra nadal widoczna
- itd.
Zdecydowalem się na użycie tych CMOSów, gdyż mam ich sporo na stanie, a ICM72XX kosztuje se troszkę
Mam jeszcze wątpliwości o współdziałanie odbiornika podczerwieni i multipleksowania wyświetlacza. Cyfry mam zamiar przełączać z częstotliwością 30Hz co daje nam około 8,5ms czasu wyświetlania na każdą cyfrę + diodę. Natomiast sekwencja RC5 trwa około 25ms co 100ms.
Jeżeli zostanie odebrany kod RC5, program zawiesi działanie (wyświetlanie cyfr) w celu obsługi IR, na czas ich odbioru. Czy ten zanik na czas 25ms nie będzie zbyt widoczny w przypadku, gdy guzik w pilocie będzie nacisnięty dłużej niż na jedną sekwencję RC5?
Domyślam się, że jedna sekwencja nie stworzy żadnego problemu, ale czy kilkanaście na raz już może?
Proszę o uwagi. Z góry thx.
P.S. Przepraszam za brzydkie i mało czytelne pismo - 26 lat, a piszę jak dziecko
- a starałem się. Jakby coś było niejasne, nieczytelne, to proszę pisać.
Bardzo proszę o sprawdzenie, pod względem koncepcji, poprawności układu. Proszę natomiast nie wypisywać błędów związanych z brakiem C w zasilaniu, podciągnięciem resetu do Vcc itp. Chodzi mi o samą ideę i realizację projektu.
Mam zamiar zbudować układ, który będzie zliczał punkty graczom darta. Punkty będą zapisywane na wyświetlacze za pośrednictwem kodu RC5 (z pilota) (w późniejszym czasie pilot zostanie zastąpiony specjalnym panelem-pilotem z układem guzików identycznym jak dla tarczy w darta - ale nie o tym teraz).
A więc 4 wyświetlacze będą przeznaczone dla graczy, piąty posłuży za wyświetlacz, na którym będą widoczne dopisywane obecnie punkty.
Oto schemat:
Przy każdym wyświetlaczu gracza znajduje się dioda sygnalizująca, który gracz obecnie rzuca. Dioda jest podłączona do któregoś z wyprowadzeń dekodera BCD CD4543.
Przełączanie cyfr odbywa się przy pomocy licznika 4017.
Odbiornik IR natomiast został podłączony do INT0.
Przebiegi logiczne dla układów wyglądac będą następująco:
- Na szyny danych zostaje podany kod BCD dla cyfr.
- Zbocze narastające na lini sterującej spowoduje przełączenie cyfry przez licznik 4017.
- Stan wysoki lini sterującej pozwala na przyjęcie danych przez koder - w rezultacie wyświetlona zostanie cyfra.
- Zbocze opadające spowoduje zatrzaśnięcie danych BCD w koderze 4543.
- Dane BCD mogą zostać już wyzerowane - cyfra nadal widoczna
- itd.
Zdecydowalem się na użycie tych CMOSów, gdyż mam ich sporo na stanie, a ICM72XX kosztuje se troszkę
Mam jeszcze wątpliwości o współdziałanie odbiornika podczerwieni i multipleksowania wyświetlacza. Cyfry mam zamiar przełączać z częstotliwością 30Hz co daje nam około 8,5ms czasu wyświetlania na każdą cyfrę + diodę. Natomiast sekwencja RC5 trwa około 25ms co 100ms.
Jeżeli zostanie odebrany kod RC5, program zawiesi działanie (wyświetlanie cyfr) w celu obsługi IR, na czas ich odbioru. Czy ten zanik na czas 25ms nie będzie zbyt widoczny w przypadku, gdy guzik w pilocie będzie nacisnięty dłużej niż na jedną sekwencję RC5?
Domyślam się, że jedna sekwencja nie stworzy żadnego problemu, ale czy kilkanaście na raz już może?
Proszę o uwagi. Z góry thx.
P.S. Przepraszam za brzydkie i mało czytelne pismo - 26 lat, a piszę jak dziecko