Spójrzmy na Intel 8253. Jest to programowalny timer/licznik zawierające trzy niezależne od siebie 16-bitowe liczniki liczące wstecz. Każdy z liczników jest we własne wejścia (Gate i Clock) oraz wyjścia.
Zwróćmy uwagę na wejścia CLK do liczników. Po co one są? Otóż sprawa jest taka, że liczniki te nie umieją liczyć samodzielnie. Potrzebują impulsów zegarowych, które będą odliczać.
tl;dr: W układzie czasowo-licznikowym nie ma kwarcu, podpina się sygnał z zewnętrznego zegara taktującego.
Czas, który będziemy odliczać jest podawany na wejście WR.
Tryb 0 - odliczanie jednorazowe, generuje przerwanie w przypadku zakończenia odliczania. Można pauzować odliczanie ustawiając GATE na stan niski. Widać to ładnie na slajdzie.
Tryb 1 - Generator pojedynczego impulsu. Można ustawić długość trwania impulsu. Przejście GATE ze stanu niskiego na wysoki powoduje rozpoczęcie odliczania od początku, co ładnie widać na slajdzie.
Tryb 2 - Dzielnik częstotliwości. Będzie generował stan niski na wyjściu co zadaną ilość tyknięć zegara. Można pauzować odliczanie stanem niskim na GATE.
Tryb 3 - Generator fali prostokątnej. Czas jest dzielony na dwa, co powoduje tak dziwne na pierwszy rzut oka zachowanie pokazane na slajdzie.
Tryb 4 - Impuls strobujący, start programowy poprzez ustawienie wartości odliczanej. Można pauzować przez GATE.
Tryb 5 - Impuls strobujący, start sprzętowy - tzn startujemy odliczanie, gdy GATE przejdzie ze stanu niskiego na wysoki. Zauważmy na slajdzie, że jeśli potem przejdzie z wysokiego na niski, to nic się nie dzieje, ale ponowne przejście z niskiego na wysoki powoduje rozpoczęcie odliczania od nowa.
Mówię tutaj o slajdach z wykładu 8.