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° 12 - 5/7 [130 di 166]

Analisi del Problema · Analisi del Codice · Procedure importanti · Schema interfaccia

Porta Parallela - OUTPUT di Dati a 32 bit - Interfaccia con 4 memorie D-Type '374

Analisi delle procedure importanti [1 di 2]

| La chiave del progetto è la procedura Out32bit, dedicata alla gestione dell'interfaccia hardware, costituita dalle 4 memorie 74LS374, e descritta nella seguente casella di testo:

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

;ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;³PROCEDURA : Out32bit ³ ;³DESCRIZIONE: Procedura che provvede a fissare sulle 4 memorie 74LS374 il ³ ;³ dato a 32 predisposto nei registri BX,AX (high,low). ³ ;³ In pratica i 4 bytes predisposti sulla porta 0378H (copia ri-³ ;³ spettivamente di AL, AH, BL e BH) vengono smistati in sequenza³ ;³ sulle rispettive memorie (numerate con 0, 1, 2 e 3) ³ ;³ ³ ;³ ÚÄ[037AH/027AH - PORTA d'USCITA dei COMANDI]ÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ;³ ³ ³ * ³ * ³ * ³ * ³Out³Out³Out³Out³ ³ ³ ;³ ³non ÀÄÄÄÁÄÄÄÁÄÄÄÁÄÄÄÁÄÄÄÁÄÄÄÁÄÄÄÁÄÄÄÙ ³ ³ ;³ ³disponib.ÁÄÄÄÁÄÄÄÁÄÄÄÙ ³ ³ ³ ³ ³ ³ ;³ ³pin 17 NegatoÄÄÄnon usatoÙ ³ ³ ³ ³ ³ ;³ ³pin 16 ÄÄÄÄ[enable Decoder]ÄÄÙ ³ ³ ³ ³ ;³ ³pin 14 NegatoÄÄÄÄÄÄÄÄÄÄÄÄÄÄ[InB]ÄÙ À[InA]Äpin 1 Negato³ ³ ;³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Out32bit:PUSH CS ;¿Prepara il puntatore ES:DI = CS:Dato_32 alla POP ES ;³zona destinata a memorizzare il dato binario LEA DI,Dato_32 ;Ùa 32 passato in ingresso in BX,AX CLD ;¿Memorizza in sequenza i 4 bytes, dal meno STOSW ;³significativo (disponibile in AL) al pi— MOV AX,BX ;³significativo (disponibile in BH), con l'aiuto STOSW ;³della potente STOSW (Store String Word) che ;Ùprovvede alle operazioni: ES:[DI]<AX e DI=DI+2 LEA DI,Dato_32 ;¿ MOV CX,4 ;³Ú[opzionale]ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ Out_0: MOV DL,36 ;³³ Provvede alla stampa a video dell'informa- ³ MOV AL,4 ;³³ zione (4 bytes) che sta per essere spedita ³ SUB AL,CL ;³³ al registro DATI della porta parallela ³ ADD AL,AL ;³ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ADD DL,AL ;³ M_CURSOR 13,DL ;³Notare la tecnica per stampare nella corretta MOV AL,ES:[DI] ;³sequenza i 4 bytes, dal meno significativo al CALL Byt2Asc ;³pi— significativo INC DI ;³ LOOP Out_0 ;Ù

| La parte iniziale è un accorgimento pratico per rendere dinamica la fase finale, cioè per poter gestire un loop l'erogazione dei 4 bytes.
| La presenza del dato a 32 bit in 2 registri li rende inutilizzabili e poco praticabile l'elaborazione del loro contenuto; per questo è prevista una variabile locale (Dato_32) della stessa dimensione, molto più versatile dei registri.

| La parte seguente (non strettamente necessaria...) mette a video (in forma esadecimale) il valore dei 32 bit che stanno per essere memorizzati sulle 4 memorie.
| Già in questa fase risulta chiara l'efficienza della scelta fatta, esaltata nella descrizione della parte esecutiva del programma, proposta nella pagina successiva.

| Porta Parallela |  |  | PROGETTO n° 12 - 5/7 |  |  |  |
130 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