>> Tecnologia elettronica >  >> Audio personale >> Boombox

Timer/intervallo programmabile Intel 8253/8254: modalità e forme d'onda

L'Intel 8253 (e compatibile 8254) è un timer/contatore programmabile a intervalli a 3 canali 16-bit usato in architetture PC/XT/AT e innumerevoli sistemi embedded. Ogni canale opera indipendentemente in una delle sei modalità.

Modalità operative

ModalitàNomeComportamentoUso tipico
0Interrupt on Terminal CountOne-shot: OUT va basso al caricamento, alto a 0; genera IRQSystem tick, interrupt ritardato
1Hardware Retriggerable One-ShotOUT basso per count clock dopo fronte di salita su GATEGenerazione impulsi, debounce
2Rate GeneratorDivide-by-N: OUT impulsa basso 1 clk ogni N conteggiOrologio baud-rate, interrupt periodico
3Square Wave GeneratorOUT commuta ogni N/2 conteggi (50% duty)Tono altoparlante, timer tick
4Software Triggered StrobeOUT alto; va basso 1 clk al terminal countStrobe temporizzato
5Hardware Triggered StrobeCome Modalità 4 ma attivato da fronte di salita su GATETiming evento esterno

Caratteristiche delle forme d'onda

  • Modalità 0: Singolo impulso positivo al TC.
  • Modalità 1: Impulso basso larghezza = count; retriggerabile.
  • Modalità 2: Impulso basso periodico (1 clk largo) ogni N clock.
  • Modalità 3: Onda quadra simmetrica (periodo = N clks).
  • Modalità 4/5: Singolo strobo basso al TC.

(Immagini delle forme d'onda omesse; consultare il datasheet Intel 8253 Figure 9–14 per i diagrammi di timing esatti.)

Sequenza di programmazione

  1. Scrivi Control Word sulla porta 43h: SC1 SC0 RW1 RW0 M2 M1 M0 BCD.
  2. Scrivi LSB poi MSB del count sulla porta del canale (40h/41h/42h).
  3. Il segnale GATE (porta 61h bit 0 per Ch2) abilita il conteggio.

Mappatura PC legacy

  • Ch 0 → IRQ0 (system timer, 18.2 Hz default)
  • Ch 1 → DMA refresh (obsoleto)
  • Ch 2 → Speaker tone (porta 61h bit 1)

I moderni x86 usano HPET/APIC; l'8254 è emulato in chipset/PCH per retrocompatibilità.