(No difference)

Revision as of 13:18, 27 August 2016

Schematic

Schematic 8051 Interfacing DC Motor.JPG

Code

/* This program demonstrates, control of 2 DC Motors using L293D Driver.
Four switches connected to P1 Drive 2 motors connected to P2.
For more details visit the tutorial Page:http://exploreembedded.com/wiki/*/
#include<reg51.h>  
#define Motors P2
#define Switches P1
#define Forward 0x05
#define Backward 0x0a
#define Left 0x06
#define Right 0x09
 
#define stop 0x00
void main()
{   
unsigned char SwitchInput;   
Switches = 0x0f; //Configure Switches  as Input    
Motors = 0X00;  //Configure both Motors as Output.  
while(1)   
 {	  
  SwitchInput = (0x0f & Switches);//read switch status and mask lower byte.      
  switch(SwitchInput)	 
   {	 
   case 1: Motors = Forward; break;	  
   case 2: Motors = Backward; break;	  
   case 4: Motors = Left; break;	  
   case 8: Motors = Right; break;	  
   default: Motors =stop;	 
   }   
 }
}