| | | | Pagina creata il 01/09/2012 [4466 giorni fa] |
|
Applicazioni Software
|
PROGETTO n° 15 - 3/6
[147 di 189]
|
Questo progetto consente di aumentare e/o diminuire la luminosità di una
coppia di Digit a Catodo Comune
FND500, sui quali è
preventivamente fissato il valore "00", erogato dalla
porta d'uscita a 8 bit associata al
Registro d'uscita 0378H/0278H,
corrispondente ai pin 2÷pin
9 del connettore della porta parallela e
garantito da un'interfaccia costituita da una coppia di
decoder con memoria 9368.
L'effetto Blanking
(spegnimento) è reso possibile dalla presenza di una particolare circuiteria interna (basata su
un resistore di pull-up, adatta a realizzare una logica di tipo wired-AND con
ogni uscita open collector) per la quale la linea del
9368 collegata al pin4
può essere
utilizzata, senza produrre danni, sia come uscita (rendendo disponibile il
segnale RBO) sia come
ingresso (consentendo di forzare su di essa il segnale
BI, per spegnere (se posta a
0) il digit collegato al Decoder.
Nel progetto il valore di quest'ultimo è affidato al bit0 del Registro di Controllo
037AH/027AH,
corrispondente ai pin 1 del connettore della porta parallela; è
dunque sufficiente applicare, sul pin4 di entrambi gli integrati, un'onda quadra non simmetrica e
modificare il suo duty cycle al fine di garantire una
sequenza di spegnimenti (imposti da BI attivo, cioè a 0) e accensioni (imposti
da BI disattivo, cioè a 1) sufficientemente veloce.
Come è noto, il duty cycle esprime
(anche in percentuale) il rapporto tra la durata della parte alta e il
periodo del segnale.
|
NB: Con i moderni Sistemi Operativi (Windows NT,
Windows 2000, Windows XP,
ecc.)
non è più concesso l'accesso diretto alle porte di Input/Output
dall'Ambiente Assembly
o dai linguaggi di programmazione (Pascal,
Delphi,
Visual Basic, ...),
come si poteva fare prima con Windows 95/98/ME.
|
Quando si tenta, come fa il nostro progetto, un Input o un Output agli
indirizzi Hardware viene generata una segnalazione d'errore di "istruzione
protetta" o, semplicemente non succede nulla...
Naturalmente un problema di questo tipo non poteva rimanere irrisolto: puoi
accedere al driver che restituisce l'accesso diretto all'Hardware del
computer in ambiente Window2000/NT/XP
cliccando su questo link: