hallo,
nutze folgende DLL unter c++Bulider 6 für die LPT "inpout32.dll"
anzusteuern.
//
Hier ein Demo.
Memo2->Clear();
// Write the data register
i=PPORT_BASE;
x=0x75;
// Write the data register
oup32(i,x);
sprintf(buffer, "Port write to 0x%X, datum=0x%2X", i,x);
Memo2->Lines->Add(buffer);
// And read back to verify
x = inp32(i);
sprintf(buffer, "Port read (%04X)= %04X", i,x);
Memo2->Lines->Add(buffer);
// Set all bits high
x=0xFF;
oup32(i,x);
// Now, set bi-directional and read again
oup32(PPORT_BASE+2,0x20); // Activate bi-directional
x = inp32(i);
sprintf(buffer, "Set Input, read (%04X)= %04X", i,x);
Memo2->Lines->Add(buffer);
// Set Output-only again
oup32(PPORT_BASE+2,0x00);
x = inp32(i);
sprintf(buffer, "Reset Ouput, read (%04X)= %04X", i,x);
Memo2->Lines->Add(buffer);
hier wird das Bit 5 für bi-directional aktiviert.
oup32(PPORT_BASE+2,0x20); // Activate bi-directional
x = inp32(i);
habe folgenden Link gefunden.
http://members.inode.at/anton.zechner/az/Parallel.htm#TOOLS
dort wird Bit 5 als Port-Direction gekennzeichnet. Das Signal finde ich
aber nicht am Stecker. Für die externe Hardware benötige ich aber 1 Bit,
welche die Datenrichtung mir signalisiert.
Wer kenn sich hiermit aus.
bis bald dieleena