home

 

 

ISTRUZIONI PER L’USO DELLA PORTA PARALLELA CON PROGRAMMI IN VISUAL BASIC (5.X E SUCCESSIVE VERSIONI)

 

Visual Basic non ha istruzioni dirette di I/O per indirizzare la porta parallela, si deve utilizzare pertanto una libreria dinamica (DDL) scritta per svolgere tale funzione.

Alla libreria da utilizzare č stato assegnato il nome 32IOF.DLL.

Il file di libreria puň essere scaricato come allegato dalla pagina espandi il tuo libro relativa a questo testo.

Questo file di libreria deve essere copiato nella cartella C:\WINDOWS\SYSTEM.

 

a)   Comandi di input ed output

Le funzioni di I/O che implementano i comandi per l’input e output dei dati in Visual Basic sono:

·         per l’input:

dato = Fin(&H379) per la LPT1

dato = Fin(&H279) per la LPT2

(dato č una variabile di tipo byte)

 

·         per l’output:

Call Fout(dato, &H379) per la LPT1

Call Fout(dato, &H279) per la LPT2

attenzione: le funzioni  Fin e Fout  debbono essere scritte cosě come sono riportate, rispettando le maiuscole e le minuscole

 

b)   Utilizzo della libreria .dll

Si ricorda che per l’utilizzazione della libreria DDL deve essere aggiunto al programma scritto in Visual Basic un modulo che contiene la dichiarazione per la chiamata della DLL. Sulla parte (dichiarazioni) (generale) del modulo debbono essere scritte le seguenti dichiarazioni, occupando per ognuna di esse un’intera riga (senza andare a capo):

 

Public Declare Function Fin Lib "32IOF.DLL" (ByVal ind_port As Integer) As Byte

Public Declare Function Fout Lib "32IOF.DLL" (ByVal dato As Byte, ByVal ind_port As Integer) As Byte

 

Rispettare anche in questo caso maiuscole /minuscole per Fin e Fout.

 

c)   Sistemi operativi a 32 bit

Con sistemi operativi a 32 bit (Windows 2000 e successivi), per il colloquio I/O con la porta parallela, si pongono due problemi:

1)       poichč  Visual Basic non ha istruzioni dirette di I/O per indirizzare la porta parallela, si deve utilizzare una libreria dinamica (DDL) scritta per svolgere tale funzione;

2)       i sistemi operativi non dispongono di  driver software specifici per il collegamento con la porta I/O parallela, pertanto č necessario utilizzare uno dei driver reperibili gratuitamente in rete.

Di seguito si  forniscono gli elementi per l’utilizzo di uno di tali driver.

Dalla pagina espandi il tuo libro relativa a questo volume, č possibile scaricare due files:

-         inpout32.dll : č la libreria dinamica che permette di utilizzare la porta parallela in I/O. Dopo averlo scaricato, occorre trasferirlo nella cartella \WINNT\SYSTEM32, del sistema operativo.

-         INPOUTV4.BAS : č il modulo che opera come interfaccia software per sistemi operativi a 32 bit. Dopo averlo scaricato, occorre inserirlo nei progetti in cui si intende effettuare operazioni di I/O.

A questo scopo, dopo aver aperto un progetto, portarsi nella finestra Progetto e premere il tasto destro del mouse; nel menů a discesa, scegliere: Inserisci, attivare la freccia a destra e scegliere Modulo, individuando il percorso nel quale č stato inserito  INPOUTV4.BAS.

 

Di seguito si riporta un esempio di programma VB in cui viene effettuato un Input – Output parallelo utilizzando gli elementi indicati:

 

Const LPTBaseAs Long = &H378       indirizzo di scrittura a 8 bit (0378h per LPT1 e 0278h per LPT2)

Dim Dato As Byte                   byte contenente il dato in lettura o in scrittura

 


Private Sub cmdRead_Click()        Commad Button utilizzato per attivare la lettura

Dato = Inp(LPTBase + 1)            lettura del byte in ingresso verso il registro Dato; si ricordi che l’input all’indirizzo

End Sub                            &H379 coinvolge i bit: b3, b4, b5, b6 e b7 negato

 


Private Sub cmdWrite_Click()       Commad Button utilizzato per attivare la scrittura

Out LPTBase, Dato                  scrittura del byte Dato (caricato da altre parti del programma)  verso il port d’uscita

End Sub