Friday, February 4, 2011

5.2.1 Rotating Single DC Motor [50% duty cycle]

Hello Readers:

I have started this blog to show you Embedded C programming for 8051 family microcontroller using KEIL compiler. The KISS philosophy is used to write this tutorial. What is KISS? Keep It Simple, Stupid!


5. Motor Interface

This section teaches you how to write program for stepper motors and dc motors. In this section no flow chart diagrams are provided, so try to figure out the one from source code.


5.2 Dc Motor
Now we see how to write program for DC motors.
5.2.1 Rotating Single DC Motor [50% duty cycle] 


The DC motor interface application is usually found in moving robotic vehicle systems. This program shows how to rotate a DC motor with 50% duty cycle. In DC motor 50% duty cycle means, ON time and OFF time are equal. 

Start KEIL V4.01 and close projects, if any are open. Now start new project with Device -> Generic->8051 [all variants] for general 8051 family target chip. Add a new text file, name it Pgm_521.C and add it to above created project as a source file. It is time to add code to Pgm_521.C, so type below shown code in it. 
 
Code explanation: Motor is switched ON and OFF with equal time delay.

 
After typing the code, press F7 or click Project->Build Target for building the source code. If there are no typical errors file will build successively and shows zero errors and zero warnings.
Now enter into debug mode by pressing Ctrl+F5 or click Debug->Start/Stop Debug Session menu. Our program is toggling Port 2’s motor pin continuously. So we want to watch the Port 2 pins while running this program for toggling values. To get Port 2 tab click Peripherals->I/O Ports->Port 2 text.

Run the program by pressing F5 or clicking Debug->Run. You can see the toggling values on Port 2 tab continuously in binary form. If you generate HEX file of this program, burn it into your target chip’s memory using suitable uploader and connecting DC motor to Port 2 you can watch DC motor rotation continuously. To stop running the program press red ‘x’ mark icon or click Debug->Stop.

To get back the compile mode press Ctrl+F5 or click Debug->Start/Stop Debug Session menu.   
<End of 5.2.1 Rotating Single DC Motor [50% duty cycle]>
 
...till next post bye-bye & take care.