LE BOÎTIER 8155 1 TIMER 256 OCTETS DE RAM 3 PORTS PARALLÈLES Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 FIGURE PAGE 93 PORT A (8 LIGNES) 256 OCTETS DE RAM PORT B (8 LIGNES) TIMER 14 BITS PORT C (6 LIGNES) Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 CS 8155 LE 8155 EST CONÇU POUR ÊTRE INTERFACÉ AVEC UN DATA BUS MULTIPLEXÉ. LE SIGNAL ALE PERMET DE DÉMULTIPLEXER LE DATA BUS Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 PCH PCL RAPPEL : AU PREMIER COUP D'HORLOGE T1 DE CHAQUE CYCLE MACHINE (LECTURE OU ÉCRITURE) : - LE 8085 ENVOIE L'ADRESSE 16 BITS DE LA CASE MÉMOIRE OU DU BOÎTIER D'ENTRÉES SORTIES. - ALE EST ACTIVÉ. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 LE 8155 RECOIT LE SIGNAL IO/M : LES PORTS ET LE TIMER SERONT ACCESSIBLES AVEC LES INSTRUCTIONS IN ET OUT. SIGNAL RD POUR LA LECTURE ET SIGNAL WR POUR L'ÉCRITURE Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 L'ENTRÉE RESET EST RELIÉE À LA SORTIE RESET OUT DU 8085. RESET ACTIF => TOUS LES PORTS EN ENTRÉE ET ARRÊT DU TIMER. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 L'ENTRÉE CE EST RELIÉE À UNE SORTIE DU DÉCODEUR D'ADRESSES Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 FIGURE 7-2 (PAGE 95) À CHAQUE FLAN DESCENDANT DE ALE LE 8155 : - ÉCHANTILLONNE SON ENTRÉE CE. - ÉCHANTILLONNE SON ENTRÉE IO/M. - LATCHE L'ADRESSE BASSE AD0-AD7. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 SI SUR UN FLAN DESCENDANT DE ALE L' ENTRÉE CE N'EST PAS ACTIVE LE 8155 SAIT QUE CE CYCLE MACHINE NE LE CONCERNE PAS : IL RECONSIDÉRERA LE PROBLÈME AU PROCHAIN FLAN DESCENDANT DE ALE. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 SI SUR UN FLAN DESCENDANT DE ALE L' ENTRÉE CE EST ACTIVE LE 8155 SAIT QUE CE CYCLE MACHINE LE CONCERNE. AVEC LE SIGNAL IO/M IL SAIT SI LE 8085 VEUT COMMUNIQUER AVEC LA MÉMOIRE OU UN PORT D'ENTRÉE-SORTIE. LA CASE MÉMOIRE (OU LE PORT) A UNE ADRESSE COMPRISE ENTRE 00 ET FF. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : INTERFACE AVEC LE 8085 SUR LA MAQUETTE SDK85 SORTIE 4 DU DÉCODEUR FIGURE III-1 (PAGE TP III-1) L'ENTRÉE CE DU 8155#1 EST RELIÉE À LA SORTIE 4 DU DÉCODEUR D'ADRESSES. CETTE SORTIE EST ACTIVE POUR TOUTES LES ADRESSES 0010 0XXX XXXX XXXX. Mars 2007/Rev. Mai 2007 JF VIENNE
ADRESSES DES 256 OCTETS DE RAM DU BOÎTIER 8155#1 00 0010 0XXX 0000 0000 01 0010 0XXX 0000 0001 02 0010 0XXX 0000 0010 256 OCTETS FE 0010 0XXX 1111 1110 FF 0010 0XXX 1111 1111 LA CASE MÉMOIRE 00 DE CE BOÎTIER A 8 ADRESSES POSSIBLES : 2000H 2100H 2200H 2300H 2400H 2500H 2600H 2700H NATURELLEMENT, ON N'EN RETIENDRA QU'UNE : => LES 256 OCTETS DE LA RAM DU 8155#1 CORRESPONDENT AUX ADRESSES 2000H À 20FFH. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155#2 2 FIGURE III-2 (PAGE TP III-1) SORTIE 5 DU DÉCODEUR FIGURE III-2 (PAGE TP III-1) L'ENTRÉE CE DU 8155#2 EST RELIÉE À LA SORTIE 5 DU DÉCODEUR D'ADRESSES. CETTE SORTIE EST ACTIVE POUR TOUTES LES ADRESSES 0010 1XXX XXXX XXXX. Mars 2007/Rev. Mai 2007 JF VIENNE
ADRESSES DES 256 OCTETS DE RAM DU BOÎTIER 8155#2 00 0010 1XXX 0000 0000 01 0010 1XXX 0000 0001 02 0010 1XXX 0000 0010 256 OCTETS FE 0010 1XXX 1111 1110 FF 0010 1XXX 1111 1111 LA CASE MÉMOIRE 00 DE CE BOÎTIER A 8 ADRESSES POSSIBLES : 2800H 2900H 2A00H 2B00H 2C00H 2D00H 2E00H 2F00H NATURELLEMENT, ON N'EN RETIENDRA QU'UNE : => LES 256 OCTETS DE LA RAM DU 8155#2 CORRESPONDENT AUX ADRESSES 2800H À 28FFH. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : REGISTRES POUR LES ENTRÉES SORTIES FIGURE 7-1 (PAGE 94) LE REGISTRE DE COMMANDE ET LE REGISTRE D'ÉTAT ONT LA MÊME ADRESSE. ÉCRITURE => REGISTRE DE COMMANDE LECTURE => REGISTRE D'ÉTAT UN REGISTRE POUR CHACUN DES 3 PORTS PARALLÈLES : PA, PB ET PC. DEUX REGISTRES POUR LE TIMER 14 BITS : TIMMSB ET TIMLSB. ON N'A DONC BESOIN QUE DE 6 ADRESSES. Mars 2007/Rev. Mai 2007 JF VIENNE
ADRESSES DES REGISTRES POUR LES ENTRÉES SORTIES SUR CHAQUE FLAN DESCENDANT DE ALE LE 8155 LATCHE UNE ADRESSE 8 BITS. POUR LES ENTRÉES SORTIES, IL NE S'INTÉRESSE QU'AUX 3 BITS DE POIDS FAIBLE. Mars 2007/Rev. Mai 2007 JF VIENNE
0010 0XXX 0010 0XXX ADRESSES DES REGISTRES POUR LES ENTRÉES SORTIES APPLICATION À LA MAQUETTE SDK85 POUR LE 8155#1 LES ENTRÉES SORTIES NE SONT ACCESSIBLES QUE PAR LES INSTRUCTIONS IN ET OUT. AU 3ème COUP D'HORLOGE LE 8085 ENVOIE LA MÊME VALEUR POUR LES PARTIES BASSE ET HAUTE DE L'ADRESSE. POUR QUE LE 8155#1 SOIT SÉLECTÉ, CETTE ADRESSE DOIT ÊTRE : 0010 0XXX 0010 0XXX REGISTRE DE COMMANDE ET ÉTAT => 0010 0000 (20H) PORT A => 0010 0001 (21H) PORT B => 0010 0010 (22H) PORT C => 0010 0011 (23H) TIMLSB => 0010 0100 (24H) TIMMSB => 0010 0101 (25H) Mars 2007/Rev. Mai 2007 JF VIENNE
0010 1XXX 0010 1XXX ADRESSES DES REGISTRES POUR LES ENTRÉES SORTIES APPLICATION À LA MAQUETTE SDK85 POUR LE 8155#2 LES ENTRÉES SORTIES NE SONT ACCESSIBLES QUE PAR LES INSTRUCTIONS IN ET OUT. AU 3ème CYCLE MACHINE LE 8085 ENVOIE LA MÊME VALEUR POUR LES PARTIES BASSE ET HAUTE DE L'ADRESSE. POUR QUE LE 8155#2 SOIT SÉLECTÉ, CETTE ADRESSE DOIT ÊTRE : 0010 1XXX 0010 1XXX REGISTRE DE COMMANDE ET ÉTAT => 0010 1000 (28H) PORT A => 0010 1001 (29H) PORT B => 0010 1010 (2AH) PORT C => 0010 1011 (2BH) TIMLSB => 0010 1100 (2CH) TIMMSB => 0010 1101 (2DH) Mars 2007/Rev. Mai 2007 JF VIENNE
ENTRÉES SORTIES : PROGRAMMATION EN ASSEMBLEUR cseg ……. mvi a,00001100b out CNT55 mvi a,55h out PC poll: in PA ani 01 jz poll …… wait: in STAT55 ani 40h jnz wait 8155#2 CNT55 equ 28H STAT55 equ 28H PA equ 29H PB equ 2AH PC equ 2BH TIMLSB equ 2CH TIMMSB equ 2Dh Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : REGISTRE DE COMMANDE - UN BIT POUR LE PORT A (IN OU OUT). - UN BIT POUR LE PORT B (IN OU OUT). - DEUX BITS POUR LE PORT C : 4 ALTERNATIVES - DEUX BITS POUR MASQUER LES DEMANDES D'INTERRUPTION. (À SUIVRE …..) - DEUX BITS POUR LE TIMER : 4 COMMANDES. FIGURE 7-3 (PAGE 95) Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : LE REGISTRE DE COMMANDE LE PORT A EST UN PORT 8 BITS. 2 POSSIBILITÉS : 8 LIGNES EN SORTIE. 8 LIGNES EN ENTRÉE. LE PORT B EST UN PORT 8 BITS. 2 POSSIBILITÉS : 8 LIGNES EN SORTIE. 8 LIGNES EN ENTRÉE. LE PORT C EST UN PORT 6 BITS. 4 POSSIBILITÉS : 6 LIGNES EN SORTIE. 6 LIGNES EN ENTRÉE. ??? Mars 2007/Rev. Mai 2007 JF VIENNE
INTERFACE PARALLÈLE AVEC SIGNAUX DE CONTRÔLE (HANDSHAKE) EXEMPLE D'INTERFACE PARALLÈLE : 8 DIODES LED SUR LE PORTA mvi a,xxh out PA ;Mise à jour de l'état des LED sur le port A AUTRE EXEMPLE D'INTERFACE PARALLÈLE : IMPRIMANTE SUR LE PORT A mvi a,xxh out PA ;Envoi du caractère à imprimer. ATTENTION !!! IL N'EST PAS POSSIBLE D'ENVOYER UN CARACTÈRE À UNE IMPRIMANTE SANS S'ASSURER AU PRÉALABLE QU'ELLE EST PRÊTE À RECEVOIR UN NOUVEAU CARACTÈRE. UNE IMPRIMANTE DÉLIVRE UN SIGNAL BUSY. TANT QUE CE SIGNAL EST ACTIF IL NE FAUT PAS LUI ENVOYER UN CARACTÈRE. Mars 2007/Rev. Mai 2007 JF VIENNE
INTERFACAGE D’UNE IMPRIMANTE PARALLÈLE LES CARACTÈRES À IMPRIMER SONT CODÉS SUR 8 BITS IMPRIMANTE 8 DATA BUSY ACK LORSQUE LE SIGNAL DE SORTIE BUSY EST ACTIF L’IMPRIMANTE FAIT SAVOIR QU’ELLE N’EST PAS PRÊTE À RECEVOIR UN CARACTÈRE. LORSQUE LE SIGNAL D’ENTRÉE ACK EST ACTIF ON FAIT SAVOIR À L’IMPRIMANTE QU’UN NOUVEAU CARACTÈRE LUI A ÉTÉ ENVOYÉ. Mars 2007/Rev. Mai 2007 JF VIENNE
INTERFACAGE D’UNE IMPRIMANTE PARALLÈLE LES CARACTÈRES À IMPRIMER SONT CODÉS SUR 8 BITS IMPRIMANTE 8 DATA BUSY ACK 8 DATA BUSY ACK Mars 2007/Rev. Mai 2007 JF VIENNE
INTERFACAGE D’UNE IMPRIMANTE PARALLÈLE 8155 PA POLLING OUT PB BUSY ACK poll: in PB ani 01 jnz poll ;Attendre BUSY inactif IN ….. out PA ;Envoi nouvelle data PC ack: in PC ani 0feh out PC ;ACK=0 ori 01 out PC ;ACK=1 jmp poll OUT (ALT 2) Mars 2007/Rev. Mai 2007 JF VIENNE
INTERFACAGE D’UNE IMPRIMANTE PARALLÈLE 8155 PA INTERRUPTION OUT UNE LIGNE DU PORT C "SURVEILLE" LE SIGNAL READY. PB BUSY ACK LORSQUE READY DEVIENT INACTIF UNE LIGNE DU PORT C EST ACTIVÉE POUR ÉMETTRE UNE DEMANDE D'INTERRUPTION. IN CETTE DEMANDE D'INTERRUPTION EST MASQUABLE AU NIVEAU DU 8155. IEA PC 1 LORSQUE LE PROGRAMME D'INTERRUPTION ÉCRIT DANS LE PORT A LE SIGNAL ACK EST AUTOMATIQUEMENT GÉNÉRÉ PAR UNE LIGNE DU PORT C. 2 (ALT 3) ENTRÉE INTERRUPTION DU MICROPROCESSEUR Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : 4 ALTERNATIVES POUR LE PORT C ALT 1 : 6 LIGNES EN ENTRÉE. ALT 2 : 6 LIGNES EN SORTIE. ALT 3 : 3 LIGNES "HANDSHAKE" + 3 LIGNES EN SORTIE. ALT 4 : 3 LIGNES "HANDSHAKE" + 3 LIGNES "HANDSHAKE". PAR EXEMPLE : 2 IMPRIMANTES, UNE SUR PA ET UNE SUR PB. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155#2 : UTILISATION DES PORTS EN TP PA +5V 1 2 3 6 INTERRUPTEURS IN 4 5 PORT A EN ENTRÉE PB TM2 TM1 IEB IEA PC2 PC1 PB PA X X 1 1 X +5V PORT B NON UTILISÉ NOP ALT 2 IN mvi a,00001100B out CNT55 PC 1 3 LED 2 OUT PORT C EN SORTIE (ALT 2) Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : STRUCTURE D'UNE LIGNE DE PORT (PA / PB) MODE : BIT DU REGISTRE DE COMMANDE => 0 (IN) 1 (OUT) AU RESET TOUS LES PORTS SONT EN ENTRÉE ( MODE=0). LORSQU'UNE LIGNE EST EN ENTRÉE LA SORTIE DE OUTPUT LATCH EST À 0; Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : LIGNE DE PORT (PA / PB) EN ENTRÉE EN ENTRÉE MODE = 0 Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : LIGNE DE PORT (PA / PB) EN SORTIE EN SORTIE MODE = 1 UN PORT EN SORTIE PEUT ÊTRE LU. LORSQU'ON PROGRAMME EN SORTIE UN PORT QUI PRÉALABLEMENT ÉTAIT EN ENTRÉE TOUTES LES LIGNES DE SORTIE APPARAISSENT AU NIVEAU 0. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : TIMER QU'EST-CE QU'UN TIMER ? TIMER TIMER IN TIMER OUT UN TIMER EST UN DÉCOMPTEUR HARDWARE QUI DÉCOMPTE À CHAQUE FLAN MONTANT (OU DESCENDANT) DU SIGNAL D'ENTRÉE TIMER IN. LE TIMER DU 8155 EST UN TIMER 14 BITS QUI DÉCOMPTE À CHAQUE FLAN MONTANT DE SON SIGNAL D'ENTRÉE TIMER IN. L'ACTIVATION DE L'ENTRÉE RESET DU 8155 ARRÊTE LE TIMER. SA VALEUR N'EST PAS MODIFIÉE. Mars 2007/Rev. Mai 2007 JF VIENNE
UTILISATION D'UN TIMER : EXEMPLE 1 DIVISION DE FRÉQUENCE TIMER TIMER IN TIMER OUT F F/N UTILISATION COURANTE ET TRÈS SIMPLE DU TIMER : ON CHARGE LE TIMER AVEC UNE VALEUR N. LA FRÉQUENCE DU SIGNAL DE SORTIE EST ÉGALE À LA FRÉQUENCE DU SIGNAL D'ENTRÉE DIVISÉE PAR N. EXERCICE 5 DU CHAPITRE III : ON GÉNÈRE UN SIGNAL CARRÉ À 1 KHz À PARTIR D'UN SIGNAL CARRÉ À 3.072 MHz. Mars 2007/Rev. Mai 2007 JF VIENNE
UTILISATION D'UN TIMER : EXEMPLE 2 MESURE D'UN INTERVALLE DE TEMPS TIMER IN L'ENTRÉE TIMER IN EST UN SIGNAL PÉRIODIQUE. ON CHARGE LE TIMER AVEC UNE VALEUR INITIALE N ET ON LE DÉMARRE. ON EXÉCUTE UNE TÂCHE. ON ARRÊTE LE TIMER ET ON LIT SA VALEUR n. LA DIFFÉRENCE N-n PERMET DE CONNAÎTRE LA DURÉE DE LA TÂCHE. EXERCICE 6 DU CHAPITRE III : MESURE DE LA DURÉE D'UNE BOUCLE D'ATTENTE. Mars 2007/Rev. Mai 2007 JF VIENNE
UTILISATION D'UN TIMER : EXEMPLE 3 COMPTEUR D'ÉVÉNEMENTS TIMER TIMER IN EMETTEUR RÉCEPTEUR ON CHARGE LE TIMER AVEC UNE VALEUR INITIALE N. LE TIMER DÉCOMPTE CHAQUE FOIS QU'UNE PIÈCE COUPE LE FAISCEAU LUMINEUX. SI LORSQU'ON LIT LE TIMER SA VALEUR EST n, LA DIFFÉRENCE N-n PERMET D'ACCÉDER AU NOMBRE DE PIÈCES QUI SONT PASSÉES SUR LE TAPIS ROULANT. Mars 2007/Rev. Mai 2007 JF VIENNE
2 BITS DANS LE REGISTRE DE COMMANDE 1 BIT DANS LE REGISTRE D'ÉTAT LE TIMER DU 8155 2 REGISTRES TIMLSB TIMMSB TM2 TM1 IEB IEA PC2 PC1 PB PA 2 BITS DANS LE REGISTRE DE COMMANDE NU TIMER INTE B B BF INTR B INTE A A BF INTR A 1 BIT DANS LE REGISTRE D'ÉTAT Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : LES 2 REGISTRES DU TIMER TIMLSB : LES 8 BITS LSB DU TIMER T7 T6 T5 T4 T3 T2 T1 T0 TIMLSB : LES 6 BITS MSB DU TIMER + 2 BITS DE MODE M2 M1 T13 T12 T11 T10 T9 T8 FIGURE 7-8 (PAGE 98) LES 2 BITS DE MODE AGISSENT UNIQUEMENT SUR LA FORME DU SIGNAL DE SORTIE. IDÉAL POUR L'UTILISATION EN DIVISEUR DE FRÉQUENCE. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : COMMANDE DU TIMER TM2 TM1 IEB IEA PC2 PC1 PB PA 2 BITS DANS LE REGISTRE DE COMMANDE FIGURE 7-3 (PAGE 95) 0 0 NOP – DO NOT AFFECT COUNTER OPERATION 0 1 STOP – NOP IF TIMER HAS NOT STARTED; STOP COUNTING IF THE TIMER IS RUNNING. 1 0 STOP AFTER TC – STOP IMMEDIATELY AFTER PRESENT TC IS REACHED. ( NOP IF TIMER HAS NOT STARTED). 1 1 START – LOAD MODE AND CNT LENGTH AND START IMMEDIATELY AFTER LOADING (IF TIMER IS NOT PRESENTELY RUNNING). IF TIMER IS RUNNING, START THE NEW MODE AND CNT LENGTH IMMEDIATELY AFTER PRESENT TC IS REACHED. Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 : LE BIT "TIMER" DU REGISTRE D'ÉTAT NU TIMER INTE B B BF INTR B INTE A A BF INTR A 1 BIT DANS LE REGISTRE D'ÉTAT FIGURE 7-4 (PAGE 96) TIMER INTERRUPT (THIS BIT IS LATCHED HIGH WHEN TERMINAL COUNT IS REACHED,AND IS RESET TO UPON READING OF THE C/S REGISTER AND BY HARDWARE RESET). ;Attendre la fin de comptage du timer wait: in STAT55 ani 01000000B jz wait Mars 2007/Rev. Mai 2007 JF VIENNE
LES REGISTRES TIMLSB ET TIMMSB : LE TIMER DU BOÎTIER 8155 FIGURE PAGE TP III-7 LES REGISTRES TIMLSB ET TIMMSB : EN FAIT, IL Y A 2 REGISTRES TIMLSB ET 2 REGISTRES TIMMSB. EN EFFET, SELON QUE L'ON EFFECTUE UNE LECTURE OU UNE ÉCRITURE ON N'ATTEINT PAS LE MÊME REGISTRE. Mars 2007/Rev. Mai 2007 JF VIENNE
PREMIER EXEMPLE CONCRET D'UTILISATION DU TIMER DU 8155 DIVISION DE FRÉQUENCE TIMER TIMER IN TIMER OUT F F/N EXERCICE 5 DU CHAPITRE III L'ENTRÉE TIMER IN EST RELIÉE À LA SORTIE CLK OUT DU 8085 (3.072 MHz). PROGRAMMER LE TIMER POUR OBTENIR UN SIGNAL À 1 KHz EN SORTIE DU TIMER. mvi a,00000000B out TIMLSB ;TIMLSB=00 mvi a,01001100B ;TIMMSB=0C0H / MODE 01 out TIMMSB mvi a,11000000B out CNT55 ;Start Timer IL FAUT DIVISER LA FRÉQUENCE DU SIGNAL D'ENTRÉE PAR 3072 ET CHOISIR LE MODE 01 (SIGNAL CARRÉ) OU LE MODE 11 (SIGNAL IMPULSIONNEL). NB : 3072 0C00H 0000 1100 0000 0000 Mars 2007/Rev. Mai 2007 JF VIENNE
PREMIER EXEMPLE CONCRET D'UTILISATION DU TIMER DU 8155 TIMER . N=3072 TIMER IN TIMER OUT F F/N COMMENT CA MARCHE ? C'EST TRÈS SIMPLE : LE TIMER DÉCOMPTE DE 2 EN 2. CHAQUE FOIS QU'IL ATTEINT UNE FIN DE COMPTAGE : IL INVERSE L'ÉTAT DE LA SORTIE TIMER OUT. IL SE RECHARGE AVEC LA VALEUR INITIALE N. 1536 3071 1536 1 MODE 01 MODE 11 Mars 2007/Rev. Mai 2007 JF VIENNE
SECOND EXEMPLE CONCRET D'UTILISATION DU TIMER DU 8155 MESURE D'UN INTERVALLE DE TEMPS TIMER TIMER IN EXERCICE 6 DU CHAPITRE III L'ENTRÉE TIMER IN EST RELIÉE À LA SORTIE CLK OUT DU 8085 (3.072 MHz). MESURER À L'AIDE DU TIMER LA DURÉE EN NOMBRE DE CLK DE LA BOUCLE D'ATTENTE : mvi l,0 loop: dcr l jnz loop LE PRINCIPE EST SIMPLE : AVANT DE RENTRER DANS LA BOUCLE ON CHARGE LE TIMER AVEC LA VALEUR MAXIMUM N=3FFFH ET ON DÉMARRE LE TIMER. À LA SORTIE DE LA BOUCLE ON ARRÊTE IMMÉDIATEMENT LE TIMER ET ON LIT SA VALEUR n. À PARTIR DE LA DIFFÉRENCE N-n ON DOIT POUVOIR DÉTERMINER LA DURÉE DE LA BOUCLE D'ATTENTE. Mars 2007/Rev. Mai 2007 JF VIENNE
SECOND EXEMPLE CONCRET D'UTILISATION DU TIMER DU 8155 MESURE D'UN INTERVALLE DE TEMPS LA RÉPONSE SERAIT ÉVIDENTE ( ΔT = N-n CLK) SI LE TIMER DÉCOMPTAIT DE 1 EN 1. MAIS LE TIMER DÉCOMPTE DE 2 EN 2, ET CE N'EST PAS TOUT COMME LE MONTRE LA FIGURE CI-DESSOUS : CONCLUSION : SI n EST IMPAIR IL FAUT CALCULER (N-n)/2, SOIT N/2 – n/2 Si n EST PAIR IL FAUT CALCULER N/2 + (N-n)/2, SOIT N – n/2. FIGURE PAGE TP III-8 Mars 2007/Rev. Mai 2007 JF VIENNE
SECOND EXEMPLE CONCRET D'UTILISATION DU TIMER DU 8155 MESURE D'UN INTERVALLE DE TEMPS (CADEAU) SUPPOSONS QUE LA VALEUR N EST DANS HL ET LA VALEUR n DANS DE. IL FAUT COMMENCER PAR DÉTERMINER SI n EST PAIR OU IMPAIR ? D'AUTRE PART ON SAIT QUE L'ON DEVRA DANS TOUS LES CAS CALCULER n/2. D E X D'UNE PIERRE DEUX COUPS : EN DÉCALANT LA PAIRE DE REGISTRES DE D'UN CRAN VERS LA DROITE EN INTRODUISANT UN 0 À GAUCHE : - ON CALCULE DE/2 SOIT n/2. - ON DÉTERMINE SI n EST PAIR OU IMPAIR. Mars 2007/Rev. Mai 2007 JF VIENNE
SECOND EXEMPLE CONCRET D'UTILISATION DU TIMER DU 8155 MESURE D'UN INTERVALLE DE TEMPS (CADEAU) ;HL=N et DE=n ora a ;Carry=0 mov a,d rar mov d,a mov a,e mov e,a ;DE=n/2 jnc pair impair: ;Calcul de N/2 mov a,h mov h,a mov a,l rar mov l,a ;HL=N/2 pair: ;Calcul de HL – DE ….. Mars 2007/Rev. Mai 2007 JF VIENNE
IL EST POSSIBLE QU'UNE DE CES QUESTIONS SOIT POSÉE À L'EXAMEN. LE BOÎTIER 8155 VOUS AVEZ MAINTENANT PRATIQUEMENT TOUTES LES INFORMATIONS NÉCESSAIRES POUR RÉSOUDRE LA TOTALITÉ DES EXERCICES DU CHAPITRE III DU POLYCOPIÉ DE TP. VOUS TROUVEREZ DANS LA SECTION "EXERCICES" DU POLYCOPIÉ CINQ QUESTIONS RELATIVES AU 8155. IL EST POSSIBLE QU'UNE DE CES QUESTIONS SOIT POSÉE À L'EXAMEN. C'EST MAINTENANT QUE VOUS DEVRIEZ VOUS INTÉRESSER À CES CINQ QUESTIONS… Mars 2007/Rev. Mai 2007 JF VIENNE
LE BOÎTIER 8155 FIN 256 OCTETS DE RAM 3 PORTS PARALLÈLES 1 TIMER Mars 2007/Rev. Mai 2007 JF VIENNE