Kod: Zaznacz cały
Dana:= TestLPT.DLPortIO.Port[DataPort];
Dana := Dana shl 1; // przesuwamy w lewo o jeden
if Dana=0 then Dana:=$10; // warunek przekroczenia zakresu
TestLPT.DLPortIO.Port[DataPort] := Dana; // wpisujemy nową wartość
TestLPT.Caption := IntToStr(Dana);
Sleep(2000);
Teraz chciałbym aby działało to odwrotnie, czyli przyciski zwierają/rozwierają dwa piny i program sprawdza jaki jest stan. Ma ktoś pomysł jak to zrealizować???
A może łatwiej będzie odczytać stany z płytki ssk-mb2??? ( krańcówka e-stop i home)?
Kod: Zaznacz cały
procedure TTestLPT.Timer2Timer(Sender: TObject);
begin
DataPort:=$378+1;
Dana := TestLPT.DLPortIO.Port[DataPort];
If (( Dana = 255 ) or ( Dana = 63 )) then
begin
TestLPT.Color := clRed;
end
else TestLPT.Color := clBlack;
//działaja 10,11,12,13,15 - przy nich zmienia sie wartość Dana
TestLPT.Caption := IntToStr(Dana);
end;