USB:- DC Motor Controller Using PIC18F4550 (keyboard)

Introduction: USB:- DC Motor Controller Using PIC18F4550 (keyboard)

About: Hi my name is Rakesh Mondal , my friends call me ron vist my website for more stuffs like my post here .
  • USB:- DC Motor Controller using PIC18f4550 (keyboard)

Hello friends,

This a small project on controlling D.C motor with USB pic18f4550 interface board with L293D motor Driver.
A small application [C#] is controlling my pic18f4550 USB interface board with my computer, enabling me to control my board with keyboard. The output of the microcontroller is given to the input of a L293D motor driver , hence enabling me to control my DC motor in ( forward / reverse ) that is Clockwise and Counter Clockwise | anti-clock (cw/ccw) direction.

If you really interested in robotics and controlling stuffs then one of the most basic thing is to control your own applications like DC Motors , Stepper Motor , Servo (with pwm) etc etc. So lets do it with kind of absolute beginner level with DC motors.
IF you are really beginner then i suggest watch all the three videos.

The  USB Device project I have already done before here you can download the C# application [ pic18f4550 board tutorial ] from the link.This demo board enables to use Keyboard.  this l293d motor Driver is just a application of the USB Interface board.
The input voltage for the motor is coltrolled with a Linear Voltage Regulator  IC 7805, For 5v input voltage to the motors.

The working of the this project is very simple 

USB + C# [HID]   > pic18f4550 > L293D > DC motor

Schematic for USB Motor Driver

You can find the Schematic for this USB DC motor controller in the pictures here. Its a Single DC motor interface to pic18f4550 however two two interface is possible.

-Schematic as Image File

-Schematic As EAGLE SCH file.



You can find the pin diagram of l293d motor driver with a short google, the chip is kind of self explanatory when you see it. With one single chip you can control two D.C motors to rotate in forward/ reverse direction on your command.

This chip understands only logic 0 and logic 1 signals as input control signal , we are going to generate the logic 0 and 1 with the help of a pic18f4550 microcontroller , the logic 0 and 1 will be fed to the input of the l293d and motor will be connected to the out pins of L293D.

I am just providing the introduction of the L293D here. Hence who already know about l293d can skip this Logic Description But if you are beginner with Understanding with logic description and working then you can read it here for a detailed information and understanding.

Watch the video below

A bit more detailed video for this motor controller,  you can use it the way you want it,  like robotic arms.

A Single L293D motor controller chip enables you to control two motors, [two motors per chip] , in India the price of L293D cost's around 80 rs/- , i dont know about costs in other country :) :).

You have to make my USB Demo interface board first to make this project done, once you are done connect the l293d with power and connect it with pic18f4550 as i have mentioned in the video "Introduction to L293D"

Thats all you need thanks for watching

by Rakesh RON

:) love u all


For more

- DC Motor Driver
- USB DC Motor Driver Interface.

- USB Stepper Motor Driver

COMING UP : 2x16 LCD with PIC18F4550 and PIC18F2550  :)

watch my channel for more

Be the First to Share


    • Tinkercad to Fusion 360 Challenge

      Tinkercad to Fusion 360 Challenge
    • Cardboard Speed Challenge

      Cardboard Speed Challenge
    • Stone Concrete Cement Contest

      Stone Concrete Cement Contest



    9 years ago on Introduction

    thnx man, nice work.:)
    could you upload the schematics too, it would be nice. :)


    hi RON;
    i interface my pc with serial port with bootloder has pic18f2550 to control DC motor direction (H_brige),simulation in protuos work well and rs232 with max232 work too,but problem when i loaded program to board does not work?
    there is no voltage on my outpot
    thanks with regards