Cześc wam .
Staram sie napisac prosty programik ale idzie mi to jak pies z jezem.
Czy mogły ktos zajrzec na kod i napisac co zle robie.
Nie moge sprawdzic czy port czyta wejscia. w procedurze Timer1.
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
nit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Label1: TLabel;
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
portadr:word;
bajt,dane:byte;
implementation
{$R *.dfm}
function czytajlpt(portaddr:word):byte;
var dane:byte;
begin
portadr:=$379;
asm
push dx
mov DX,portadr
in AL,DX
mov dane,AL
pop dx
end;
czytajlpt:=dane;
end;
procedure zapiszlpt;assembler;
asm
mov dx,0378h
mov al,bajt
out dx,al
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
czytajlpt(portadr);
if (portadr and 32)= 32 then // tu cos zle sprawdzam warunek ?!
begin
label1.Caption:='tak';
end
else
label1.Caption:='nie';
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
timer1.Enabled:=false;
label1.Caption:='zatrzymany';
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
timer1.Enabled:=true;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
bajt:=0;
zapiszlpt;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
bajt:=8;
zapiszlpt;
end;
end.
########################################
Za pomoc dziekuję