Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 539
  • Last Modified:

LPT Port ?

Hi.

I need to read bits from my printer port.
I use DLPORTIO.dll to write the bits.

Now i need to read the bits that are active.

Eg if i write: 1001110

Then i want to be able to close my prog, and read the current status of the port, and actually get back the: 1001110

If u use the read button in the demo, it gets back the value in hex, and i need to get it back the other way.

Can anyone help?

Thanks
0
Dennis9
Asked:
Dennis9
1 Solution
 
alanwhincupCommented:
If you can get the value back in hex then you can convert the hex value back to its binary form with a function like below:

function HexToBin(Hex : string) : string;
const
  BCD : array [0..15] of string = ('0000', '0001', '0010', '0011', '0100',
    '0101', '0110', '0111', '1000', '1001', '1010', '1011', '1100', '1101',
    '1110', '1111');
var
  I : integer;
begin
  for I := Length(Hex) downto 1 do
    Result := BCD[StrToInt('$' + Hex[I])] + Result;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(HexToBin('4E'));
end;

Cheers,

Alan
0
 
Dennis9Author Commented:
its 8 bit result i want eg: 10101101
0
 
alanwhincupCommented:
I've downloaded and had a quick look at the DLPORTIO.dll and assume you are using the following function to interface between your prog and the driver to read an 8 bit result (or a byte):

function DlPortReadPortUchar(Port : LongInt) : Byte; stdcall;

As this returns a byte then you can convert straight from a byte to its binary form with the function IntToBin() which is implemented in the IdGlobal unit.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
Dennis9Author Commented:
I found another way around, i thought i could write bits, but i need to write hex decimals now its all working

Thanks anyways
0
 
CleanupPingCommented:
Dennis9:
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
EXPERTS:
Post your closing recommendations!  No comment means you don't care.
0
 
Lukasz LachCommented:
Dennis9,
No comment has been added lately (18 days), so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area for this question:

RECOMMENDATION: Accept alanwhincup's answer http:#7139232 and Refund

Please leave any comments here within 7 days.

-- Please DO NOT accept this comment as an answer ! --

Thanks,

anAKiN
EE Cleanup Volunteer
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now