Hallo,
mein Problem liegt darin, dass ich einen Schrittmotor mit einer bestimmten Geschwindigkeit ansteuern muss. Doch ich bekomme nicht die gewünschte Geschwindigkeit. Der Motor läuft einfach zu langsam!!!
Erklärung zum Programm: In einem bestimmten Intervall wird ein Impuls über den Parallel-Port auf eine Elektronik ausgegeben. Dieses realisiere ich mit dem Timer. (Intervall:=1ms)
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
If a = 0 then
begin
i:=inp32(BasAdr); ///Lpt Port einlesen
i:= i or 1; //Status mit OR verknüpfen
Out32(BasAdr,i); //Impuls setzen
a:= 1;
end
else
begin
i:=inp32(BasAdr); //Lpt Port einlesen
i:= i And 254; //Status mit And Verknüpfen
Out32(BasAdr,i); //Impuls löschen
a:=0;
end;
end;
Mit einem Oszilloskope habe ich die Frequenz des Impulses am Parallport gemessen. Ich komme nur auf 33HZ!! Laut meiner Theorie müssten es 500 Hz sein. Hat jemand ne Idee, woran das liegen kann? Vielleicht an der
DLL???
Gruss Funk