Compteurs et temporisations sur microprocesseur 8085 : Guide programmation
L'Intel 8085 inclut deux registres compteur/minuteur 8 bits (T0 et T1) accessibles via broches SOD/SID et interruptions RST 5.5 / RST 6.5.
Registres compteurs
- T0 (RST 5.5) : Compte fronts descendants sur broche SOD (broche 4). Max 255 événements.
- T1 (RST 6.5) : Compte fronts descendants sur broche SID (broche 5). Max 255 événements.
- Activés via instruction
SIM(Set Interrupt Mask).
Générer une temporisation
L'8085 n'ayant pas de timer dédié, les délais sont créés en brûlant cycles CPU :
; Délai 1 seconde @ 3 MHz (1 µs par T-state)
MVI A, 0FFH ; 7 T-states
MOV C, A ; 4
LXI D, 0000H ; 10
LOOP: DCX D ; 6
MOV A, D ; 4
ORA C ; 4
JNZ LOOP ; 10/7
; Total ≈ 3 000 000 T-states = 1 s
Logique organigramme
- Charger compteur boucle externe (DE).
- Décrémenter DE chaque itération interne.
- Quand D=0 et E=0, ORA C met drapeau Z → sortie.
- Calibrer valeur DE pour fréquence cible (utiliser NOPs pour ajustement fin).
Meilleures alternatives
- 8253/8254 PIT : Programmable Interval Timer — délais matériel, libère CPU.
- 8085A-2 (5 MHz) / 8085AH (6 MHz) : Ajuster compteurs boucles proportionnellement.
- Moderne : Utiliser 8051/AVR/ARM avec timers matériel.
