Interruptions du microprocesseur 8085 : liste complète (5 sources)
L'Intel 8085 (1976) prend en charge **cinq broches d'interruption matérielle**, chacune avec priorité fixe, adresse de vecteur et comportement de masquage. Les comprendre est essentiel pour la conception de systèmes 8085.
Tableau récapitulatif des interruptions
| Interruption | Broche | Type | Masquable ? | Priorité (1=Haute) | Adresse vecteur | Déclencheur |
|---|---|---|---|---|---|---|
| TRAP | Broche 6 | Non-masquable | Non | 1 | 0024H | Front + niveau (front montant, puis haut) |
| RST 7.5 | Broche 7 | Masquable | Oui (SIM, DI/EI) | 2 | 003CH | Front montant (front-déclenché, mémorisé) |
| RST 6.5 | Broche 8 | Masquable | Oui (SIM, DI/EI) | 3 | 0034H | Niveau sensible (haut) |
| RST 5.5 | Broche 9 | Masquable | Oui (SIM, DI/EI) | 4 | 002CH | Niveau sensible (haut) |
| INTR | Broche 10 | Masquable | Oui (DI/EI) | 5 (Basse) | Externe (CALL) | Niveau sensible (haut), nécessite INTA |
Détails comportementaux clés
TRAP (Non-masquable, priorité max)
- Ne peut être désactivé par `DI` ou `SIM`. Seul reset ou `SIM` avec bit MSE efface son verrou.
- Utilisé pour **défaillance alimentation, watchdog, arrêt d'urgence** — événements qui *doivent* être traités.
- Front+niveau : doit passer haut, rester haut jusqu'à acquittement. Évite les parasites.
RST 7.5 (Front-déclenché, mémorisé)
- Front montant met bascule interne → mémorisé même si broche repasse bas.
- Effacé par : exécution ISR `RST 7.5`, `SIM` avec bit reset R7.5, ou reset processeur.
- Idéal pour **clavier, clavier numérique, capteurs one-shot**.
RST 6.5 & RST 5.5 (Niveau sensible)
- Doivent être maintenus haut jusqu'à lecture par ISR. Si tombent tôt, interruption perdue.
- Bons pour **conditions continues** : « tampon plein », « surchauffe », « détection porteuse modem ».
- Masqués individuellement via instruction `SIM` (bits accumulateur).
INTR (Plus basse, vecteur externe)
- Seulement masquable via `DI`/`EI` (global). Pas de masque individuel.
- Quand acquitté, 8085 émet impulsion **`INTA`** → matériel externe (ex. 8259 PIC) place **`CALL` (3 octets)** ou **`RST n`** sur bus de données.
- Permet **sources d'interruption illimitées** via 8259 PIC en cascade.
Interruptions logicielles (instructions RST n)
Séparées des broches matérielles, le 8085 a **8 interruptions logicielles** : `RST 0` à `RST 7` (opcodes C7, CF, D7, DF, E7, EF, F7, FF). Elles se comportent comme `CALL` vers vecteurs fixes (0000H, 0008H... 0038H) mais **ne sont pas masquables** et **non priorisées** — elles s'exécutent immédiatement. Utilisées pour points d'arrêt, appels système, entrée ISR rapide.
Flux activation/désactivation interruptions
EI ; Active toutes masquables (positionne FF INTE)
DI ; Désactive toutes masquables (efface FF INTE)
SIM ; Set Interrupt Mask (utilise Accumulateur)
; Acc bit 3 = masque RST 7.5 (1=masque)
; Acc bit 4 = masque RST 6.5
; Acc bit 5 = masque RST 5.5
; Acc bit 6 = Reset verrou RST 7.5
; Acc bit 7 = Données sortie série (SOD)
RIM ; Read Interrupt Mask (retourne masques + en attente dans Acc)
Conseils pratiques de conception
- Câblez **TRAP** sur détection chute tension (brownout) + circuit maintien supercondensateur.
- Utilisez **RST 7.5** pour boutons façade (anti-rebond).
- Utilisez **RST 6.5 / 5.5** pour UART (8251) Rx/Tx prêt, ou tick timer (8253/8254).
- Utilisez **INTR + 8259 PIC** si >5 sources nécessaires (la plupart vrais systèmes).
- Toujours `EI` en fin d'ISR (ou `RET` dépile PSW avec INTE=1).
En résumé : Cinq interruptions matérielles, priorité fixe, types de déclenchement mixtes. Maîtrisez la danse `SIM`/`RIM` et vous possédez le système d'interruption du 8085.
