Fórum Ler bit mais significativo no pino CTS porta serial #369953

24/04/2009

0

boa tarde pessoal, estou tentando ler o bit mais significativo do pino CTS na porta serial e não estou conseguindo..

acontece o erro de Instrução Privilegiada...

o seguinte código está em uma DLL...


function ReadPortbB(wPort:word):Byte;stdcall;
begin
asm
mov dx, wport
in al,dx
mov result,al
end;
end;

procedure WritePortb(wPort:Word;bValue:Byte);stdcall;
begin
asm
mov dx,wport
mov al,bValue
out dx,al
end;
end;
exports ReadPortbB, WritePortB;


eu não quero ler string, apenas o bit mais significativo...

será q alguém poderia me ajudar??

obrigado..


Wdrocha

Wdrocha

Responder

Posts

24/04/2009

Wdrocha

a porta que quero ler é a porta COM2


Responder

Gostei + 0

24/04/2009

Cleidsonbsilva

Nao sei exatamente o que vc quer fazer, mas conheço bem essa CTS ai, pois tenho um software que usa portas seriais.

Talvez a principio, o problema seja que o windows nao deixe vc acessar diretamente a informação no hardware.

Eu lá li essa informação que vc quer de duas formas, na primeira eu acessava diretamente a porta, na segunda e que achei bem mais prática, uso um component chamado TCOMPORT.

Outro jeito também, é ler o byte inteiro e em seguida ler o 8o bit dele.

Pra qualquer uma das tres formas acima, eu consigo te dar maior auxilio.


Responder

Gostei + 0

24/04/2009

Wdrocha

obrigado pela resposta...


eu já consegui....

fiz usando a API do Windows.....

CreateFile....GetCommModemStatus e funcionou perfeitamente....


obrigado


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar