|
|||||
3.3.2. Turn Stepper Motor Right and Left - Parallel Port A basic example of stepper motor driver is shown in figure bellow. Notice the separate voltages for logic and for the stepper motor. Usually the motor will require a different voltage than the logic portion of the system. Typically logic voltage is +5 Vdc and the stepper motor voltage can range from +5 Vdc up to about +48 Vdc. The driver is also an "open collector" driver, wherein it takes its outputs to GND to activate the motor's windings. Delphi Programming ( Download file ex332.zip ) a. Puts 4 Timers Components, 2 Button and label on Form, as shown in picture bellow. Setting up all timer Timer component for Enabled = false, and Interval = 1000 ( approximataly = 1000 ms delay time ). b.Click on timer1 component to insert with the program as shown bellow procedure TMotor.Button1Click(Sender: TObject); procedure TMotor.Timer1Timer(Sender: TObject); begin timer1.enabled:=false; asm mov dx,$378 mov al,11111110b out dx,al end; timer2.enabled:=true; end; procedure TMotor.Timer2Timer(Sender: TObject); begin timer2.enabled:=false; asm mov dx,$378 mov al,11111110b out dx,al end; timer3.enabled:=true; end; procedure TMotor.Timer3Timer(Sender: TObject); begin timer3.enabled:=false; asm mov dx,$378 mov al,11111110b out dx,al end; timer4.enabled:=true; end; procedure TMotor.Timer4Timer(Sender: TObject); begin timer4.enabled:=false; asm mov dx,$378 mov al,11111110b out dx,al end; timer1.enabled:=true; end; procedure TMotor.Button3Click(Sender: TObject); begin timer1.enabled:=false; timer2.enabled:=false; timer3.enabled:=false; timer4.enabled:=false; timer5.enabled:=false; timer6.enabled:=false; timer7.enabled:=false; timer8.enabled:=false; end; procedure TMotor.Button2Click(Sender: TObject); begin timer1.enabled:=false; timer2.enabled:=false; timer3.enabled:=false; timer4.enabled:=false; timer5.enabled:=true; end; procedure TMotor.Timer5Timer(Sender: TObject); begin timer5.enabled:=false; asm mov dx,$378 mov al,11110111b out dx,al end; timer6.enabled:=true; end; procedure TMotor.Timer6Timer(Sender: TObject); begin timer6.enabled:=false; asm mov dx,$378 mov al,11111011b out dx,al end; timer7.enabled:=true; end; procedure TMotor.Timer7Timer(Sender: TObject); begin timer7.enabled:=false; asm mov dx,$378 mov al,11111101b out dx,al end; timer8.enabled:=true; end; procedure TMotor.Timer8Timer(Sender: TObject);
begin
timer8.enabled:=false;
asm
mov dx,$378
mov al,11111110b
out dx,al
end;
timer5.enabled:=true;
end;
c. To run the program, you can hits F9 or RUN menu, and then you will show a picture as shown bellow, and try to simulate the program hit TURN RIGHT or TURN LEFT button. |
Free Software Lesson 1 Lesson
4
|
||||