Share PDF

Search documents:
  Report this document  
    Download as PDF   
      Share on Facebook


Block Diagram……………………………………………………..4

Circuit Diagram…………………………………………………….5

Architecture of Microcontroller…………………………………....11

Pin Diagram of Microcontroller…………………………………....17

Liquid Crystal Display……………………………………………..34


Power supply block diagram……………………………………….51



Voltage regulator…………………………………………………...57



In an electric power system, it is necessary to improve the power factor in order to reduce the losses and to increase the voltage regulation of the load. It also aims to improve the stability and efficiency of the system. The automatic power factor corrector using capacitive load banks is helpful in providing the power factor correction without manual capacitive banks.

This project provides continuous power factor correction without manual capacitive bank loading. A PFC controller provides power factor correction and peak current limiting for a Switch-mode power converter of any topology (buck, boost or buck-boost).

The current transformers and potential transformers are used to measure the current and voltage. Then it gives signal to the microcontroller. The power factor is monitored by using this current and voltage. If the power factor lags than the desired value (say 0.9), then microcontroller compares the signal and it turns on the capacitor bank. The capacitor banks are used to power the mains to improve the power factor. Everything will be monitored by using a LCD display.

Our project aims to decrease the manpower also helps to decrease the time taken to correct the power factor which tends to increase the efficiency and stability of the system.



In an electric power system, it is necessary to improve the power factor in order to reduce the losses and to increase the voltage regulation of the load. It also aims to improve the stability and efficiency of the system .our project automatic power factor corrector using capacitive load banks is helpful in providing the power factor correction without manual capacitive bank Our project aims to decrease the manpower also helps to decrease the time taken to correct the power factor which tends to increase the efficiency and stability of the system







The current transformers and potential transformers are used to measure the current and voltage. Then it gives signal to the microcontroller. The power factor is monitored by using this current and voltage. If the power factor lags than the desired value (say 0.9), then microcontroller compares the signal and it turns on the capacitor bank. The capacitor banks are used to power the mains to improve the power factor. Everything will be monitored by using a LCD display.




Embedded System is a small computer system that is generally hidden inside equipment [machine, electrical appliances, or electronic gadget] to increase the intelligence of the equipment for better or more efficient functionality. This kind of system always involves both the software and the hardware co-development.

Embedded Systems are often easier understood in terms of Smart devices, intelligent or automated equipments. Embedded Systems do not need a complete operating system, but only the basic functionalities of an operating system. Hence Embedded System can be defined as follows:

It is embedding or inserting human intelligence by means of software into a Microcontroller chip and designing hardware for the purpose.

It is a combination of software and hardware with automatic working without user interface.

It performs specific functions in host systems like satellites, remote controllers, televisions, robotics, ATMs, pagers, laser printers, missile launch systems, etc.

It is a closed loop system i.e., change in the input will not affect the output.



An embedded system is a combination of computer hardware, software and additional mechanical parts, designed to perform a specific function .An embedded system is designed to do a specific task within a given time frame, repeatedly, without human interaction. Embedded system do not need a complete operating system, but only the basic functionalities of an operating system in a real-time environment, that is, a real time operating system. (RTOS). Frequently, embedded system does not have a user interface.

Application Area of embedded system include aerospace/defense systems, telecommunication equipments and switches, mobile computing, broadcast, automotives, industrial process control and monitoring, medical electronics, consumer electronics, etc. Main hardware components of an embedded system are microprocessor or micro controller, and supporting ICs. The combination of micro-controller and ICs are application specific. Commonly used microprocessors include the following. Motorola 680XX series, IBM PowerPC series processors, MIPS processors, Intel 386 and compatible CPUs, ARM processors, Sun SPARC series, etc. Embedded systems need memory for storing programs and data, and usually programs are stored in ROM or EPROM. Often these systems have a serial port network interface, I/O interface for interacting with sensors and actuators in the case of process controlling systems.


Microprocessors and microcontrollers are widely used in embedded systems products. Microcontroller is a programmable device. A microcontroller has a CPU in addition to a fixed amount of RAM, ROM, I/O ports and a timer embedded all on a single chip. The fixed amount of on-chip ROM, RAM and number of I/O ports in microcontrollers makes them ideal for many applications in which cost and space are critical.

A microcontroller is a complete microprocessor system built on a single IC. Microcontrollers were developed to meet a need for microprocessors to be put into low cost


products. Building a complete microprocessor system on a single chip substantially reduces the cost of building simple products, which use the microprocessor's power to implement their function, because the microprocessor is a natural way to implement many products. This means the idea of using a microprocessor for low cost products comes up often. But the typical 8-bit microprocessor based system, such as one using a Z80 and 8085 is expensive. Both 8085 and Z80 system need some additional circuits to make a microprocessor system. Each part carries costs of money. Even though a product design may require only very simple system, the parts needed to make this system as a low cost product.

To solve this problem microprocessor system is implemented with a single chip microcontroller. This could be called microcomputer, as all the major parts are in the IC. Most frequently they are called microcontroller because they are used to perform control functions.

The microcontroller contains full implementation of a standard MICROPROCESSOR, ROM, RAM, I/0, CLOCK, TIMERS, and also SERIAL PORTS. Microcontroller also called "system on a chip" or "single chip microprocessor system" or "computer on a chip".

A microcontroller is a Computer-On-A-Chip, or, if you prefer, a single-chip computer. Micro suggests that the device is small, and controller tells you that the device' might be used to control objects, processes, or events. Another term to describe a microcontroller is embedded controller, because the microcontroller and its support circuits are often built into, or embedded in, the devices they control.

Today microcontrollers are very commonly used in wide variety of intelligent products. For example most personal computers keyboards and implemented with a microcontroller. It replaces Scanning, Debounce, Matrix Decoding, and Serial transmission circuits. Many low cost products, such as Toys, Electric Drills, Microwave Ovens, VCR and a host of other consumer and industrial products are based on microcontrollers.

The present project is implemented on Keil Uvision. In order to program the device, Proload tool has been used to burn the program onto the microcontroller.



Markets for microcontrollers can run into millions of units per application. At these volumes of the microcontrollers is a commodity items and must be optimized so that cost is at a minimum. .Semiconductor manufacturers have produced a mind-numbing array of designs that would seem to meet almost any need. Some of the chips listed in this section are no longer regular production, most are current, and a few are best termed as "smoke ware": the dreams of an aggressive marketing department.

The Intel 8051 is Harvard architecture, single chip microcontroller (µC) which was developed by Intel in 1980 for use in embedded systems. It was popular in the 1980s and early 1990s, but today it has largely been superseded by a vast range of enhanced devices with 8051- compatible processor cores that are manufactured by more than 20 independent manufacturers including Atmel, Infineon Technologies and Maxim Integrated Products.

8051 is an 8-bit processor, meaning that the CPU can work on only 8 bits of data at a time. Data larger than 8 bits has to be broken into 8-bit pieces to be processed by the CPU. 8051 is available in different memory types such as UV-EPROM, Flash and NV-RAM.

The microcontroller used in this project is AT89C51. Atmel Corporation introduced this 89C51 microcontroller. This microcontroller belongs to 8051 family. This microcontroller had 128 bytes of RAM, 4K bytes of on-chip ROM, two timers, one serial port and four ports (each 8- bits wide) all on a single chip. AT89C51 is Flash type 8051.




8 Bit CPU opt imized for control applications

Extensive Bo olean processing (Single - bit Logic ) Capabilities.

On - Chip Flash Program Memory - 4K Bytes

On - Chip Dat a RAM - 128 bytes

Bi-directional and Individually Addressable 32 I/O Lines

Multiple 16-B it Timer/Counters

Full Duplex U ART – Programmable Serial UART Channel

Multiple Source / Vector / Priority Interrupt Structure

On - Chip Os cillator and Clock circuitry.

On - Chip EEPROM

SPI Serial Bus Interface

Watch Dog Timer





Supply voltage.



Port 0

Port 0 is an 8-bit open drain bidirectional I/O port. As an output port e ach pin can sink eight TTL inputs. When 1s are written to port 0 pins, the pins can be used as high impedance inputs. Port 0 may also be conf igured to be the multiplexed low order address/data bus during accesses to external program and data memory. In this mode P0 has internal pull-ups. Port 0 also


receives the code bytes during Flash programming, and outputs the code bytes during program verification. External pull-ups are required during program verification.

Port 1

Port 1 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 1 output buffers can sink/source four TTL inputs. When 1s are written to Port 1 pins they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 1 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups. Port 1 also receives the low-order address bytes during Flash programming and verification.

Port 2

Port 2 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 2 output buffers can sink/source four TTL inputs. When 1s are written to Port 2 pins they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups. Port 2 emits the high-order address byte during fetches from external program memory and during accesses to external data memory that use 16-bit addresses (MOVX @ DPTR). In this application it uses strong internal pull-ups when emitting 1s. During accesses to external data memory that uses 8-bit addresses (MOVX @ RI), Port 2 emits the contents of the P2 Special Function Register. Port 2 also receives the high- order address bits and some control signals during Flash programming and verification.

Port 3

Port 3 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 3 output buffers can sink/source four TTL inputs. When 1s are written to Port 3 pins they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 3 pins that are externally being pulled low will source current (IIL) because of the pull-ups. Port 3 also serves the functions of various special features of the AT89C51 as listed below:


Port 3 also receives some control signals for Flash programming and verification.


Reset input. A high on this pin for two machine cycles while the oscillator is running resets the device.


Address Latch Enable output pulse for latching the low byte of the address during accesses to external memory. This pin is also the program pulse input (PROG) during Flash programming. In normal operation ALE is emitted at a constant rate of 1/6 the oscillator frequency, and may be used for external timing or clocking purposes. Note, however, that one ALE pulse is skipped during each access to external Data Memory.

If desired, ALE operation can be disabled by setting bit 0 of SFR location 8EH. With the bit set, ALE is active only during a MOVX or MOVC instruction. Otherwise, the pin is weakly pulled high. Setting the ALE-disable bit has no effect if the microcontroller is in external execution mode.


Program Store Enable is the read strobe to external program memory. When the AT89C51 is executing code from external program memory, PSEN is activated twice each machine cycle, except that two PSEN activations are skipped during each access to external data memory.



External Access Enable. EA must be strapped to GND in order to enable the device to fetch code from external program memory locations starting at 0000H up to FFFFH. Note, however, that if lock bit 1 is programmed, EA will be internally latched on reset. EA should be strapped to VCC for internal program executions.

This pin also receives the 12-volt programming enable voltage (VPP) during Flash programming, for parts that require 12-volt VPP.



Input to the inverting oscillator amplifier and input to the internal clock operating circuit.


Output from the inverting oscillator amplifier. It should be noted that when idle is terminated by a hard ware reset, the device normally resumes program execution, from where it left off, up to two machine cycles before the internal reset algorithm takes control. On-chip hardware inhibits access to internal RAM in this event, but access to the port pins is not inhibited. To eliminate the possibility of an unexpected write to a port pin when Idle is terminated by reset, the instruction following the one that invokes Idle should not be one that writes to a port pin or to external memory.





Microcontrollers are designed for use in sophisticated real time applications such as

1.Industrial Control

2.Instrumentation and

3.Intelligent computer peripherals

They are used in industrial applications to control



Discrete and continuous process control

In missile guidance and control

In medical instrumentation




For Scanning a keyboard

Driving an LCD

For Frequency measurements

Period Measurements


To exploit the power savings available in CMOS circuitry, Atmel’s Flash micro controllers have two software-invited reduced power modes.


The CPU is turned off while the RAM and other on - chip peripherals continue operating. Inn this mode current draw is reduced to about 15 percent of the current drawn when the device is fully active.


All on-chip activities are suspended while the on – chip RAM continues to hold its data. In this mode, the device typically draws less than 15 µA and can be as low as 0.6 µA



When power is turned on, the circuit holds the RST pin high for an amount of time that depends on the capacitor value and the rate at which it charges.

To ensure a valid reset, the RST pin must be held high long enough to allow the oscillator to start up plus two machine cycles. On power up, VCC should rise within approximately 10ms.

The oscillator start-up time depends on the oscillator frequency. For a 10 MHz crystal, the start-up time is typically 1ms.With the given circuit, reducing VCC quickly to 0 causes the RST pin voltage to momentarily fall below 0V. How ever, this voltage is internally l limited and will not harm the device.


The memory of AT89S52 micro controller is separated in to two namely

Program memory

Register of AT89S52

Program memory

Program memory is block of memory, which can be used to store a sequence of program code by using special EPROM/PROM. Programmers only can read from it, not write into it. Under normal operating conditions in ROM and EPROM, the special control signals EA 9External Access Enable) is strapped to VCC, then program fetches to address 000to OFFF are directed to the internal ROM and the program fetch until from external memory, when EA is grounded.

In the map of AT89S52 program memory each interrupt is assigned with a fixed location in program memory. For the interrupt cases the CPU jump to that location where it execute the service routine external interrupt 0 for example is assigned to location 0003H. if external interrupt 0 is used, the service routine must begin at location 0003H. If the interrupt is not used then service location is available only in general-purpose program memory.


Data memory

The internal data memory is divided into three blocks namely,

The lower 128 bytes of internal RAM

The upper 128 bytes of internal RAM

Special function register

Internal data memory address is always 1 byte wide, which simplifies an address space only 256bytes. However the addressing modes for internal RAM can infect accommodate 384 bytes. Direct address higher than 7FH access different memory space.

The lowest 32 bytes are grouped into 4 banks of eight-register program instruction callout these registers as R0 through R7. Two bits in the program status word select, and the register bank which is in use. This architecture allows more efficient code space. Since, register instruction are shorter than that of user’s direct addressing.

EPROM Configuration

In Erasable programmable read only memory we can store data up to 8K using an EPROM programmer. The stored data can be erased using a eraser by passing the ultra violet rays through the windows provided in the EPROM the stored data will be lost even If the power goes off. Generally this is used to store the monitor program of any system.

In the design the address line A0 to A12 the micro controller are connected to the address line of the EPROM 2764. the data line D0 to D7 of EPROM is connected to data line of the processors. All the line from the processor is connected through a latch. The RD line o the processor is connected to the DE line of the EPROM. The CS line select the logic circuit. The address range of the EPROM is 2002 to 3FFF.

RAM Configuration

The Ram is also called as Read and Write memory. In this memory one can read the stored data as well as the data can be written to the memory. This is mainly used for temporary storage of data and program. The user can have access to memory.


In design configuration we use 8K Ram 6264, all the address and data line of the micro processor to the Ram through the latch of the de-multiplexing nature of the address and the data line of the Ram8051. Address line A0 to A12 are connected to the 13-ddress lien of the Ram 6264. this 8 data lie D0 to D7 is connected to the data line of the processor through a latch IC74CS373 the same design is followed in EPROM also.

6.8 PIC MICROCONTROLLER UNIT Definition Of Microcontroller:

A single chip that contains the processor (the CPU), non-volatile memory for the program (ROM or flash), volatile memory for input and output (RAM), a clock and an I/O control unit. Also called a "computer on a chip," billions of microcontroller units (MCUs) are embedded each year in a myriad of products from toys to appliances to automobiles. For example, a single vehicle can use 70 or more microcontrollers.

A microcontroller (sometimes abbreviated µC, uC or MCU) is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory in the form of NOR flash or OTP ROM is also often included on chip, as well as a typically small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications

PIC Microcontroller:

PIC microcontrollers in DIP and QFN packages

16-bit 28-pin PDIP PIC24 microcontroller next to a metric ruler

PIC is a family of Harvard architecture microcontrollers made by Microchip Technology, derived from the PIC1640 originally developed by General Instrument's Microelectronics Division. The name PIC initially referred to "Peripheral Interface Controller".

PICs are popular with both industrial developers and hobbyists alike due to their low cost, wide availability, large user base, extensive collection of application notes, availability of


low cost or free development tools, and serial programming (and re-programming with flash memory) capability.

Microchip announced on February 2008 the shipment of its six billionth PIC processor.


This powerful (200 nanosecond instruction execution) yet easy-to-program (only 35 single word instructions) CMOS FLASH-based 8-bit microcontroller packs Microchip's powerful PIC® architecture into an 40- or 44-pin package and is upwards compatible with the PIC16C5X, PIC12CXXX and PIC16C7X devices. The PIC16F877A features 256 bytes of EEPROM data memory, self programming, an ICD, 2 Comparators, 8 channels of 10-bit Analog-to-Digital (A/D) converter, 2 capture/compare/PWM functions, the synchronous serial port can be configured as either 3-wire Serial Peripheral Interface (SPI™) or the 2-wire Inter- Integrated Circuit (I²C™) bus and a Universal Asynchronous Receiver Transmitter (USART). All of these features make it ideal for more advanced level A/D applications in automotive, industrial, appliances and consumer applications.


High-Performance, Enhanced PIC Flash Microcontroller in 40-pin PDIP:

The PIC16F877A CMOS FLASH-based 8-bit microcontroller is upward compatible with the PIC16C5x, PIC12Cxxx and PIC16C7x devices. It features 200 ns instruction execution, 256 bytes of EEPROM data memory, self programming, an ICD, 2 Comparators, 8 channels of 10-bit Analog-to-Digital (A/D) converter, 2 capture/compare/PWM functions, a synchronous serial port that can be configured as either 3-wire SPI or 2-wire I2C bus, a USART, and a Parallel Slave Port.

Features :

Microchip PIC16F877A Microcontroller Features:

High-Performance RISC CPU:

Lead-free; RoHS-compliant

Operating speed: 20 MHz, 200 ns instruction cycle

Operating voltage: 4.0-5.5V


Industrial temperature range (-40° to +85°C)

15 Interrupt Sources

35 single-word instructions

All single-cycle instructions except for program branches (two-cycle)

Special Microcontroller Features

Flash Memory: 14.3 Kbytes (8192 words)

Data SRAM: 368 bytes

Data EEPROM: 256 bytes

Self-reprogrammable under software control

In-Circuit Serial Programming via two pins (5V)

Watchdog Timer with on-chip RC oscillator

Programmable code protection

Power-saving Sleep mode

Selectable oscillator options

In-Circuit Debug via two pins





Processing On PIC:

•Basic Steps:

–Determine current instruction based on program counter

–Load instruction into instruction register

–Decode instruction

–Read register

–Perform ALU operation

–Write back result

•Additional data paths for

–Change in program counter

–Immediate values

–I/O operation


Special Microcontroller Features

-100,000 erase/write cycle Enhanced Flash program memory typical

-Self-reprogrammable under software control

-Single-supply 5V In-Circuit Serial Programming

-Watchdog Timer (WDT) with its own on-chip RC oscillatpr

-Programmable Code Protection

-Power-Saving Sleeping mode

Peripheral Features

-Two 8-bit (TMR0, TMR2)timer/counter with Prescalar

-One 16-bit timer/counter

-Brown-out detection circuitry

-Parallel Slave Port (PSP): 40/44 pin-device only

High-Performance RISC CPU

-Only 35 single-word instructions to learn

-DC-20MHz clock input

-Up to 8K x 14 words of Flash Program Memory

-Pinout Compatible to other 28-pin or 40/44-pin




A load bank is a device which develops an electric load, applies the load to an electrical power source and converts or dissipates the resultant power output of the source.

The purpose of a load bank is to accurately mimic the operational or “real” load that a power source will see in actual application. However, unlike the “real” load, which is likely to be dispersed, unpredictable and random in value, a load bank provides a contained, organized and fully controllable load.

Consequently, a load bank can be further defined as a self-contained, unitized, systematic device that includes load elements with control and accessory devices required for operation. Whereas the “real” load is served by the power source and uses the energy output of the source for some productive purpose, the load bank serves the power source, using its energy output to test, support or protect the power source.



The three most common types of load banks are resistive load banks, reactive load banks, and capacitive load banks.

Resistive load bank

Reactive load bank

Capacitive load bank

Resistive load bank:

A resistive load bank, the most common type, provides equivalent loading of both generor and primemover. That is, for each kilowatt load applied to the generator by the load bank, an equal amount of load is applied to the prime mover by the generator. A resistive load bank, therefore, removes energy from the complete system: load bank from generator—generator from prime mover—prime mover from fuel.

Additional energy is removed as a consequence of resistive load bank operation: waste heat from coolant, exhaust and generator losses and energy consumed by accessory devices. A resistive load bank impacts upon all aspects of a generating system.

The “load” of a resistive load bank is created by the conversion of electrical energy to heat via high-current resistors such as grid resistors. This heat must be dissipated from the load bank, either by air or by water, by forced means or convection.

In a testing system, a resistive load simulates real-life resistive loads, such as incandescent and heating loads as well as the resistive or unity power factor component of magnetic (motors, transformers) loads.


Reactive load bank:

A “reactive” load includes inductive (lagging power factor) and/or capacitive (leading power factor) loads.

Inductive loads, the more common type, consist of iron-core reactive elements which, when used in conjunction with a resistive load bank, create a lagging power factor load. Typically, the inductive load will be rated at a numeric value 75% that of the corresponding resistive load such that when applied together a resultant 0.8 power factor load is provided. That is to say, for each 100 kW of resistive load, 75 KVAR of inductive load is provided.

Other ratios are possible to obtain other power factor ratings. Inductive loads are used to simulate real-life mixed commercial loads consisting of lighting, heating, motors, transformers, etc. With a resistive/inductive load bank, full power system testing is possible, given the impact of reactive currents on generator/voltage regulator performance as well as effects on conductors and switchgear.

Capacitive load bank

A capacitive load bank is similar to a reactive load bank in rating and purpose, except leading power factor loads are created. These loads simulate certain electronic or non-linear loads typical of telecommunications, computer or UPS industries

How Capacitors Work

Induction motors, transformers and many other electrical loads require magnetizing current (kVAR) as well as actual power (kW). By representing these components of apparent power (kVA) as the sides of a right triangle, we can determine the apparent power from the right triangle rule: kVA2 = kW2 + kVAR2.

To reduce the kVA required for any given load, it is must to shorten the line that represents the kVAR. This is precisely what capacitors do.


By supplying kVAR right at the load, the capacitors relieve the utility of the burden of carrying the extra kVAR. This makes the utility transmission/distribution system more efficient,


reducing cost for the utility and their customers. The ratio of actual power to apparent power is usually expressed in percentage and is called power factor.

In the illustration below, addition of the capacitor has improved line power factor and subtracted the non-working current from the lines. This reactive current is

now supplied by the capacitor rather than the utility.

Power Factor Correction using Capacitors

Two methods of improving power factor using capacitors are:

a)Individual motor compensation (static capacitors)

b)Centralised compensation (automatic capacitor banks)

CENTRALISED COMPENSATION (Automatic Power Factor Correction)

In large industrial plants where many motors are generally in use or,when the main reason for power factor is to obtain lower electricity bills, then centralised compensation is far more practical and economical than individual motor compensation.In this instance, large banks or racks of capacitors are installed at them aim incoming distribution boards of the plant and are sub-divided into steps which are automatically switched in or out depending onspecific load requirements by means of an automatic control system ,improving the overall power factor of the network. For calculating capacitor kVAr size requirements for power factor correction. the following information must be known before hand.




LCD stands for Liquid Crystal Display. LCD is finding wide spread use replacing LEDs (seven segment LEDs or other multi segment LEDs) because of the following reasons:

1.The declining prices of LCDs.

2.The ability to display numbers, characters and graphics. This is in contrast to LEDs, which are limited to numbers and a few characters.

3.Incorporation of a refreshing controller into the LCD, thereby relieving the CPU of the task of refreshing the LCD. In contrast, the LED must be refreshed by the CPU to keep displaying the data.

4.Ease of programming for characters and graphics.

Liquid crystal displays (LCD’s) have materials, which combine the properties of both liquids and crystals. Rather than having a melting point, they have a temperature range within which the molecules are almost as mobile as they would be in a liquid, but are grouped together in an ordered form similar to a crystal.

An LCD consists of two glass panels, with the liquid crystal material sand witched in between them. The inner surface of the glass plates are coated with transparent electrodes which define the character, symbols or patterns to be displayed polymeric layers are present in between the electrodes and the liquid crystal, which makes the liquid crystal molecules to maintain a defined orientation angle.


One each polarizes are pasted outside the two glass panels. These polarizes would rotate the light rays passing through them to a definite angle, in a particular direction. When the LCD is in the off state, light rays are rotated by the two polarizes and the liquid crystal, such that the light rays come out of the LCD without any orientation, and hence the LCD appears transparent.

When sufficient voltage is applied to the electrodes, the liquid crystal molecules would be aligned in a specific direction. The light rays passing through the LCD would be rotated by the polarizes, which would result in activating / highlighting the desired characters. The LCD’s are lightweight with only a few millimeters thickness. Since the LCD’s consume less power, they are compatible with low power electronic circuits, and can be powered for long durations.

The LCD does not generate light and so light is needed to read the display. By using backlighting, reading is possible in the dark. The LCD’s have long life and a wide operating temperature range. Changing the display size or the layout size is relatively simple which makes the LCD’s more customers friendly.

The LCDs used exclusively in watches, calculators and measuring instruments are the simple seven-segment displays, having a limited amount of numeric data. The recent advances in technology have resulted in better legibility, more information displaying capability and a wider temperature range.

These have resulted in the LCDs being extensively used in telecommunications and entertainment electronics. The LCDs have even started replacing the cathode ray tubes (CRTs) used for the display of text and graphics, and also in small TV applications.

Crystalonics dot–matrix (alphanumeric) liquid crystal displays are available in TN, STN types, with or without backlight. The use of C-MOS LCD controller and driver ICs result in low


power consumption. These modules can be interfaced with a 4-bit or 8-bit microprocessor /Micro controller.

These components are “specialized” for being used with the microcontrollers, which means that they cannot be activated by standard IC circuits. They are used for writing different messages on a miniature LCD.

Fig 4.4 LCD Display

A model described here is for its low price and great possibilities most frequently used in practice. It is based on the HD44780 microcontroller (Hitachi) and can display messages in two lines with 16 characters each. It displays all the alphabets, Greek letters, punctuation marks, mathematical symbols etc. In addition, it is possible to display symbols that user makes up on its own. Automatic shifting message on display (shift left and right), appearance of the pointer, backlight etc. are considered as useful characteristics.



There are pins along one side of the small printed board used for connection to the microcontroller. There are total of 14 pins marked with numbers (16 in case the background light is built in). Their function is described in the table below:


LCD screen:

LCD screen consists of two lines with 16 characters each. Each character consists of 5x7 dot matrix. Contrast on display depends on the power supply voltage and whether messages are displayed in one or two lines. For that reason, variable voltage 0-Vdd is applied on pin marked as Vee. Trimmer potentiometer is usually used for that purpose. Some versions of displays have built in backlight (blue or green diodes). When used during operating, a resistor for current limitation should be used (like with any LE diode).

Fig 4.5 LCD display panel


All data transferred to LCD through outputs D0-D7 will be interpreted as commands or as data, which depends on logic state on pin RS:

RS = 1 - Bits D0 - D7 are addresses of characters that should be displayed. Built in processor addresses built in “map of characters” and displays corresponding symbols. Displaying position is determined by DDRAM address. This address is either previously defined or the address of previously transferred character is automatically incremented.


RS = 0 - Bits D0 - D7 are commands which determine display mode. List of commands for lcd:





























































































































Clear display

Cursor home

Entry mode set

Display on/off control Cursor/Display Shift Function set

Set CGRAM address Set DDRAM address Read “BUSY” flag (BF)

Write to CGRAM or DDRAM

Read from CGRAM or







































































CGRAM address







DDRAM address







DDRAM address





D7 D6 D5 D4 D3

D2 D1 D0




D7 D6 D5 D4 D3

D2 D1 D0



Increment (by 1)

R/L 1 = Shift right

0 = Decrement (by 1)

0 = Shift left

S 1 = Display shift on

DL 1 = 8-bit interface


= Display shift off

0 = 4-bit interface

D 1 = Display on

N 1 = Display in two lines


= Display off

0 = Display in one line

U 1 = Cursor on

F 1 = Character format 5x10 dots


= Cursor off

0 = Character format 5x7 dots

B 1 = Cursor blink on

D/C 1 = Display shift


= Cursor blink off

0 = Cursor shift

LCD Connection:

Depending on how many lines are used for connection to the microcontroller, there are 8- bit and 4-bit LCD modes. The appropriate mode is determined at the beginning of the process in a phase called “initialization”. In the first case, the data are transferred through outputs D0-D7 as it has been already explained. In case of 4-bit LED mode, for the sake of saving valuable I/O pins of the microcontroller, there are only 4 higher bits (D4-D7) used for communication, while other may be left unconnected.

Consequently, each data is sent to LCD in two steps: four higher bits are sent first (that normally would be sent through lines D4-D7), four lower bits are sent afterwards. With the help of initialization, LCD will correctly connect and interpret each data received. Besides, with regards to the fact that data are rarely read from LCD (data mainly are transferred from microcontroller to LCD) one more I/O pin may be saved by simple connecting R/W pin to the Ground. Such saving has its price. Even though message displaying will be normally performed, it will not be possible to read from busy flag since it is not possible to read from display.



Once the power supply is turned on, LCD is automatically cleared. This process lasts for approximately 15mS. After that, display is ready to operate. The mode of operating is set by default. This means that:

1.Display is cleared


DL = 1 Communication through 8-bit interface N = 0 Messages are displayed in one line

F = 0 Character font 5 x 8 dots

3.Display/Cursor on/off D = 0 Display off

U = 0 Cursor off

B = 0 Cursor blink off

4.Character entry

ID = 1 Addresses on display are automatically incremented by 1

S = 0 Display shift off

Automatic reset is mainly performed without any problems. Mainly but not always! If for any reason power supply voltage does not reach full value in the course of 10mS, display will start perform completely unpredictably? If voltage supply unit can not meet this condition or if it is needed to provide completely safe operating, the process of initialization by which a new reset enabling display to operate normally must be applied.Algorithm according to the initialization is being performed depends on whether connection to the microcontroller is through 4- or 8-bit interface. All left over to be done after that is to give basic commands and of course- to display messages.





To have a clear view of the characters on the LCD, contrast should be ad justed. To adjust the contrast, the voltage should be varied. For this, a preset is used which can behave like a

variable voltage device. As the voltage of this preset is varied, the contrast of the LCD is varied


Variable resistors used as potentiometers have all three terminals connected.

This arrangement is normally used to vary voltage, for example to set the switching point of a circuit with a sensor, or control the volume (loudness) in an amplifier circuit. If the terminals at the ends of the track are connected across the power supply, then t he wiper terminal will provide a voltage which can be varied from zero up to the maximum of the supply.



These are miniature vers ions of the standard variable resistor. They are designed to be mounted directly onto the circuit board and adjusted only when the circuit is built. For example to set the frequency of an alarm tone or the sensitivity of a light-sensitive circuit. A small screwdriver or similar tool is required to adjust presets.

Presets are much cheaper than standard variable resistors so they are so metimes used in projects where a standard variablle resistor would normally be used.

Multiturn presets are use d where very precise adjustments must be made. The screw must be turned many times (10+) to move the slider from one end of the track to the other, giving very





A relay is an electrically operated switch. Current flowing through the coil of the relay creates a magnetic field which attracts a lever and changes the switch contacts. The coil current can be on or off so relays have two switch positions and they are double throw (changeover) switches. Relays allow one circuit to switch a second circuit which can be completely separate from the first. For example a low voltage battery circuit can use a relay to switch a 230V AC mains circuit. There is no electrical connection inside the relay between the two circuits; the link is magnetic and mechanical.

The coil of a relay passes a relatively large current, typically 30mA for a 12V relay, but it can be as much as 100mA for relays designed to operate from lower voltages. Most ICs (chips) cannot provide this current and a transistor is usually used to amplify the small IC current to the larger value required for the relay coil. The maximum output current for the popular 555 timer IC is 200mA so these devices can supply relay coils directly without amplification.

Relays are usually SPDT or DPDT but they can have many more sets of switch contacts, for example relays with 4 sets of changeover contacts are readily available. Most relays are designed for PCB mounting but you can solder wires directly to the pins providing you take care to avoid melting the plastic case of the relay. The animated picture shows a working relay with its coil and switch contacts. A lever is present on the left being attracted by magnetism, when the coil is switched on.


This lever moves the switch contacts. There is one set of contacts (SPDT) in the foreground and another behind them, making the relay DPDT.

The relay's switch connections are usually labeled COM, NC and NO:

COM = Common, always connect to this, it is the moving part of the switch.


NC = Normally Closed, COM is connected to this when the relay coil is off.

NO = Normally Open, COM is connected to this when the relay coil is on.

Circuit description:

This circuit is designed to control the load. The load may be motor or any other load. The load is turned ON and OFF through relay. The relay ON and OFF is controlled by the pair of switching transistors (BC 547). The relay is connected in the Q2 transistor collector terminal. A Relay is nothing but electromagnetic switching device which consists of three pins. They are Common, Normally close (NC) and Normally open (NO).

The relay common pin is connected to supply voltage. The normally open (NO) pin connected to load. When high pulse signal is given to base of the Q1 transistors, the transistor is conducting and shorts the collector and emitter terminal and zero signals is given to base of the Q2 transistor. So the relay is turned OFF state.

When low pulse is given to base of transistor Q1 transistor, the transistor is turned OFF. Now 12v is given to base of Q2 transistor so the transistor is conducting and relay is turned ON. Hence the common terminal and NO terminal of relay are shorted. Now load gets the supply voltage through relay.

Voltage Signal from

Transistor Q1

Transistor Q2


Microcontroller or PC































IC regulator






























The ac voltage, typically 220V rms, is connected to a transformer, which steps that ac voltage down to the level of the desired dc output. A diode rectifier then provides a full-wave rectified voltage that is initially filtered by a simple capacitor filter to produce a dc voltage. This resulting dc voltage usually has some ripple or ac voltage variation.

A regulator circuit removes the ripples and also remains the same dc value even if the input dc voltage varies, or the load connected to the output dc voltage changes. This voltage regulation is usually obtained using one of the popular voltage regulator IC units.






A transformer is a static device that transfers electrical energy from one circuit to another without any change in frequency through inductively coupled conductors—the transformer's coils. A varying current in the first or primary winding creates a varying magnetic flux in the transformer's core and thus a varying magnetic field through the secondary winding. This varying magnetic field induces a varying electromotive force (EMF) or "voltage" in the secondary winding. This effect is called mutual induction.

Fig.13 Transformer Model

This is a very useful device, indeed. With it, we can easily multiply or divide voltage and current in AC circuits. Indeed, the transformer has made long-distance transmission of electric power a practical reality, as AC voltage can be “stepped up” and current “stepped down” for reduced wire resistance power losses along power lines connecting generating stations with loads. At either end (both the generator and at the loads), voltage levels are reduced by transformers for safer operation and less expensive equipment. A transformer that increases voltage from primary to secondary (more secondary winding turns than primary winding turns) is called a step-up transformer. Conversely, a transformer designed to do just the opposite is called a step-down transformer.

This is a step-down transformer, as evidenced by the high turn count of the primary winding and the low turn count of the secondary. As a step-down unit, this transformer converts high-voltage, low-current power into low-voltage, high-current power. The larger-gauge wire used in the secondary winding is necessary due to the increase in current. The primary winding, which doesn't have to conduct as much current, may be made of smaller-gauge wire.



A rectifier is an electrical device that converts alternating current (AC), which periodically reverses direction, to direct current (DC), which is in only one direction, a process known as rectification. Rectifiers have many uses including as components of power supplies and as detectors of radio signals.

Half Wave Rectifier:

In half wave rectification, either the positive or negative half of the AC wave is passed, while the other half is blocked. Because only one half of the input waveform reaches the output, it is very inefficient if used for power transfer. Half-wave rectification can be achieved with a single diode in a one-phase supply, or with three diodes in a three-phase supply.

Full Wave Rectifier:

One method to improve on this is to use every half-cycle of the input voltage instead of every other half-cycle. The circuit which allows us to do this is called a Full Wave Rectifier.

Like the half wave circuit, a full wave rectifier circuit produces an output voltage or current which is purely DC or has some specified DC component. Full wave rectifiers have some fundamental advantages over their half wave rectifier counterparts. The average (DC) output voltage is higher than for half wave, the output of the full wave rectifier has much less ripple than that of the half wave rectifier producing a smoother output waveform.

In a Full Wave Rectifier circuit two diodes are now used, one for each half of the cycle. This configuration results in each diode conducting in turn when its anode terminal is positive


with respect to the transformer centre point C producing an output during both half-cycles, twice that for the half wave rectifier so it is 100% efficient as shown below.

The full wave rectifier circuit consists of two power diodes connected to a single load resistance (RL) with each diode taking it in turn to supply current to the load. When point A of the transformer is positive with respect to point B, diode D1 conducts in the for ward direction as indicated by the arrows. When point B is positive (in the negative half of the cy cle) with respect to point A, diode D2 conducts in the forward direction and the current flowing through resistor R is in the same direction for both circuits. As the output voltage across the resisto r R is the phasor sum of the two waveforms combined, this type of full wave rectifier circuit is also known as a "bi-phase" circuit.



When four diodes are connected as shown in figure, the circuit is called as bridge rectifier. The input to the circuit is applied to the diagonally opposite corners of the network, and the output is taken from the rema ining two corners.

Let us assume that the tra nsformer is working properly and there is a positive potential, at point A and a negative potential at point B. the positive potential at point A will forward bias D3 and reverse bias D4.

The negative potential at point B will forward bias D1 and reverse D2. At this time D3 and D1 are forward biased and will allow current flow to pass through them; D4 and D2 are reverse biased and will block current flow.

The path for current fl ow is from point B through D1, up through RL, through D3, through the secondary of the transformer back to point B. this path is indic ated by the solid arrows. Waveforms (1) and (2) can be observed across D1 and D3.

One-half cycle later the polarity across the secondary of the transformer reverse, forward biasing D2 and D4 and reverse biasing D1 and D3. Current flow will now be from point A through D4, up through RL, thro ugh D2, through the secondary of T1, and back to point A. This path is indicated by the broken arrows. Waveforms (3) and (4) can be observe d across D2 and D4. The current flow through R L is always in the same direction. In flowing through RL this current develops a voltage corresponding to that shown waveform (5). Since current flows


through the load (RL) during both half cycles of the applied voltage, this bridge rectifier is a full- wave rectifier.

One advantage of a bridge rectifier over a conventional full-wave rectifier is that with a given transformer the bridge rectifier produces a voltage output that is nearly twice that of the conventional full-wave circuit.

This may be shown by assigning values to some of the components shown in views A and B. assume that the same transformer is used in both circuits. The peak voltage developed between points X and y is 1000 volts in both circuits. In the conventional full-wave circuit shown in view A, the peak voltage from the center tap to either X or Y is 500 volts. Since only one diode can conduct at any instant, the maximum voltage that can be rectified at any instant is 500 volts.

The maximum voltage that appears across the load resistor is nearly-but never exceeds- 500 v0lts, as result of the small voltage drop across the diode. In the bridge rectifier shown in view B, the maximum voltage that can be rectified is the full secondary voltage, which is 1000 volts. Therefore, the peak output voltage across the load resistor is nearly 1000 volts. With both circuits using the same transformer, the bridge rectifier circuit produces a higher output voltage than the conventional full-wave rectifier circuit.


In the previous section that the single phase half-wave rectifier produces an output wave every half cycle and that it was not practical to use this type of circuit to produce a steady DC supply. The full-wave bridge rectifier however, gives us a greater mean DC value with less superimposed ripple while the output waveform is twice that of the frequency of the input supply frequency. We can therefore increase its average DC output level even higher by connecting a suitable smoothing capacitor across the output of the bridge circuit.

The smoothing capacitor converts the full-wave rippled output of the rectifier into a smooth DC output voltage. Generally for DC power supply circuits the smoothing capacitor is an Aluminium Electrolytic type that has a capacitance value of 100uF or more with repeated DC voltage pulses from the rectifier charging up the capacitor to peak voltage.

However, their are two important parameters to consider when choosing a suitable smoothing capacitor and these are its Working Voltage, which must be higher than the no-load output value of the rectifier and its Capacitance Value, which determines the amount of ripple


that will appear superimposed on top of the DC voltage. Too low a value and the capacitor has little effect but if the smoothing capacitor is large enough (parallel capacitors can be used) and the load current is not too large, the output voltage will be almost as smooth as pure DC.


Voltage regulators comprise a class of widely used ICs. Regulator IC units contain the circuitry for reference source, comparator amplifier, control device, and overload protection all in a single IC. IC units provide regulation of either a fixed positive voltage, a fixed negative voltage, or an adjustably set voltage. The regulators can be selected for operation with load currents from hundreds of milli amperes to tens of amperes, corresponding to power ratings from milli watts to tens of watts.

A fixed three-terminal voltage regulator has an unregulated dc input voltage, Vi, applied to one input terminal, a regulated dc output voltage, Vo, from a second terminal, with the third terminal connected to ground.

The series 78XX regulators provide fixed positive regulated voltages from 5 to 24 volts. Similarly, the series 79XX regulators provide fixed negative regulated voltages from 5 to 24 volts. Electronic voltage regulators operate by comparing the actual output voltage to some internal fixed reference voltage. Voltage Regulator (regulator), usually having three legs, converts varying input voltage and produces a constant regulated output voltage. They are available in a variety of outputs.

The most common part numbers start with the numbers 78 or 79 and finish with two digits indicating the output voltage. The number 78 represents positive voltage and 79 negative one. The 78XX series of voltage regulators are designed for positive input. And the 79XX series is designed for negative input.



5V DC Regulator Name: LM7805 or MC7805 -5V DC Regulator Name: LM7905 or MC7905 6V DC Regulator Name: LM7806 or MC7806 -9V DC Regulator Name: LM7909 or MC7909 12V DC Regulator Name: LM7812 or MC7812 -12V DC Regulator Name: LM7912 or MC7912

The LM78XX series typically has the ability to drive current up to 1A. For application requirements up to 150mA, 78LXX can be used. As mentioned above, the component has threelegs: Input leg which can hold up to 36VDC Common leg (GND) and an output leg with the regulator's voltage.




Embedded C

Keil Software publishes one of the most complete development tool suites for 8051 software, which is used throughout industry. For development of C code, their Developer's Kit product includes their C51 compiler, as well as an integrated 8051 simulator for debugging. A demonstration version of this product is available on their website, but it includes several limitations (see). This is the software that will be used for CECS-347.

The C programming language was designed for computers, though, and not embedded systems. It does not support direct access to registers, nor does it allow for the reading and setting of single bits, two very important requirements for 8051 software. In addition, most software developers are accustomed to writing programs that will be executed by an operating system, which provides system calls the program may use to access the hardware. However, much code for the 8051 is written for direct use on the processor, without an operating system. To support this, the Keil compiler has added several extensions to the C language to replace what might have normally been implemented in a system call, such as the connecting of interrupt handlers.

The purpose of this manual is to further explain the limitations of the Keil compiler, the modifications it has made to the C language, and how to account for these in developing software for the 8051 micro controller.

Program code starts at address 0x4000

All C code compiled and linked using the Keil tools will begin at address 0x4000 in code memory. Such code may not be programmed into devices with less than 16Kbytes of Read-Only Memory. Code written in assembly may circumvent this limitation by using the "origin" keyword to set the start to address 0x0000. No such work-around exists for C programs, though. However, the integrated debugger in the evaluation software may still be used for testing code. Once tested, the code may be compiled by the full version of the Keil software, or by another compiler that supports the C extensions used by Keil.


C Modifications

The Keil C compiler has made some modifications to an otherwise ANSI-compliant implementation of the C programming language. These modifications were made solely to facilitate the use of a higher-level language like C for writing programs on micro controllers.

Variable Types

The Keil C compiler supports most C variable types and adds several of its own.

Keil Function Extensions

As in most other C compilers, functions may be declared in one of two fashions: Most modern programmers use the first syntax, as do the examples in this document.

Keil provides two important extensions to the standard function declaration to allow for the creation of interrupt handlers and reentrant functions.


Similar to the case described for interrupts above, it is possible for a single function to be interrupted by itself. For example, in the middle of normal execution of the function, the interrupt occurs, and that interrupt makes a call to the same function. While the interrupt handler will save the registers before entering this function, no protective measures are taken from overwriting the contents of local variables allocated in data memory. When the interrupt is serviced and control is passed back to normal execution, the corrupted data in those variables could ruin the entire program.

The general term for a function that may be called more than once simultaneously is "reentrant." Accordingly, the reentrant extension may be used in a function declaration to force the compiler to maintain a separate data area in memory for each instance of the function. While safe, this does have the potential to use large area of the rather limited data memory.



#define MX_PIC

//Defines for microcontroller #define P16F877A

#define MX_EE #define MX_EE_TYPE2

#define MX_EE_SIZE 256 #define MX_SPI

#define MX_SPI_C #define MX_SPI_SDI 4 #define MX_SPI_SDO 5 #define MX_SPI_SCK 3 #define MX_UART #define MX_UART_C #define MX_UART_TX 6 #define MX_UART_RX 7 #define MX_I2C

#define MX_MI2C #define MX_I2C_C #define MX_I2C_SDA 4 #define MX_I2C_SCL 3 #define MX_PWM #define MX_PWM_CNT 2

#define MX_PWM_TRIS1 trisc #define MX_PWM_1 2 #define MX_PWM_TRIS2 trisc #define MX_PWM_2 1


#define MX_CLK_SPEED 20000000 #ifdef _BOOSTC

#include <system.h> #endif

#ifdef HI_TECH_C #include <pic.h> #endif

//Configuration data #ifdef _BOOSTC

#pragma DATA 0x2007, 0x3f3a #endif

#ifdef HI_TECH_C __CONFIG(0x3f3a); #endif

//Internal functions #include internals.h"


//Macro function declarations

//Variable declarations



char FCV_OUT;


/**** Macro Substitutions ****

portb = D1 Port

trisb = D1 Data Direction portb = D2 Port

trisb = D2 Data Direction portb = D3 Port

trisb = D3 Data Direction portb = D4 Port

trisb = D4 Data Direction portb = RS Port

trisb = RS Data Direction portb = E Port

trisb = E Data Direction 0 = Data 1_Pin

1 = Data 2 Pin

2 = Data 3 Pin

3 = Data 4 Pin

4 = RS Pin

5 = Enable Pin

LCD_132280 = Unique Component Reference Number 2 = Row Count

16 = Column Count


//component connections


#define LCD_132280_PORT0


#define LCD_132280_TRIS0


#define LCD_132280_PORT1


#define LCD_132280_TRIS1


#define LCD_132280_PORT2


#define LCD_132280_TRIS2


#define LCD_132280_PORT3


#define LCD_132280_TRIS3


#define LCD_132280_PORT4


#define LCD_132280_TRIS4


#define LCD_132280_PORT5


#define LCD_132280_TRIS5


#define LCD_132280_BIT0



#define LCD_132280_BIT1



#define LCD_132280_BIT2



#define LCD_132280_BIT3



#define LCD_132280_RS



#define LCD_132280_E



#define LCD_132280_ROWCNT


#define LCD_132280_COLCNT


#ifdef _BOOSTC

#define LCD_132280_DELAY delay_10us(10) #endif

#ifdef _C2C_

#define LCD_132280_DELAY delay_us(100) #endif

#ifdef HI_TECH_C

#define LCD_132280_DELAY __delay_us(120) #endif

#ifndef LCD_132280_DELAY

#define LCD_132280_DELAY delay_us(100) #endif

//LCDDisplay0: //Macro function declarations

void FCD_LCDDisplay0_RawSend(char in, char mask); void FCD_LCDDisplay0_Start();

void FCD_LCDDisplay0_Clear();

void FCD_LCDDisplay0_PrintASCII(char Character); void FCD_LCDDisplay0_Command(char in);

void FCD_LCDDisplay0_Cursor(char x, char y);

void FCD_LCDDisplay0_PrintNumber(short Number);

void FCD_LCDDisplay0_PrintString(char* String, char MSZ_String);

void FCD_LCDDisplay0_ScrollDisplay(char Direction, char Num_Positions); void FCD_LCDDisplay0_ClearLine(char Line);

void FCD_LCDDisplay0_RAM_Write(char nIdx, char d0, char d1, char d2, char d3, char d4, char d5, char d6, char d7);


/**** Macro Substitutions ****

0 = Which ADC Channel

40 = Acquisition time

3 = Conversion Speed

0 = VRef+ Option

500 = VRef Voltage x 0.01V


//ADC0: //Macro function declarations

void FCD_ADC0_SampleADC(); char FCD_ADC0_ReadAsByte(); short FCD_ADC0_ReadAsInt(); float FCD_ADC0_ReadAsVoltage();

void FCD_ADC0_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE);


//LCDDisplay0: //Macro implementations

void FCD_LCDDisplay0_RawSend(char in, char mask)


unsigned char pt;

clear_bit(LCD_132280_PORT0, LCD_132280_BIT0); clear_bit(LCD_132280_PORT1, LCD_132280_BIT1); clear_bit(LCD_132280_PORT2, LCD_132280_BIT2); clear_bit(LCD_132280_PORT3, LCD_132280_BIT3); clear_bit(LCD_132280_PORT4, LCD_132280_RS); clear_bit(LCD_132280_PORT5, LCD_132280_E);

pt = ((in >> 4) & 0x0f); if (pt & 0x01)

set_bit(LCD_132280_PORT0, LCD_132280_BIT0); if (pt & 0x02)

set_bit(LCD_132280_PORT1, LCD_132280_BIT1); if (pt & 0x04)

set_bit(LCD_132280_PORT2, LCD_132280_BIT2); if (pt & 0x08)

set_bit(LCD_132280_PORT3, LCD_132280_BIT3); if (mask)

set_bit(LCD_132280_PORT4, LCD_132280_RS); LCD_132280_DELAY;

set_bit (LCD_132280_PORT5, LCD_132280_E); LCD_132280_DELAY;

clear_bit (LCD_132280_PORT5, LCD_132280_E); pt = (in & 0x0f);

LCD_132280_DELAY; clear_bit(LCD_132280_PORT0, LCD_132280_BIT0); clear_bit(LCD_132280_PORT1, LCD_132280_BIT1); clear_bit(LCD_132280_PORT2, LCD_132280_BIT2); clear_bit(LCD_132280_PORT3, LCD_132280_BIT3); clear_bit(LCD_132280_PORT4, LCD_132280_RS); clear_bit(LCD_132280_PORT5, LCD_132280_E);

if (pt & 0x01)

set_bit(LCD_132280_PORT0, LCD_132280_BIT0); if (pt & 0x02)

set_bit(LCD_132280_PORT1, LCD_132280_BIT1); if (pt & 0x04)

set_bit(LCD_132280_PORT2, LCD_132280_BIT2); if (pt & 0x08)

set_bit(LCD_132280_PORT3, LCD_132280_BIT3); if (mask)

set_bit(LCD_132280_PORT4, LCD_132280_RS); LCD_132280_DELAY;

set_bit (LCD_132280_PORT5, LCD_132280_E); LCD_132280_DELAY;

clear_bit (LCD_132280_PORT5, LCD_132280_E); LCD_132280_DELAY;



void FCD_LCDDisplay0_Start()


clear_bit(LCD_132280_TRIS0, LCD_132280_BIT0); clear_bit(LCD_132280_TRIS1, LCD_132280_BIT1); clear_bit(LCD_132280_TRIS2, LCD_132280_BIT2); clear_bit(LCD_132280_TRIS3, LCD_132280_BIT3); clear_bit(LCD_132280_TRIS4, LCD_132280_RS); clear_bit(LCD_132280_TRIS5, LCD_132280_E);


FCD_LCDDisplay0_RawSend(0x33, 0);


FCD_LCDDisplay0_RawSend(0x33, 0);


FCD_LCDDisplay0_RawSend(0x32, 0);


FCD_LCDDisplay0_RawSend(0x2c, 0);


FCD_LCDDisplay0_RawSend(0x06, 0);


FCD_LCDDisplay0_RawSend(0x0c, 0);


//clear the display FCD_LCDDisplay0_RawSend(0x01, 0); Wdt_Delay_Ms(2); FCD_LCDDisplay0_RawSend(0x02, 0); Wdt_Delay_Ms(2);


void FCD_LCDDisplay0_Clear()


FCD_LCDDisplay0_RawSend(0x01, 0);


FCD_LCDDisplay0_RawSend(0x02, 0);



void FCD_LCDDisplay0_PrintASCII(char Character)


FCD_LCDDisplay0_RawSend(Character, 0x10);



void FCD_LCDDisplay0_Command(char in)


FCD_LCDDisplay0_RawSend(in, 0);



void FCD_LCDDisplay0_Cursor(char x, char y)


#if (LCD_132280_ROWCNT == 1) y=0x80;


#if (LCD_132280_ROWCNT == 2) if (y==0)

FCD_LCDDisplay0_RawSend(d5, 0x10); FCD_LCDDisplay0_RawSend(d6, 0x10); FCD_LCDDisplay0_RawSend(d7, 0x10);

//Clear the display FCD_LCDDisplay0_RawSend(0x01, 0); delay_ms(2); FCD_LCDDisplay0_RawSend(0x02, 0); delay_ms(2);


//ADC0: //Macro implementations

void FCD_ADC0_SampleADC()




//16C72, 16C72A, 16CR72, 16F72, 16C73, 16C73A, 16C73B, 16F73, 16C74, 16C74A, 16C74B, 16F74,

//16C76, 16F76, 16C77, 16F77, 16F818, 16F819, 16F870, 16F871, 16F872, 16F873, 16F873A,

//16F874, 16F874A, 16F876, 16F876A, 16F877, 16F877A,







#define MX_ADC_CONV_SP




//set up ADC conversion char old_tris, cnt;

//find appropriate bit


#if (MX_ADC_CHANNEL == 0)

#define MX_ADC_TRIS_MSK 0x01 #define MX_ADC_TRIS_REG trisa #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x0E;


adcon1 = 0x05;



#if (MX_ADC_CHANNEL == 1)

#define MX_ADC_TRIS_MSK 0x02 #define MX_ADC_TRIS_REG trisa #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x04;


adcon1 = 0x05;



#if (MX_ADC_CHANNEL == 2)

#define MX_ADC_TRIS_MSK 0x04 #define MX_ADC_TRIS_REG trisa #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x02;


adcon1 = 0x03;



#if (MX_ADC_CHANNEL == 3)

#define MX_ADC_TRIS_MSK 0x08 #define MX_ADC_TRIS_REG trisa #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x04;


#pragma error "Target device is currently using AN3 for VREF+"



#if (MX_ADC_CHANNEL == 4)

#define MX_ADC_TRIS_MSK 0x20 #define MX_ADC_TRIS_REG trisa #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x02;


adcon1 = 0x03;



#if (MX_ADC_CHANNEL == 5)

#define MX_ADC_TRIS_MSK 0x01 #define MX_ADC_TRIS_REG trise #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x09;



adcon1 = 0x01;



#if (MX_ADC_CHANNEL == 6)

#define MX_ADC_TRIS_MSK 0x02 #define MX_ADC_TRIS_REG trise #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x00;


adcon1 = 0x01;



#if (MX_ADC_CHANNEL == 7)

#define MX_ADC_TRIS_MSK 0x04 #define MX_ADC_TRIS_REG trise #if (MX_ADC_VREF_OPT == 0)

adcon1 = 0x00;


adcon1 = 0x01;



//sanity check


#pragma error "ADC Type 1 conversion code error - please contact technical



//assign conversion speed

#if (MX_ADC_CONV_SP > 3) st_bit(adcon1, ADCS2);


//store old tris value, and set the i/o pin as an input old_tris = MX_ADC_TRIS_REG;


//turn ADC on

adcon0 = (0x01 | (MX_ADC_CONV_SP << 6)) | (MX_ADC_CHANNEL << 3);

//wait the acquisition time cnt = 0;

while (cnt < MX_ADC_SAMP_TIME) cnt++;

//begin conversion and wait until it has finished adcon0 = adcon0 | 0x04;

while (adcon0 & 0x04);

//restore old tris value, and reset adc registers MX_ADC_TRIS_REG = old_tris;

adcon1 = 0x07;


adcon0 = 0x00;


//Call Component Macro: LCDDisplay(0)::PrintString(" C1+C2+C3") FCD_LCDDisplay0_PrintString(" C1+C2+C3",13);

//Call Component Macro

//Call Component Macro: ADC_VALUE1=ADC(0)::ReadAsByte FCV_ADC_VALUE1 = FCD_ADC0_ReadAsByte();

} else {

//Output //Output: 0 -> D1

trisd = trisd & 0xfd; if (0)

portd = (portd & 0xfd) | 0x02;


portd = portd & 0xfd;

//Output //Output: 0 -> D2

trisd = trisd & 0xfb; if (0)

portd = (portd & 0xfb) | 0x04;


portd = portd & 0xfb;





The KW capacity of the prime movers is better utilized

This increases the kilowatt capacity of the alternators

The efficiency of plant is increased

The regulation of the lines is increased

Reactive power is reduced


It is used in industrial applications such as induction motors , transformers etc

This is also used in air conditioners , fans

It is also applicable in industrial heating furnaces, arc lamps



By observing all aspects of the power factor it is clear that power factor is the most significant part for the utility Company as well as for the consumer. Utility company rid of from the power losses while the consumer free from low power factor penalty charges.

By installing suitably sized power capacitors into the circuit the Power Factor is improved and the value becomes nearer to 0.9 to 0.95 thus minimizing line losses and improving the efficiency of a plan. By using this automatic power factor corrector system the efficiency of the system is highly increased

“Without electricity the world is incomplete” “Save electricity

save the nation”

“Let us build our India as wealthy nation”




[2]."Power Supply Design Principles by “Ben Schramm”.





Embedded C by jerry

Control systems by U.A BAKSHI

Power system analysis by R.D GUPTA


Electrical india

Electronics for you

Electronics for you plus













PCB board


Voltage Regulator


Connecting wires


Programming charges


Ply wood


Flash switches






LCD Display


Microcontroller chip


Capacitor Banks


Driver IC ULN 2804


Miscellaneous charge


Report charge







It is a well-known fact that the scope of for absorbing the ever increasing number of unemployment in government departments is very much restricted on account of various factors. Absorption of unemployment people government service takes place either on account of retirement of the existing staff or due to launching of development programs. The employment so generated covers only a segment of the unemployed. The private sector is also offering very little opportunity to the young unemployed people due to various reasons. In such adverse situation the Indian youth has to wage a bitter fight to solve the problem of unemployment.

The plan document of our country lays emphasis on self-employment to reduce unemployment in the country. We are a developing country and there is a wider scope for the development of self employment to all types of job. Industrial development in a country depends greatly upon the type of human resources the country possesses. A country may be rich in material resources and capital, but if entrepreneurship is lacking, the utilization of resources would not be as expected. The developing economics of resources would not be as expected.


Entrepreneurship prevails environment in a country. Entrepreneurship being an innovator who introduces something new into the economy, a method of protection not yet tested by experience in the branch of manufactured concerned, a product with which the consumes are not familiar, a new source or raw materials, or a new market higher exploited and similar other innovations. An entrepreneur is one who starts an industrial venture or a business of his own. Entrepreneurship would include undertaking manufacturing activities, business or crafts etc., Entrepreneurship is also associated with a risk assuming function.


An entrepreneur is a part of industrial society. He is responsible for not only making his own source of live hood but also for creating avenues of employment for others and making additions to the gross national product. If a larger number of entrepreneurs set up enterprise of their own, there is a great deal of transformation of an area. The industrial entrepreneurs are thus


the agents of charge in removing back wardens and disparities of an area. An entrepreneur has a great social responsibility.

An enterprise consists of not only those who manage it but a host other segments of society, workers, consumers, the state and the surrounding community.

Some of the qualities are inherent but the others are mostly acquired. Broody speaking four qualities are the most important one, e.g. intelligence, motivation, knowledge and opportunity. While the first one is inherent, a continuous process generally gains the knowledge, the qualities of entrepreneurs further be sub-divided as under

Capacity to take risk

Capacity to work hard

Desire for deferred consumption

Capacity to take advantage of an external situation




Sociability and flexibility

Inventive ability and

Knowledge, both informative and technical.


Increase number of industries is expected from the entrepreneurs that they will help to.

Increase production

Earn foreign exchange through exports

Develop the underdeveloped parts of the country.

Develop economy

Small – scale industries facilitate production of consumer goods locally and help reduction of prices. Some of the important measures of assistance now available are briefly noted below:


1.Technical assistance: complete technical, economic and managerial consultancy services are provided to SSO through Small Industries Services Institute (SISI) and Industrial Extension centers.

2.Assistance for obtaining raw materials: small – scale units are helped to obtain controlled indigenous raw materials through state director of industries and imported raw materials through State Trading Corporation of India (STC).

3.Supply of machinery Hire Purchase: The National Small Industries Corporation (NSIC) is giving assistance to small scale units by supplying machinery to them on deferred credit basis.

4.Marketing assistance: SS units are helped to market their products through Trade centers and by participating in government’s Stores Purchase Programme.

5.Assistance to small entrepreneurs: Entrepreneurial Development programmer is conducted by SSI and Small Industries Development Organization (SIDO) to give necessary training to young entrepreneurs. District Industries Centre (DIC) provides under a single – roof all the services and support required by the small and village industries at pre – investment, investment, investment and post investment stages.

6.Financial assistance : SS units are helped by providing various financial assistance like loans, subsides, and hire – purchase scheme through various agencies like State Finance Corporation NSIC, State Directorates of Industries, commercial banks, Industrial Development Bank of India (IDBI) , and National Bank for Agricultural and Rural Development (NABARD) .

7.Special incentives : Special inducements like the following are offered by the government for development of entrepreneurship.

a.Capital subsidy up to 15% in backward areas

b.Income Tax exemption for five years.

c.Exemption from Central excise duty.

d.Deduction of depreciation from net profit.

e.Concessions in Stamp duty.

f.License to import raw material.

Self-employment schemes


The following are the four important government schemes for prompting self- employment.


District Manpower Planning and Employment Generation Council


The Council prepares a list of investment opportunities in the self-


employment in the district. The major objective of the council is to remove the


handicaps and difficult faced by the youth in entering self-employment project.


Employment Exchange


A special Vocational Guidance Unit functioning in every Employment


Exchange with the object of giving guidance and motivation to unemployed persons


to take up self employment ventures. In addition to furnishing information on self-


employment projects, until also helps in obtaining loans from the banks.

iii.The Prime Minister Scheme for providing self-employment to educated Unemployed youth.

The objective of the scheme is to encourage the educated unemployed youth to undertake self-employment ventures in industry, service and business through provision of a package of assistance.

The scheme covers all unemployed youth who are matriculates and above, and in the age group of 18 to 35 years. District Industries Centers (DIC) are assigned the operational responsibility of the scheme.

iv.Self employment scheme for TRYSEM – trained youth

TRYSEM stands for “Training of Rural Youth for Self-Employment”, It is a scheme by which rural youth are trained in semi engineering trades in Industrial Training Institutes and Polytechnics. lThey youth are provided wit5h financial and other assistance from Government I the form of subsidy drawn from Integral Rural Development Program (RDP) and as credit from commercial banks RS.3000 to Rs.10,000.


The Scheme is implemented by a Task Force under the Chairmanship of District Collector and with District Employment Officer as Member Secretary and Project officer (DRDA). DDO and Lead Bank Manager as members.

Product Selection

A prospective entrepreneur should first prepare a shore list of product lines that he wants to establish. Then, he should select the product to be manufactured based upon market survey and demand survey, financial implementations involved, technical know-how available, and his own experience in the line.

Market survey involves the following:

Study similar product available in the market that can be probable Competitors.

Analyze them in regards to their utility, quality and cost.

Check whether it is a seasonal product or needed through out the year.

Find the probable extend of the market.

Find whether the product can be exported.

Explore the possibility of manufacturing in collaboration with a foreign company.

A demand survey is made to determine

Whether survey demand for the product is or inelastic.

The trend of the demand.

The composition and pattern of the potential users.

Site Selection

The important factors to be considered in selecting the site for an industry are given


Nearness to raw material: It will reduce the cost of transportation of raw materials to the factory.

Nearness to market: It will reduce transportation cost of the finished products and also help to catch the share of the market.


Easy availability of labor: If highly skilled workmen are required, it is better to locate the plant near a large town.

Availability of power and fuel: Electrical power and fuel required for the plant should be easily obtainable in the area, Reliability of power supply must be ensured.

Availability of water: Water for drinking and for other purposes should be easily available. If the process requires large quantity of water, then the plant should be located near a major water source.

Land-topography: Cost, probability of floods. Earthquakes, etc are to be considered.

Industrial areas: Notified industrial areas will be advantageous due to the availability of ready infrastructure and other benefits.

Other major factors: Presence of related industries, facilities for expansion, housing facilities, and nearness of public amenities like hospitals and schools, security problems, local and attitude of local people.


Plant layout means the disposition of the various (equipments, material, manpower, etc) and services of the plant within the area of the site selected. Plant layout begins with the design of the factory building and goes up lathe location and movement of a worktable. All the facilities like equipments, raw material, machinery, tools fixtures,

Workers, etc, are given a proper place. In deciding the place for equipment, the supervisors and workers who nave to operate them should be consulted.

There are three types of plant layout:

1.Process Layout (functional layout) in which all machines or process of the same types is grouped together in the same area.

2.Product Layout (line layout) in which equipments regardless of process is arranged as per the sequence of operations in which a given product will be manufactured.


3.Layout by fixed position (static product layout) in which the product is too big (e.g. ship, airplane) or too heavy to be moved from one place to another and is consequently fixed in one place, and men and machines are brought to the product to perform the required operations. Whatever by the type required, certain basic principles must be observed. While preparing the plant layout.

These are:

1.Placement of facilities in a logical and balanced manner.

2.Minimum movements for workers and materials

3.Smooth and continuous flow of operations

4.Optimum space utilization.


i.Private Limited Company

ii.Public Limited Company

Each one has its own advantages and disadvantages. An entrepreneur’s choices of the type of the organization will primary depend upon the nature of the business to be started and his own preferences together with the amount of capital he can contribute.


The prospective entrepreneur in the small – scale sector need not obtain any Industrial Licenses, provided the item of manufacture is not governed by special regulations. However, to facilitate identification, the Directorate of Industries (through District Industries Center - DIC) issues certificates registering a unit as a Small Scale / Ancillary / Tiny Unit.

Registration is done is two stages, Via, provisional and permanent. The issue of Provisional certificate almost automatic, with Unit / ail validity of 6 months and with a further extension for another 6 months.

Financial Assistance

With a view to ensure adequate of funds, the small scale Industrial frame work for the flow of Financial Assistance to small


scale sector comprises of banks (Commercial Banks, Co-Operative banks, Regional rural banks). State Financial Corporation, National Small Industries Corporation INSIC and State Small Industries Corporations (SSIDCS).

The NSIC and SSID’S provide Financial Assistance in the form supply of Machinery and hire purchase basis.

A National Bank of Agriculture and Rural Development (NABARD) has recently been setup to meet the financial requirements of artisans, Small Scale Industries, Industries those engaged in the field of Handicraft and other rural craft.

Commercial Banks

The Reserve Bank of India issued instructions that no worth wile proposals of the Small scale unit should be rejected merely on the ground that these are not supported by adequate security. The commercial Banks have been advised by the Reserve Bank of India to give special Attention to the needs of the priority sector borrowers, particularly of the weaker section.

Small scale Industrial units also being charged lower rates of interest on their borrowings from commercial Banks.

State Financial Corporations

Provide medium and long-term Loans to Small Scale Industries, granting Loans raised by Industrial undertakings and differed payments and subscribing to stocks, Shares and bonds of an Industrial Concern.

Lead Banks

The Scheme is designed to enable the bank to work effectively as an Instrument of development. Under the scheme, the district in the country have allocated to different commercial banks each of whom is expected to act as a consortium and as a leader of the financial institutions operating in allotted districts in matters relating to deposit mobilization, identifying of prospective avenues for financial assistance and ensuring adequate credit flow for the various development programs of the districts.


Institutional support

The success of Small Scale industries depends solely on the well – established institutional setup. In order to accelerate the small industries development, government at the central and state levels has setup a number of development agencies / institutions. Functions of some these are mentioned.

1.District Industries Center (DIC)

Each district has a DIC at its headquarters. The main responsibility of DIG is to act as the chief coordinator or multi functional agency in; respect of various governments can get all assistance from DIC for setting up and running the industry in rural areas. Each DIC has one General Manager in the rank of Joint Director of industries as the head and seven managers each looking after separate functional area.

Identification of Entrepreneurs.

Selection of Projects

Provisional registration under SSI

Purchase of fixed Assets

Clearances from Various Departments.

Assistance of Raw Material supplies.

Interest – Free Sales Tax Loan

Subsidy Schemes.

Training Programs

Self – employment for Unemployed Educated Youth.

District Industries Centers are supposed to provide pre – investment and post – investment assistance to entrepreneurs under one roof.

2.Small Industries Development Organization

SIDO is a policy-making, co-ordination and monitoring agency for the development of small – scale entrepreneurs. It maintains a close liaison with government, financial institutions and other agencies, which are involved in the promotion and development of small-scale units.



The main functions of the SIDCD are co-ordination, industrial development and industrial extension service. Some important functions are:

a.To assess the requirements of indigenous and imported raw materials and components for the small-scale sector and to arrange their supplies.

b.To collect data on consumer items, which are imported and encourage the setting up of new units giving them coordinate assistance.

c.To prepare model schemes, projects reports and other Technical literature for prospective entrepreneurs.

d.To assist and advise the Controller of Capital issues in regard to the issue of import licenses and the imposition of import restrictions on various products whose manufacture has already been undertaken indigenously be the existing or new units.

e.To secure reservations of certain products for the SSIS.

3.National Small Industries Corporation Limited (NSIC)

The NSIC was setup in 1955 with the objective of supplying machinery and equipment to small enterprise on a hire-purchase basis and assisting them in procuring government orders for various items of stores. The corporation’s head office is at Delhi and it has four regional officers at Delhi, Bombay, Madras and Calcutta, and eleven branch offices. It has one central liaison office at Delhi and depots and sub-centers.

3.The main functions of NSIC are

To develop small scale units as ancillary units to large scale industries.

To provide SSIS with machine on hire-purchase basis

To assist small enterprises to participate in the stores purchase Programme of the Central Government.

To assist small industries with marketing facilities.

To distribute basic raw materials through their depots

To import ad distribute components and parts actual small scale users in specific industries and

To construct industrial estates and establish and run prototype production-cum-training centers.



Sale Proprietorship


Private Limited

Public Limited


State enterprise

Sole Proprietorship

Ownership when applied to an industrial enterprise means title to and possessions of the assets of the enterprise, the power to determine the policies of operation, and the right to receive and dispose of the proceeds.

It is called a single ownership when an individual exercise and enjoys these rights in his own interest.

A business owned by one man is called single ownership.

Single ownership does well for those enterprises, which require little capital and lend themselves readily to control by one person.

Examples of enterprise run by single owner are printing press, auto retail trades, service industries and small engine forms.

In single ownership, one person contributes the original assets to start the business, maintains and controls business operation, reaps full benefits in terms of profit and full liable for all debts associated with the business.


A single owner becomes inadequate as the size of the business enterprise grouse. He may not be in a position to do away with a1 the duty and responsibilities of the grown business.

At this stage the individual owner may associate with him more persons who have either capital to invest or possess special skill and knowledge to make the existing business still more profitable.

Such a combination of individual traders is called partnership.


Partnership may be defined as the relation between persons who have agreed to share the profits of a business carried on by all or any of them acting for all. Individuals with common purposes join and partners and they put together their property, ability, skill, knowledge, etc, for the purpose of making profits.

In brief, partnership is an association of two or more (up to 20) persons to carry an as co- owners of a business for profit.

Partnerships are based upon a partnership agreement which i.e. generally reduced to writing.

It should cover all areas of disagreement among the partners. It should define the authority, right and duties of each partner.

It should specify how profit and losses will be divided among the partners, etc.

Private Limited

The capital is collected from the private partners; some of them may be active while others are sleeping.

Private limited restrict the right to transfer shares, avoids public to take up shares or debentures.

The number of members is between two and 50, excluding employee and ex-employee, share holders.

The company need not file document such consent of directors, list of directors, etc. the register of joint stock companies.

The company need not obtain from the register, a certificate of commencement of business.

The company need not circulate the balance sheet, profit and loss account etc, among its members, but it should hold its annual general meeting and place such financial state rents in the meeting.

A private company must get its accounts audited.

A private company has to send a certificate along with the annual return to the register of joint stock companies stating that it does not have shareholders more than 50 excluding the employee and employee shareholders.


Actually, a private joint stock company resumes much with partnership and has the advantage that big capital can be collected than could be done so in partnership.

Public Limited

In public limited company, the capital is collected from public by issuing shares having small face value (Rs. 50,20,10).

The number of share holders should not be less than 7, but there is no limit to their maximum number.


The main aim of the co-operative is to eliminate profit and provide goods an services to the members of the co-operative cost.

Members pay fees or buy shares the co-operative, and profits are periodically redistributed to them.

Since each member has only one (unlike in joint stock companies), this avoid the concentration of control in few hand.

In a co-operative, there are share holders, a board of directors and elected officers similar to the corporation.

There are periodic meetings of share also.

Special laws deal with the formation and taxation of co-operatives.

Co-operative organization is a kind of voluntary, demo craft ownership formed by some motivated individuals for obtained necessities of every day life at less than the market. The principle behind the co-operative is that of co-operation and self.