Interfacing Relay with PIC Microcontroller

A relay is an electromagnetic switch which is used to switch High Voltage/Current using Low power circuits. Relay isolates low power circuits from high power circuits. It is activated by energizing a coil wounded on a soft iron core. For detailed working of relay please visit this page. A relay should not be directly connected to a microcontroller, it needs a driving circuit. A relay should not be connected directly to a microcontroller due to...

ULN2003 High Voltage and High Current Darlington Transistor Array

ULN2003 The ULN2003 is a monolithic IC consists of seven NPN darlington transistor pairs with high voltage and current capability. It is commonly used for applications such as relay drivers, motor, display drivers, led lamp drivers, logic buffers, line drivers, hammer drivers and other high voltage current applications. It consists of common cathode clamp diodes for each NPN darlington pair which makes this driver IC useful for switching inductive loads. Schematic Diagram of each Darlington Pair - ULN2003 The output of...

Line Follower Robot – without using Microcontroller

After a long time I am presenting my new project Line Follower Robot without using Microcontroller. It is a simple circuit with a LM358 op-amp and is able to operate from 9v to 12V. The LM358 contains two op amps which are wired as comparators. Thus when the voltage at the non-inverting terminal (+) is higher than inverting terminal (-) its output will be high and when the voltage at the inverting terminal (-) is higher than non-inverting terminal (+) the output will be low....

DC Motor Speed Control using PWM with PIC Microcontroller

I already posted about Interfacing DC Motor with PIC Microcontroller. In our robotics applications we may have to control the speed of the DC Motor. In this tutorial we will see how to control the speed of a DC Motor using Pulse Width Modulation (PWM). By using PWM we can easily control the average power delivered to a load and by thus we can easily control the speed of the DC...

Generating PWM with PIC Microcontroller using CCP Module

PWM is a technique used to generate analog output signal using digital signals. It is commonly used to control average power delivered to a load, motor speed control, generating analog voltage levels and for generating analog waveforms. CCP Modules are available with a number of PIC Microcontrollers. CCP stands for Capture/Compare/PWM. Using PWM module is far more easier and cost effective than using extra chips for PWM generation.  MikroC Pro for PIC Microcontroller provide built-in library for PWM which makes our...

Expanding IO Ports of PIC Microcontroller using MCP23S17

Usually a microcontroller comes with a limited number of IO ports called General Purpose Input Output (GPIO) ports. But some applications require more IO ports than that available on a microcontroller. In these cases we can use IO Port Expanders to increase the IO capability of a microcontroller. MCP23017 and MCP23S17 are two such 16 bit IO expander with Serial Interface  manufactured by Microchip. MCP23017 uses high speed I2C interface while MCP23S17 used high speed SPI interface. MCP23S17 In this tutorial...

Switch Debouncing

Haven't you all noticed about the fact that sometimes while pressing a remote of a TV once, the channel shifts by 2 levels or more. Some may have even seen when a tuning button of an old FM radio has pressed the channel advances more than the desired. What is the reason behind it?  Have anyone thought about it?  The answer lies within the switches. The problem is 'Switch Bounce'. Switch Bounce Switch bounce or contact bounce or even called as chatter...

>