Porta parallela - Software ASM - Giobe®2000 - Assembler - Assembly - centronics 378 278 input output epp ecp spp

|  | Come Funziona Indirizzi Base Area Comunicaz. Bios Registri Livello Hardware Livello BIOS Livello DOS Tecniche d'Interruzione Connettori Cavi Interfaccia Applicazioni Software Applicazioni Hardware Download INDICE
Porta Parallela

| Applicazioni Software | PROGETTO n° 03 - 6/9 [74 di 166]

Analisi del Problema · Analisi del Codice · Procedure importanti · Schema interfaccia · Descrizione dello schema

Porta Parallela - INPUT di Dati a 16 bit - Uso di un Buffer 3-state non invertente 74LS244

Analisi delle procedure importanti [2 di 3]

| Per ciascuna delle 3 rimanenti quaterne di switch la sequenza di istruzioni necessarie è del tutto identica a quella descritta nelle precedenti 2 fasi; procediamo dunque schematicamente..

|  | Abilitazione e lettura dei rimanenti 12 Switch

| Lettura degli switch sw7÷ sw4 (abilitare solo i 4 buffer '244 corrispondenti [ingressi 11, 13, 15 e 17] >> forzare a 01 gli ingressi B1, A1 del decoder '139 e quindi i pin 1, pin14 della porta parallela >> cioè scrivere 10 [=00000010B, MOV AL,02H] sul Registro d'uscita 037AH/027AH >> piccolo ritardo per l'assestamento >> leggere i bit 7, 6, 5,e 4 del Registro d'ingresso 0379H/0279H):>> aggiustare il bit7 [con l'operazione di XOR di AL con 80H] >> azzerare i 4 bit bassi [con la maschera prodotta dall'istruzione AND] >> compattare le 2 quaterne di bit corrispondenti agli 8 switch meno significativi (sw7÷sw0) e salvarne il valore in BL):

|  | Progetto | NB: se il testo nell'Area ti sembra strano installa il font Giobe.TTF: clicca qui!! |  |  |

MOV AL,02H ;¿ MOV DX,037AH ;³Forza a 10 i bit1,bit0 della porta d'uscita OUT DX,AL ;³Comandi, per pilotare l'uscita Y1 del decoder CALL Delay__ ;Ù MOV DX,0379H ;¿Lettura dei 4 switch medio bassi nel IN AL,DX ;Ùregistro d'ingresso XOR AL,10000000B ;¿ AND AL,0F0H ;³Formatta l'informazione OR AL,BL ;³ MOV BL,AL ;Ù

| Lettura degli switch sw11÷ sw8 (abilitare solo i 4 buffer '244 corrispondenti [ingressi 2, 4, 6 e 8] >> forzare a 10 gli ingressi B1, A1 del decoder '139 e quindi i pin 1, pin14 della porta parallela >> cioè scrivere 01 [=00000001B, MOV AL,01H] sul Registro d'uscita 037AH/027AH >> piccolo ritardo per l'assestamento >> leggere i bit 7, 6, 5,e 4 del Registro d'ingresso 0379H/0279H):>> aggiustare il bit7 [con l'operazione di XOR di AL con 80H] >> spostare in basso i 4 bit alti [con la sequenza delle 4 SHR] >> salvare il valore in BH):

MOV AL,01H ;¿ MOV DX,037AH ;³Forza a 01 i bit1,bit0 della porta d'uscita OUT DX,AL ;³Comandi, per pilotare l'uscita Y2 del decoder CALL Delay__ ;Ù MOV DX,0379H ;¿Lettura dei 4 switch medio alti nel IN AL,DX ;Ùregistro d'ingresso XOR AL,10000000B ;¿ SHR AL,1 ;³ SHR AL,1 ;³Formatta l'informazione SHR AL,1 ;³ SHR AL,1 ;³ MOV BH,AL ;Ù

| Lettura degli switch sw15÷ sw12 (abilitare solo i 4 buffer '244 corrispondenti [ingressi 11, 13, 15 e 17] >> forzare a 11 gli ingressi B1, A1 del decoder '139 e quindi i pin 1, pin14 della porta parallela >> cioè scrivere 00 [=00000000B, MOV AL,00H] sul Registro d'uscita 037AH/027AH >> piccolo ritardo per l'assestamento >> leggere i bit 7, 6, 5,e 4 del Registro d'ingresso 0379H/0279H):>> aggiustare il bit7 [con l'operazione di XOR di AL con 80H] >> azzerare i 4 bit bassi [con la maschera prodotta dall'istruzione AND] >> compattare le 2 quaterne di bit corrispondenti agli 8 switch più significativi (sw15÷sw8) e salvarne il valore in BH):

MOV AL,00H ;¿ MOV DX,037AH ;³Forza a 00 i bit1,bit0 della porta d'uscita OUT DX,AL ;³Comandi, per pilotare l'uscita Y3 del decoder CALL Delay__ ;Ù MOV DX,0379H ;¿Lettura dei 4 switch pi— alti nel IN AL,DX ;Ùregistro d'ingresso XOR AL,10000000B ;¿ AND AL,0F0H ;³Formatta l'informazione OR AL,BH ;³ MOV BH,AL ;Ù

| Porta Parallela |  |  | PROGETTO n° 03 - 6/9 |  |  |  |
74 di 166

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166

Parallela » | Come Funziona.. | Indirizzi Base | Area di Comunicazione Bios | Registri | Cavi Livello Hardware | Livello BIOS | Livello DOS | Tecniche d'Interruzione | Connettori Applicazioni Software | Progettazione | Interfaccia | Download | INDICE

DataSheet| Display LCD Parallela| Stampanti| Tastiera| Timer Seriale| Video| Cursore| RamVideo |

Home

| Pascal| Manuali| Tabelle| Schede Tutorial Assembly| Palestra Assembler

Aggiungi Giobe®2000 ai preferiti

Motore
Ricerca

| Rendi Giobe®2000 pagina di Default

© 2001-2006 - Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati