You are on page 1of 43

AUTOMATIC HEADLIGHT DIMMER & AUTOMATIC KEYLESS ENTRY

A PROJECT REPORT

Submitted by

LAKSHMI NARAYANAN.G

In partial fulfilment for the award of the degree Of

BACHELOR OF TECHNOLOGY
IN

ELECTRONICS AND COMMUNICATION ENGINEERING

COCHIN UNIVERSITY OF SCIENCE & TECHNOLOGYKOCHI-682022


JUNE, 2012

SCHOOL OF ENGINEERING

COCHIN UNIVERSITY OF SCIENCE & TECHNOLOGY, KOCHI-682022

BONAFIDE CERTIFICATE

Certified that this project report AUTOMATIC HEADLIGHT DIMMER & AUTOMATIC KEYLESS ENTRY is the bonafide work of LAKSHMI NARAYANAN.G who carried out the project work under my supervision.

DR.GOPIKA KUMARI HOD Division of Electronics SOE, CUSAT

DR.REKHA K JAMES Associate Professor Division of Electronics SOE, CUSAT

DR.BABITHA ROSELIND JOSE Assistant Professor Division of Electronics SOE, CUSAT

ACKNOWLEDGEMENT

We are greatly indebted to God for his blessings and for helping us in the successful completion of this project. We also express our sincere gratitude to Dr.Gopika Kumari, Head of the Department of Electronics and Communication engineering and to Dr Babitha Roselind Jose, Associate prof. of ECE, Dr. Rekha James, and Miss Sumitha C, project guides, for providing us with adequate facilities and means by which we were able to complete this project .

We express immense pleasure and gratitude to all the teachers and lab staff of the department of Electronics and communication, CUSAT and our friends Amjed Mohammed K A, Athul V Raj, Akhil Anand K A, S.O.E and Mohan sir for their extended support and co-operation during our entire project work.

- Project Team

1. ABSTRACT
Improvement of transportation facilities is considered as a direct measure of the development of a nation. On that count India has shown tremendous growth in the past decade or so. With an increase in the no. of vehicles on road, unwanted incidents including road accidents and auto thefts have become more common. As a part of our mini project we have tried to develop certain measures to reduce the above mentioned mishaps. A majority of road accidents occur during night traffic. The main reason behind night time accidents is the vision difficulty due to the dazzling effect caused by high beam headlights of vehicles coming in the opposite direction. The difficulty can be avoided by proper dimming of headlights. Most cars on road these days use a manual technique for dimming the headlights. But due to laziness and carelessness, drivers seldom use the dimming switch. And accidents happen. Our mini project involves developing an automatic headlight dimmer. It uses a sensor which detects light coming from
Page | 1

an opposite vehicle, and the circuit works using a relay to change the headlight from high beam to low beam. When the light from the opposite vehicle fades out, the circuit switches the headlight back to high beam mode. The second part of our mini project deals with the issue of Auto Thefts. We developed an automatic keyless entry system which ensures that the vehicle remains locked in the absence of the driver and unlocks itself when the drivers comes near the door .The main advantage of this system is that it works automatically without the driver having to bother about pressing any switch for locking or unlocking. The driver carries a gadget which acts as the transmitter section .The receiver part of the system is en cooperated within the car. When the two modules are within a particular range and the car engine is off, the car gets unlocked. In all other scenarios the car remains in locked state.

Page | 2

TABLE OF CONTENTS

No 1. 2.

Title ABSTRACT LIST OF FIGURES HEAD LIGHT DIMMER 3.1 3.2 3.3 3.4 3.5 3.6 Sensor Signal Amplifier Relay Unit Power Supply Head Light Unit LED Display

Page No 1 5 6 8 9 9 10 10 10 12 13 14 16 16 18 18 19 19 20 21
Page | 3

3.

4.

AUTOMATIC KEYLESS ENTRY 4.1 Receiver Unit 4.1.1 PIC 16F872 4.1.2 Oscillator 4.1.3 IR Receiver 4.1.4 LEDs and Push buttons 4.1.5 Voltage Regulator 4.2 Transmitter Unit 4.2.1 IR Transmitter 4.2.2 555 Timer 4.2.3 Power Supply

5. 6.

PRINTED CIRCUIT BOARD PCB LAYOUT 6.1 Automatic Head Light Dimmer 6.2 Automatic Keyless Entry

22 27 27 27 28 30 41

7. 8. 9.

PROGRAM DATASHEETS REFERENCES

Page | 4

2. LIST OF FIGURES
Title Page no

Automatic Headlight Dimmer-schematic diagram Phototransistor Keyless Entry schematic PIC16f872 block diagram IR receiver block diagram

7 8 13 15 16

IR receiver pin diagram Voltage regulator IR transmitter 555 timer Headlight layout Keyless Entry layout

17 18 19 20 27 27

Page | 5

3. AUTOMATIC HEADLIGHT DIMMER


INTRODUCTION
The number of vehicles on our roads is burgeoning day by day. This in turn forced almost all the vehicle manufactures to think about extra safety instruments and electronic controls to attach with these products to ensure safety in all road conditions through mass flow traffic. If asked, one should always mention that night driving is very cumbersome due to the dazzling light problems and the frequent dimming of headlights by manual means that often causes fatigue to the driver particularly at the time of peak traffic. So naturally to get rid of this perennial problem, an automatic mechanism has to come up to dim the headlamp automatically whenever required.

Simply, an automatic dipper is a unit, which can automatically judge when the headlight beam needs to be lowered, and which dip the headlamp from High beam to a dipped beam.

A problem may arise during city drives, that frequent detection of light may cause flicker in the Headlight & this may cause trouble. This could be overcome by limiting the action of DIMMER circuit only for HIGH beam & as city drive needs only Low beam, the problem no longer exists. Another possible problem is detection of Street lights. This could be solved by keeping possibility of detecting Street lights is minimal. sensor in such a way that,

Page | 6

CIRCUIT DIAGRAM:

The circuit is based on a photo transistor (Q2) for sensing the approaching vehicles and transistor Q1 (BC177) for switching the relays for controlling the headlight. When the light from the opposite vehicle falls on Q2 , its collector current increases and turns ON Q1.The relay will be activated and the head light will be dimmed. When the vehicle pass over the reverse will happen.

The battery B1 can be the 12V car battery itself. Adjust POTs R1,R2 and R4 to obtain optimum performance. The Q1 can be any general purpose PNP photo transistor. It should be mounted in front of the car so that the light from opposite vehicle easily falls on it. Relay contact A goes to high beam circuit , B to low beam circuit and C is the common point.

Carefully understand the wiring of your car before attempting to install the
circuit. Wrong connections could easily bring trouble to your cars wiring.

Page | 7

3.1 SENSOR
Phototransistor

The sensor used in the circuit is a phototransistor of pnp configuration by the name KKT12R. When a ray of light falls at the base of the transistor, correspondingly a small voltage is developed across the collector emitter terminals. This functions as the key to the switching of the relays .

In the headlight dimmer circuit, the phototransistor is arranged in such a way that its base is kept open and its collector emitter terminals are reverse biased.

Page | 8

3.2 SIGNAL AMPLIFIER


The BC 177 transistor works as the signal amplifier in this circuit .It works in such a way that its emitter is connected to the +ve terminal of a 12 volt supply .Its collector is connected to the first relay. The base of the BC 177 is connected to the collector of the phototransistor. When the phototransistor detects light, a small voltage is developed at its collector .This voltage is reaches the base of the signal amplifying transistor BC 177 and turns it on. As a result a comparatively larger voltage in the range of 12 volts is developed across the emitter collector junction of the BC 177, used in the circuit. Thus a small voltage is amplified into a larger voltage signal using this transistor. This larger voltage is used to drive the relays in the circuit

3.3 RELAY UNIT


The relay unit in the circuit is for the automatic switching between the two headlight modes, DIM and BRIGHT. The relay unit used comprises of 2 individual identical relays. The first relay is used to drive the second one. The relays used in the circuit are TGHJMKL. The first relay is turned on when the signal from the amplifying transistor is present at its input point. When tuned on it switches in such a way that the second relay is turned on and it becomes a part of the working circuit. In its OFF mode output of the second relay will be connected to the Headlight circuit such that the headlight is in HIGH BEAM mode. When the second relay is turned on by the first one, switching takes place and now its output will be connected to the Headlight circuit such that the headlight is in LOW BEAM mode. When the second relay is turned off by the first one in the absence of the signal from the phototransistor, the circuit switches back to HIGH BEAM mode
Page | 9

3.4 POWER SUPPLY

The Entire Project needs power for its operation. However, from the study of this project it comes to know that we are supposed to design 12v dc power supply. Since our project is to be implemented in a car, the battery of the car itself can be used to draw power for the automatic headlight dimmer as well. Necessary circuit should be implemented, so that the voltage be stepped downed to the necessary 12V.

3.5 HEAD LIGHT UNIT


The headlight system used in our project is a small replica of the actual car headlight system. It is an arrangement consisting of two similar 12V bulbs so arranged so that one points to a farther point on the road, the HIGH BEAM bulb, and other points at a nearer point on the road, the LOW BEAM bulb. The low beam bulb is kept at an inclination with reference to the high beam bulb.

3.6 LED DISPLAY


An LED display is en cooperated on the PCB itself for a simpler demonstration of the switching between the high beam and low beam circuits. A pair of 3.2V green LEDs is used in the circuit. The 3.2 V necessary for the LEDs is obtained by stepping down the 12V available from the source using resistance circuits.
Page | 10

CONCLUSION

The automatic headlight dimmer is a very simple circuit. It can be implemented at a very low cost. But at present, the system is seen to be used in only high end cars. If the government asks the car manufactures to make the automatic headlight dimmer a mandatory component in all cars developed, a majority of night time accidents can be avoided .

When implemented in cars the sensor should be placed at a location where the light from opposite vehicles can be easily sensed. It will be appropriate if we use multiple sensors. A sensor on top of the front glass and one at the bottom of the front guard bumper will be enough.

Page | 11

4. AUTOMATIC KEYLESS ENTRY


INTRODUCTION

Automatic keyless entry refers to the system in which the locking and unlocking of the car can be implemented without using any manual keys or even switches. A model of this phenomenon is the second part of our mini project. It works using the principle of Infra Red Communication. The system consists of two units, a transmitter unit and a receiver unit. The transmitter section is a small gadget which will be in the hands of the driver, preferably embedded in his watch. The receiver unit will be inside the car itself .

The simple process implemented is that the car will be in unlocked state when its engine is off and the driver with his transmitting gadget is within the range of communication. In all other cases the car will be left locked. When the driver comes near the car, ie, within the IR communication range, the IR transmitter sends a code which is received by the IR receiver and is decoded inside the PIC .If the code matches with the one stored in the PIC the car gets unlocked. The car gets back to locked state if and when the engine starts. The car will also automatically get locked, if the driver with the transmitting gadget goes beyond the vicinity of communication.

Page | 12

KEYLESS ENTRY- SCHEMATIC

4.1 RECEIVER UNIT


The receiver section will be installed inside the car .It is the main component of the automatic keyless entry containing the brain of the system, the PIC microcontroller. Besides the PIC, other major components inside the receiver unit are an IR Receiver, an oscillator, a Voltage regulator, a Relay Unit, Push buttons and LEDs.

Page | 13

4.1.1 PIC 16F872


The major heart of this project is the PIC16F872 microcontroller. The PIC16F872 provides the following standard features: 4K bytes of flash, 368x8 bytes of RAM, 22 I/O lines, Watchdog timer, two 8-bit, one 16-bit timer/counter, on-chip oscillator, and clock circuitry. In addition, the PIC16F872 is designed with static logic for operation down to zero frequency and supports software selectable power saving modes.

The other features are: Only 35 single word instructions to learn Operating speed: DC - 20 MHz clock input DC - 200 ns instruction cycle Up to 256 x 8 bytes of EEPROM Data Memory Interrupt capability (up to 14 sources) Eight level deep hardware stack Direct, indirect and relative addressing modes Power-on Reset (POR) Power-up Timer (PWRT) and Oscillator Start-up Timer (OST)

Page | 14

Page | 15

4.1.2 OSCILLATOR
The oscillator used in the circuit is a 4 MHz crystal. It is used to provide the necessary clock pulses for the PIC microcontroller. It decides the working speed of the microcontroller.

4.1.3 IR RECEIVER

It is an active low device which means it gives low output when it receives the Infrared rays. The IR receiver used is of the TSOP17 series .They are miniaturized receivers for infrared remote control systems. PIN diode and preamplifier are assembled on lead frame, the epoxy package is designed as IR filter. The demodulated output signal can directly be decoded by a microprocessor, here in our case the PIC 16F72. TSOP17 is the standard IR remote control receiver series, supporting all major transmission codes.

Page | 16

IR RECEIVER PIN DIAGRAM

Features
Photo detector and preamplifier in one package Internal filter for PCM frequency Improved shielding against electrical field disturbance TTL and CMOS compatibility Output active low Low power consumption High immunity against ambient light Continuous data transmission possible (up to 2400 bps) Suitable burst length. 10 cycles/burst

Page | 17

4.1.4 LEDs & PUSH BUTTONS


On the PCB two pairs of LEDs are used for demonstration and indication purposes. The first pair consists of a blue one and a red one. The pair indicates the activation of the system. When the keyless entry system is activated the red LED will be glowing and when the system is off the blue one will be glowing. The necessity of the system to go into non working state arises when the driver is inside the car. In the real scenario the deactivation switch is placed under the drivers seat, so that when he is seated the system will turn itself off. We have implemented a push button switch to demonstrate the same. The second pair indicates the state of the lock. It consists of a blue LED and a green one. In locked state the blue one will be glowing and in the unlocked state the green one will be glowing. The switching between the 2 states can be easily understood by the change in the LED glowing.

4.1.5 VOLTAGE REGULATOR

The voltage regulator used in the system is a 7805 IC. It is a member of 78xx series of fixed linear voltage regulator ICs. The voltage source in the circuit may have fluctuations and would not give the fixed voltage output. The voltage regulator IC maintains the output voltage at a constant value. The xx in 78xx indicates the fixed output voltage it is designed to provide. 7805 provides +5V regulated power supply. Capacitors of suitable values are connected at input and output pins depending upon the respective voltage levels.
Page | 18

4.2 TRANSMITTER
The transmitter section in the automatic keyless entry is a small gadget that the driver carries around with him. The preferable scenario is that the transmitter unit is embedded on the wrist watch of the driver or something similar. The main component of the unit is an IR transmitter which keeps on sending an IR code at a particular frequency expecting the receiver to decode it. When the gadget comes near the car.ie, when the transmitter and receiver are within their communication range, the code will be sensed and decoded by the receiver. The major components of the transmitting unit beside the IR transmitter are a 555 timer and a power source.

4.2.1 IR TRANSMITTER

The IR transmitter used in the system is EVERLIGHTS Infrared Emitting Diode (IR333-A) .It is a high intensity diode, moulded in a blue transparent plastic package. The device is spectrally matched with phototransistor, photodiode and infrared receiver module

Features
High reliability High radiant intensity Peak wavelength p=940nm 2.54mm Lead spacing Low forward voltage Pb free The product itself will remain within RoHS compliant version.
Page | 19

Applications
Free air transmission system IR remote control units with high power requirement Smoke detector Infrared applied system

4.2.2 555 TIMER

The 555 timer IC is an integrated circuit (chip) used in a variety of timer, pulse generation, and oscillator applications. The 555 can be used to provide time delays, as an oscillator, and as a flip-flop element. Derivatives provide up to four timing circuits in one package. Introduced in 1972 by Signetics, the 555 is still in widespread use, thanks to its ease of use, low price, and good stability. It is now made by many companies in the original bipolar and also in low-power CMOS types. As of 2003, it was estimated that 1 billion units are manufactured every year. The 555 timer is used in its astable multivibrator mode in our circuit. That mode is also called free running mode. In this mode the 555 can operate as an oscillator. Its uses include LED and lamp flashers, pulse generation, logic clocks, tone generation, security alarms, pulse position modulation and so on.
Page | 20

4.2.3 POWER SUPPLY


Power supply used for the transmitter is a 9V battery .It provides the necessary power for 555 timer and the transistorIn the receiver unit, also a 9V battery is used as power source for the PIC and other components.

CONCLUSION
Automatic keyless entry is a system which is developed with the objective of improving the security features of a car. The system ensures that the car remains locked in the absence of the driver even if he had forgot to manually lock the car. It may come very helpful to careless people, old people and people in a hurry. The system also ensures that the car gets unlocked automatically without the driver having to scramble for the key in his pocket. It will come useful in cases when the driver may be carrying something in both his hands. Also if the system is en cooperated on the drivers wrist watch the chances of him losing the key will be minimised. Since a microcontroller is used in the system, the scope of improvement is very high. Simply by altering the program, we could bring many more additional security features. For example, the use of separate random keys each time for communication will ensure that hacking of the lock system can be avoided. Also if Radio Frequency communication is used in place of Infra Red communication, better accuracy can be obtained. But if RF is used, steps should be taken to minimise the range of communication (by using shields on top off transmitter) for ideal implementation.

Page | 21

5. PRINTED CIRCUIT BOARD


A printed circuit board, or PCB, is used to mechanically support and electrically connect electronic components using conductive pathways, tracks or signal traces etched from copper sheets laminated onto a non-conductive substrate. It is also referred to as printed wiring board (PWB) or etched wiring board. A PCB populated with electronic components is a printed circuit assembly (PCA), also known as a printed circuit board assembly or PCB

Assembly (PCBA). Printed circuit boards are used in virtually all but the simplest commercially produced electronic devices. Alternatives to PCBs include wire wrap and point-to-point construction. PCBs are often less expensive and more reliable than these alternatives, though they require more layout effort and higher initial cost. PCBs are much cheaper and faster for high-volume production since production and soldering of PCBs can be done by automated equipment. Much of the electronics industry's PCB design, assembly, and quality control needs are set by standards that are published by the IPC organization.

PCB Fabrication
A printed circuit board, or PCB, is used to mechanically support and electrically connect electronic components using conductive pathways, or traces, etched from copper sheets laminated onto a non-conductive substrate. Alternative names are printed wiring board (PWB), and etched wiring board. A PCB populated with electronic components is a printed circuit assembly (PCA), also known as a printed circuit board assembly (PCBA). PCBs are rugged, inexpensive, and can be highly reliable. They require much more layout effort and higher initial cost than either wire-wrapped or point-topoint constructed circuits, but are much cheaper, faster, and consistent in high volume production. Conducting layers are typically made of thin copper foil. Insulating materials has wider scale, phenolic paper, glass fiber and different plastics are commonly used.
Page | 22

Patterning (etching)
The vast majority of printed circuit boards are made by bonding a layer of copper over the entire substrate, sometimes on both sides, (creating a blank PCB) and then removing unwanted copper after applying a temporary mask (e.g. by etching), leaving only the desired copper traces. A few PCBs are made by adding traces to the bare substrate (or a substrate with a very thin layer of copper) usually by a complex process of multiple electroplating steps.

Drilling
Holes, or vias, through a PCB are typically drilled with tiny drill bits made of solid tungsten carbide. The drilling is performed by automated drilling machines with placement controlled by a drill tape or drill file. These computer generated files are also called numerically controlled drill (NCD) files or Excellon files. The drill file describes the location and size of each drilled hole. When very small vias are required, drilling with mechanical bits is costly because of high rates of wear and breakage. In this case, the vias may be evaporated by lasers. Laser drilled vias typically have an inferior surface finish inside the hole. These holes are called microvias. It is also possible with controlled-depth drilling, laser drilling, or by predrilling the individual sheets of the PCB before lamination, to produce holes that connect only some of the copper layers, rather than passing through the entire board. These holes are called blind vias when they connect an internal copper layer to an outer layer, or buried vias when they connect two or more internal copper layers and no outer layers. The walls of the holes, for boards with two or more layers are plated with copper to form plated-through holes that electrically connect the conducting layers of the PCB. For multi-layer boards, those with four layers or more, drilling typically produces a smear comprised of the bonding agent in the laminate system. Before the holes can be plated through, this smear must be removed by a chemical de-smear process, or by plasma etch.
Page | 23

Exposed conductor plating and coating


The places to which components will be mounted are typically plated, because bare copper oxidized quickly, and therefore is not readily soldered. Traditionally, any exposed copper was plated with the solder. This solder was a tin-lead alloy. However, new solder compounds are now used to achieve compliance with the RoHS directive in the European Union, which restricts the use of lead. Other platings used are OSP (organic surface protectant), immersion silver, immersion tin, electro less nickel with immersion gold plating (ENIG), and direct gold. Edge connectors placed along one edge of some boards are often gold plated.

PCB design
To make a PCB, we must convert our corresponding pattern of desired copper foil trace that will compose the finished board. These are basically two ways of achieving this. Working from a manually drawn schematic, we can use a pencil and paper to figure out a set of interconnection parts that does the job. We can convert our hand drawn schematic to a connection net list. Then use a CAD program to figure the trace routing, producing a set of precision machine drain photo plots directly. In this project, we use OrCAD for PCB design and layout.

CAD circuit based drawing


This method had many advantages including automatic net list extraction, painless documentation, the ability to check for design and layout rule errors, the ability to make changes relatively easy and the ability to produce complex multiplier boards with precise alignment of pads and traces. It is the method of the choice for nearly all complex and high density PCB production.

Page | 24

Schematic capture
We begin by capturing our schematic directly into the graphic workstation. We can draw and edit diagrams using standard electronics symbols from library. The wiring can be moved around, signals can be named and the IC part numbers can be given etc. A good CAD system assists us by looking the ICs and assigning pin numbers.

Checking and simulation


The output from the schematic capture consists of a set of drawing and a net list that is simply a list of every signal telling every node where it is connected to. We can ask the system to simulate the digital circuit operation. But we must provide it with test vectors that describe the machine state and we must describe the function of each chip in our circuit that is not already described in this library.

Placement and routing


The next step is the component placement and routing. One of the greatest advantages is that if the schematic is correct, then the final PCB will also be correct. A good CAD system can flag design route errors as we make them so that we can use it if the parts are too close together etc. Once the parts have been placed, the wiring must be routed. The current system provides auto routing the software and find connection paths taking care not to violate design rules that specify not only the line widths and clearness but also parameters such as the maximum number of vias.

Photo and plot drill


If all has gone well, the last stages of the process consists of producing a machine readable board description. For this, we need two things- a tape that tells how to draw a precision plot of the artwork and a drill tape that tells each hole size and its precise position.
Page | 25

General Flow Chart In PCB Manufacturing


PCB ARTWORK (COREL DRAW)

PCB ARTWORK ON TRACING SHEET

SCREEN PRINTING (POLY BLUE)

PCB ARTWORK ON COPPER PLATE USING PAINT

ETCHING (FERRIC CHLORIDE)

REMOVAL OF PAINT FROM COPPER PLATE BY SCRUBBING

DRYING

DRILLING (0.9mm BIT) AND CLEANING


Page | 26

6. PCB LAYOUT
6.1 AUTOMATIC HEADLIGHT DIMMER

6.2 AUTOMATIC KEYLESS ENTRY

Page | 27

7. PROGRAM

#define Led_1 PORTC.F6 #define Led_2 PORTC.F5 #define RELAY PORTC.F4 #define In_1 PORTC.F1 #define Sw_1 PORTB.F6 #define Sw_2 PORTB.F7 unsigned int i=0,j=0,k=0,l=0; void Init_Port(void) { TRISC.F4 = 0; TRISC.F5 = 0; TRISC.F6 = 0; TRISC.F1 = 1; TRISB.F6 = 1; TRISB.F7 = 1; ADCON0 = 0X00; ADCON1 = 0X07; Led_1 = 0; Led_2 = 0; RELAY = 0; } void main(void) { Init_Port(); Led_1 = 1;

Page | 28

while(1) { if((i == 0)&&(In_1 == 0)) { i = 5; Led_1 = 0; Led_2 = 1; RELAY = 1; } if((i == 7)&&(Sw_2 == 1)) { i = 9; Led_1 = 0; Led_2 = 1; } if((i == 9)&&(Sw_2 == 0)) { i = 0; Led_1 = 1; Led_2 = 0; RELAY = 0; } } }

Page | 29

PIC16F872
28-Pin, 8-Bit CMOS FLASH Microcontroller
Devices Included in this Data Sheet:
PIC16F872

Pin Diagram
DIP, SOIC, SSOP
M CLR PP/THV /V RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4/SS VSS O SC1/CLKIN O SC2/CLK UT O RC0/T1O /T1CKI SO RC1/T1O SI RC2/CCP1 RC3/SCK/SCL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 28 27 26 25 24 23 22 21 20 19 18 17 16 15 RB7/PG D RB6/PG C RB5 RB4 RB3/PG M RB2 RB1 RB0/INT VDD VSS RC7 RC6 RC5/SDO RC4/SDI/SD A

Microcontroller Core Features:


High-performance RISC CPU Only 35 single word instructions to learn All single cycle instructions except for program branches which are two cycle Operating speed: DC - 20 MHz clock input DC - 200 ns instruction cycle 2K x 14 words of FLASH Program Memory 128 x 8 bytes of Data Memory (RAM) 64 x 8 bytes of EEPROM Data Memory Pinout compatible to the PIC16C72A Interrupt capability (up to 10 sources) Eight level deep hardware stack Direct, indirect and relative addressing modes Power-on Reset (POR) Power-up Timer (PWRT) and Oscillator Start-up Timer (OST) Watchdog Timer (WDT) with its own on-chip RC oscillator for reliable operation Programmable code-protection Power saving SLEEP mode Selectable oscillator options Low-power, high-speed CMOS FLASH/EEPROM technology Fully static design In-Circuit Serial Programming (ICSP) via two pins Single 5V In-Circuit Serial Programming capability In-Circuit Debugging via two pins Processor read/write access to program memory Wide operating voltage range: 2.0V to 5.5V High Sink/Source Current: 25 mA Commercial and Industrial temperature ranges Low-power consumption: - < 2 mA typical @ 5V, 4 MHz - 20 A typical @ 3V, 32 kHz - < 1 A typical standby current

Peripheral Features:
Timer0: 8-bit timer/counter with 8-bit prescaler Timer1: 16-bit timer/counter with prescaler, can be incremented during sleep via external crystal/clock Timer2: 8-bit timer/counter with 8-bit period register, prescaler and postscaler One Capture, Compare, PWM module - Capture is 16-bit, max. resolution is 12.5 ns - Compare is 16-bit, max. resolution is 200 ns - PWM max. resolution is 10-bit 10-bit multi-channel Analog-to-Digital converter Synchronous Serial Port (SSP) with SPI (Master Mode) and I2C (Master/Slave) Brown-out detection circuitry for Brown-out Reset (BOR)

1999 Microchip Technology Inc.

Preliminary

PIC16F872

DS30221A-page 1

PIC16F872
Key Features PICmicro Mid-Range Reference Manual (DS33023) Operating Frequency Resets (and Delays) FLASH Program Memory (14-bit words) Data Memory (bytes) EEPROM Data Memory Interrupts I/O Ports Timers Capture/Compare/PWM module Serial Communications 10-bit Analog-to-Digital Module Instruction Set PIC16F872 DC - 20 MHz POR, BOR (PWRT, OST) 2K 128 64 10 Ports A,B,C 3 1 MSSP 5 input channels 35 Instructions

DS30221A-page 2

Preliminary

1999 Microchip Technology Inc.

PIC16F872
TABLE 1-1:
Pin Name
OSC1/CLKIN OSC2/CLKOUT

PIC16F872 PINOUT DESCRIPTION


DIP Pin#
9 10

SOIC Pin#
9 10

I/O/P Type
I O

Buffer Type

Description

ST/CMOS(3) Oscillator crystal input/external clock source input. Oscillator crystal output. Connects to crystal or resonator in crystal oscillator mode. In RC mode, the OSC2 pin outputs CLKOUT, which has 1/4 the frequency of OSC1 and denotes the instruction cycle rate. Master clear (reset) input or programming voltage input or high voltage test mode control. This pin is an active low reset to the device. PORTA is a bi-directional I/O port. RA0 can also be analog input0. RA1 can also be analog input1. RA2 can also be analog input2 or negative analog reference voltage. RA3 can also be analog input3 or positive analog reference voltage. RA4 can also be the clock input to the Timer0 module. Output is open drain type. RA5 can also be analog input4 or the slave select for the synchronous serial port. PORTB is a bi-directional I/O port. PORTB can be software programmed for internal weak pull-up on all inputs.

MCLR/VPP/THV

I/P

ST

RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/SS/AN4

2 3 4 5 6 7

2 3 4 5 6 7

I/O I/O I/O I/O I/O I/O

TTL TTL TTL TTL ST TTL

RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD

21 22 23 24 25 26 27 28

21 22 23 24 25 26 27 28

I/O I/O I/O I/O I/O I/O I/O I/O

TTL/ST(1) TTL TTL TTL/ST(1) TTL TTL TTL/ST


(2)

RB0 can also be the external interrupt pin.

RB3 can also be the low voltage programming input. Interrupt on change pin. Interrupt on change pin. Interrupt on change pin or In-Circuit Debugger pin. Serial programming clock. Interrupt on change pin or In-Circuit Debugger pin. Serial programming data. PORTC is a bi-directional I/O port. RC0 can also be the Timer1 oscillator output or Timer1 clock input. RC1 can also be the Timer1 oscillator input. RC2 can also be the Capture1 input/Compare1 output/PWM1 output. RC3 can also be the synchronous serial clock input/output for both SPI and I2C modes. RC4 can also be the SPI Data In (SPI mode) or data I/O (I2C mode). RC5 can also be the SPI Data Out (SPI mode).

TTL/ST(2)

RC0/T1OSO/T1CKI RC1/T1OSI RC2/CCP1 RC3/SCK/SCL RC4/SDI/SDA RC5/SDO RC6 RC7 VSS VDD Legend: I = input

11 12 13 14 15 16 17 18 8, 19 20

11 12 13 14 15 16 17 18 8, 19 20

I/O I/O I/O I/O I/O I/O I/O I/O P P

ST ST ST ST ST ST ST ST

Ground reference for logic and I/O pins. Positive supply for logic and I/O pins.

O = output I/O = input/output P = power = Not used TTL = TTL input ST = Schmitt Trigger input Note 1: This buffer is a Schmitt Trigger input when configured as the external interrupt or LVP. 2: This buffer is a Schmitt Trigger input when used in serial programming mode. 3: This buffer is a Schmitt Trigger input when configured in RC oscillator mode and a CMOS input otherwise.

DS30221A-page 6

Preliminary

1999 Microchip Technology Inc.

PIC16F872
2.0 MEMORY ORGANIZATION
2.2 Data Memory Organization
There are three memory blocks in each of these PICmicro MCUs. The Program Memory and Data Memory have separate buses, so that concurrent access can occur, and is detailed in this section. The EEPROM data memory block is detailed in Section 4.0. Additional information on device memory may be found in the PICmicro Mid-Range Reference Manual, (DS33023). The data memory is partitioned into multiple banks which contain the General Purpose Registers and the Special Function Registers. Bits RP1(STATUS<6>) and RP0 (STATUS<5>) are the bank select bits. RP<1:0> 00 01 10 11 Bank 0 1 2 3

2.1

Program Memory Organization

The PIC16F872 devices have a 13-bit program counter capable of addressing an 8K x 14 program memory space. The PIC16F872 device has 2K x 14 words of FLASH program memory. Accessing a location above the physically implemented address will cause a wraparound. The reset vector is at 0000h and the interrupt vector is at 0004h.

Each bank extends up to 7Fh (128 bytes). The lower locations of each bank are reserved for the Special Function Registers. Above the Special Function Registers are General Purpose Registers, implemented as static RAM. All implemented banks contain Special Function Registers. Some high use Special Function Registers from one bank may be mirrored in another bank for code reduction and quicker access. Note: 2.2.1 EEPROM Data Memory description can be found in Section 4.0 of this Data Sheet GENERAL PURPOSE REGISTER FILE

FIGURE 2-1:

PIC16F872 PROGRAM MEMORY MAP AND STACK


PC<12:0>

The register file can be accessed either directly, or indirectly through the File Select Register FSR.
13

CALL, RETURN RETFIE, RETLW

Stack Level 1 Stack Level 2

Stack Level 8

Reset Vector

0000h

Interrupt Vector On-Chip Program Memory Page 0

0004h 0005h 07FFh 0800h

1FFFh

1999 Microchip Technology Inc.

Preliminary

DS30221A-page 7

PIC16F872
FIGURE 2-2: PIC16F872 REGISTER FILE MAP
File Address Indirect addr.(*) TMR0 PCL STATUS FSR PORTA PORTB PORTC 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh 0Fh 10h 11h 12h 13h 14h 15h 16h 17h 18h 19h 1Ah 1Bh 1Ch 1Dh 1Eh 1Fh 20h Indirect addr.(*) 80h OPTION_REG 81h PCL 82h STATUS 83h FSR 84h TRISA 85h TRISB 86h TRISC 87h 88h 89h PCLATH 8Ah INTCON 8Bh PIE1 8Ch PIE2 8Dh PCON 8Eh 8Fh 90h SSPCON2 91h PR2 92h SSPADD 93h SSPSTAT 94h 95h 96h 97h 98h 99h 9Ah 9Bh 9Ch 9Dh ADRESL 9Eh 9Fh ADCON1 General Purpose Register 32 Bytes A0h Indirect addr.(*) 100h 101h TMR0 102h PCL 103h STATUS 104h FSR 105h 106h PORTB 107h 108h 109h 10Ah PCLATH 10Bh INTCON 10Ch EEDATA EEADR 10Dh 10Eh EEDATH 10Fh EEADRH 110h Indirect addr.(*) OPTION_REG PCL STATUS FSR TRISB 180h 181h 182h 183h 184h 185h 186h 187h 188h 189h 18Ah 18Bh 18Ch 18Dh 18Eh 18Fh 190h

PCLATH INTCON PIR1 PIR2 TMR1L TMR1H T1CON TMR2 T2CON SSPBUF SSPCON CCPR1L CCPR1H CCP1CON

PCLATH INTCON EECON1 EECON2 Reserved(1) Reserved(1)

ADRESH ADCON0

120h accesses 20h-7Fh accesses A0h - BFh

1A0h

General Purpose Register 96 Bytes

BFh C0h EFh F0h FFh accesses 70h-7Fh Bank 2 16Fh 170h 17Fh

1BFh 1C0h 1EFh 1F0h 1FFh

Bank 0

7Fh

accesses 70h-7Fh Bank 1

accesses 70h-7Fh Bank 3

Unimplemented data memory locations, read as 0. * Not a physical register. Note 1: These registers are reserved; maintain these registers clear.

DS30221A-page 8

Preliminary

1999 Microchip Technology Inc.

PIC16F872
2.2.2 SPECIAL FUNCTION REGISTERS The Special Function Registers are registers used by the CPU and peripheral modules for controlling the desired operation of the device. These registers are implemented as static RAM. A list of these registers is given in Table 2-1. The Special Function Registers can be classified into two sets: core (CPU) and peripheral. Those registers associated with the core functions are described in detail in this section. Those related to the operation of the peripheral features are described in detail in the peripheral feature section.

TABLE 2-1:
Address

SPECIAL FUNCTION REGISTER SUMMARY


Name Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Value on: POR, BOR Value on all other resets (2)

Bank 0 00h(3) 01h 02h(3) 03h(3) 04h(3) 05h 06h 07h 08h 09h 0Ah(1,3) 0Bh(3) 0Ch 0Dh 0Eh 0Fh 10h 11h 12h 13h 14h 15h 16h 17h 18h 19h 1Ah 1Bh 1Ch 1Dh 1Eh 1Fh INDF TMR0 PCL STATUS FSR PORTA PORTB PORTC PCLATH INTCON PIR1 PIR2 TMR1L TMR1H T1CON TMR2 T2CON SSPBUF SSPCON CCPR1L CCPR1H CCP1CON ADRESH ADCON0 Addressing this location uses contents of FSR to address data memory (not a physical register) Timer0 modules register Program Counter's (PC) Least Significant Byte IRP RP1 RP0 TO PD Z DC C Indirect data memory address pointer PORTA Data Latch when written: PORTA pins when read PORTB Data Latch when written: PORTB pins when read PORTC Data Latch when written: PORTC pins when read Unimplemented Unimplemented GIE (4) PEIE ADIF (4) T0IE (4) Write Buffer for the upper 5 bits of the Program Counter INTE (4) EEIF RBIE SSPIF BCLIF T0IF CCP1IF INTF TMR2IF RBIF TMR1IF (4) 0000 0000 0000 0000 xxxx xxxx uuuu uuuu 0000 0000 0000 0000 0001 1xxx 000q quuu xxxx xxxx uuuu uuuu --0x 0000 --0u 0000 xxxx xxxx uuuu uuuu xxxx xxxx uuuu uuuu

---0 0000 ---0 0000 0000 000x 0000 000u r0rr 0000 r0rr 0000 -r-0 0--r -r-0 0--r xxxx xxxx uuuu uuuu xxxx xxxx uuuu uuuu

Holding register for the Least Significant Byte of the 16-bit TMR1 register Holding register for the Most Significant Byte of the 16-bit TMR1 register WCOL T1CKPS1 T1CKPS0 TOUTPS1 CKP T1OSCEN T1SYNC TMR1CS TMR1ON Timer2 modules register TOUTPS3 TOUTPS2 SSPOV SSPEN Synchronous Serial Port Receive Buffer/Transmit Register SSPM3 SSPM2 SSPM1 SSPM0 Capture/Compare/PWM Register1 (LSB) Capture/Compare/PWM Register1 (MSB) Unimplemented Unimplemented Unimplemented Unimplemented Unimplemented Unimplemented A/D Result Register High Byte ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/ DONE ADON CCP1X CCP1Y CCP1M3 CCP1M2 CCP1M1 CCP1M0

--00 0000 --uu uuuu 0000 0000 0000 0000

TOUTPS0 TMR2ON T2CKPS1 T2CKPS0 -000 0000 -000 0000 xxxx xxxx uuuu uuuu 0000 0000 0000 0000 xxxx xxxx uuuu uuuu xxxx xxxx uuuu uuuu --00 0000 --00 0000

xxxx xxxx uuuu uuuu 0000 00-0 0000 00-0

Legend: x = unknown, u = unchanged, q = value depends on condition, - = unimplemented read as 0, r = reserved. Shaded locations are unimplemented, read as 0. Note 1: The upper byte of the program counter is not directly accessible. PCLATH is a holding register for the PC<12:8> whose contents are transferred to the upper byte of the program counter. 2: Other (non power-up) resets include external reset through MCLR and Watchdog Timer Reset. 3: These registers can be addressed from any bank. 4: These bits are reserved; always maintain these bits clear.

1999 Microchip Technology Inc.

Preliminary

DS30221A-page 9

PIC16F872
10.0 ANALOG-TO-DIGITAL CONVERTER (A/D) MODULE
The A/D module has four registers. These registers are: A/D Result High Register (ADRESH) A/D Result Low Register (ADRESL) A/D Control Register0 (ADCON0) A/D Control Register1 (ADCON1) The Analog-to-Digital (A/D) Converter module has five inputs. The analog input charges a sample and hold capacitor. The output of the sample and hold capacitor is the input into the converter. The converter then generates a digital result of this analog level via successive approximation. The A/D conversion of the analog input signal results in a corresponding 10-bit digital number. The A/D module has high and low voltage reference input that is software selectable to some combination of VDD, VSS, RA2 or RA3. The A/D converter has a unique feature of being able to operate while the device is in SLEEP mode. To operate in SLEEP, the A/D clock must be derived from the A/Ds internal RC oscillator.

The ADCON0 register, shown in Register 10-1, controls the operation of the A/D module. The ADCON1 register, shown in Register 10-2, configures the functions of the port pins. The port pins can be configured as analog inputs (RA3 can also be the voltage reference) or as digital I/O. Additional information on using the A/D module can be found in the PICmicro Mid-Range MCU Family Reference Manual (DS33023).

REGISTER 10-1: ADCON0 REGISTER (ADDRESS: 1Fh)


R/W-0 bit7 R/W-0 R/W-0 CHS2 R/W-0 CHS1 R/W-0 CHS0 R/W-0 GO/DONE U-0 R/W-0 ADON bit0 R = Readable bit W = Writable bit U = Unimplemented bit, read as 0 - n = Value at POR reset

ADCS1 ADCS0

bit 7-6: ADCS<1:0>: A/D Conversion Clock Select bits 00 = FOSC/2 01 = FOSC/8 10 = FOSC/32 11 = FRC (clock derived from an RC oscillation) bit 5-3: CHS<2:0>: Analog Channel Select bits 000 = channel 0, (RA0/AN0) 001 = channel 1, (RA1/AN1) 010 = channel 2, (RA2/AN2) 011 = channel 3, (RA3/AN3) 100 = channel 4, (RA5/AN4) bit 2: GO/DONE: A/D Conversion Status bit If ADON = 1 1 = A/D conversion in progress (setting this bit starts the A/D conversion) 0 = A/D conversion not in progress (this bit is automatically cleared by hardware when the A/D conversion is complete) Unimplemented: Read as '0' ADON: A/D On bit 1 = A/D converter module is operating 0 = A/D converter module is shutoff and consumes no operating current

bit 1: bit 0:

1999 Microchip Technology Inc.

Preliminary

DS30221A-page 85

PIC16F872
REGISTER 10-2: ADCON1 REGISTER (ADDRESS 9Fh)
U-0 ADFM bit7 U-0 R/W-0 U-0 R/W-0 PCFG3 R/W-0 PCFG2 R/W-0 PCFG1 R/W-0 PCFG0 bit0 R = Readable bit W = Writable bit U = Unimplemented bit, read as 0 - n = Value at POR reset

bit 7:

ADFM: A/D Result format select 1 = Right Justified. 6 most significant bits of ADRESH are read as 0. 0 = Left Justified. 6 least significant bits of ADRESL are read as 0.

bit 6-4: Unimplemented: Read as '0' bit 3-0: PCFG<3:0>: A/D Port Configuration Control bits

PCFG<3:0> 0000 0001 0010 0011 0100 0101 011x 1000 1001 1010 1011 1100 1101 1110 1111

AN4 RA5 A A A A D D D A A A A A D D D

AN3 RA3 A VREF+ A VREF+ A VREF+ D VREF+ A VREF+ VREF+ VREF+ VREF+ D VREF+

AN2 RA2 A A A A D D D VREFA A VREFVREFVREFD VREF-

AN1 RA1 A A A A A A D A A A A A A D D

AN0 RA0 A A A A A A D A A A A A A A A

VREF+ VDD RA3 VDD RA3 VDD RA3 VDD RA3 VDD RA3 RA3 RA3 RA3 VDD RA3

VREFVSS VSS VSS VSS VSS VSS VSS RA2 VSS VSS RA2 RA2 RA2 VSS RA2

CHAN / Refs(1) 5/0 4/1 5/0 4/1 3/0 2/1 0/0 3/2 5/0 4/1 3/2 3/2 2/2 1/0 1/2

A = Analog input D = Digital I/O Note 1: This column indicates the number of analog channels available as A/D inputs and the number of analog channels used as voltage reference inputs.

DS30221A-page 86

Preliminary

1999 Microchip Technology Inc.

PIC16F872
FIGURE 10-1: A/D BLOCK DIAGRAM

CHS<2:0>

100 VAIN (Input voltage) A/D Converter 011 010 001 VDD VREF+ (Reference voltage) PCFG<3:0> 000

RA5/AN4 RA3/AN3/VREF+ RA2/AN2/VREFRA1/AN1 RA0/AN0

VREF(Reference voltage) PCFG<3:0>

VSS

10.1

A/D Acquisition Requirements

For the A/D converter to meet its specified accuracy, the charge holding capacitor (CHOLD) must be allowed to fully charge to the input channel voltage level. The analog input model is shown in Figure 10-2. The source impedance (RS) and the internal sampling switch (RSS) impedance directly affect the time required to charge the capacitor CHOLD. The sampling switch (RSS) impedance varies over the device voltage (VDD), Figure 10-2. The maximum recommended impedance for analog sources is 10 k. As the impedance is decreased, the acquisition time may be decreased. After the analog input channel is selected (changed), this acquisition must be done before the conversion can be started. To calculate the minimum acquisition time, Equation 10-1 may be used. This equation assumes that 1/2 LSb error is used (1024 steps for the A/D). The 1/2 LSb error is the maximum error allowed for the A/D to meet its specified resolution.

To calculate the minimum acquisition time, TACQ, see the PICmicro Mid-Range Reference Manual (DS33023).

DS30221A-page 88

Preliminary

1999 Microchip Technology Inc.

PIC16F872
TABLE 12-2:
Mnemonic, Operands ADDWF ANDWF CLRF CLRW COMF DECF DECFSZ INCF INCFSZ IORWF MOVF MOVWF NOP RLF RRF SUBWF SWAPF XORWF BCF BSF BTFSC BTFSS ADDLW ANDLW CALL CLRWDT GOTO IORLW MOVLW RETFIE RETLW RETURN SLEEP SUBLW XORLW Note 1: f, d f, d f f, d f, d f, d f, d f, d f, d f, d f f, d f, d f, d f, d f, d f, b f, b f, b f, b k k k k k k k k k

PIC16CXXX INSTRUCTION SET


Description Cycles 14-Bit Opcode MSb BYTE-ORIENTED FILE REGISTER OPERATIONS Add W and f AND W with f Clear f Clear W Complement f Decrement f Decrement f, Skip if 0 Increment f Increment f, Skip if 0 Inclusive OR W with f Move f Move W to f No Operation Rotate Left f through Carry Rotate Right f through Carry Subtract W from f Swap nibbles in f Exclusive OR W with f Bit Clear f Bit Set f Bit Test f, Skip if Clear Bit Test f, Skip if Set Add literal and W AND literal with W Call subroutine Clear Watchdog Timer Go to address Inclusive OR literal with W Move literal to W Return from interrupt Return with literal in W Return from Subroutine Go into standby mode Subtract W from literal Exclusive OR literal with W 1 1 1 1 1 1 1(2) 1 1(2) 1 1 1 1 1 1 1 1 1 1 1 1 (2) 1 (2) 1 1 2 1 2 1 1 2 2 2 1 1 1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01 01 01 11 11 10 00 10 11 11 00 11 00 00 11 11 0111 0101 0001 0001 1001 0011 1011 1010 1111 0100 1000 0000 0000 1101 1100 0010 1110 0110 00bb 01bb 10bb 11bb 111x 1001 0kkk 0000 1kkk 1000 00xx 0000 01xx 0000 0000 110x 1010 dfff dfff lfff 0xxx dfff dfff dfff dfff dfff dfff dfff lfff 0xx0 dfff dfff dfff dfff dfff bfff bfff bfff bfff kkkk kkkk kkkk 0110 kkkk kkkk kkkk 0000 kkkk 0000 0110 kkkk kkkk ffff ffff ffff xxxx ffff ffff ffff ffff ffff ffff ffff ffff 0000 ffff ffff ffff ffff ffff ffff ffff ffff ffff kkkk kkkk kkkk 0100 kkkk kkkk kkkk 1001 kkkk 1000 0011 kkkk kkkk C,DC,Z Z TO,PD Z C,DC,Z Z Z Z Z Z Z Z Z 1,2 1,2 2 1,2 1,2 1,2,3 1,2 1,2,3 1,2 1,2 LSb Status Affected Notes

C C C,DC,Z Z

1,2 1,2 1,2 1,2 1,2 1,2 1,2 3 3

BIT-ORIENTED FILE REGISTER OPERATIONS

LITERAL AND CONTROL OPERATIONS

TO,PD C,DC,Z Z

When an I/O register is modified as a function of itself ( e.g., MOVF PORTB, 1), the value used will be that value present on the pins themselves. For example, if the data latch is 1 for a pin configured as input and is driven low by an external device, the data will be written back with a 0. 2: If this instruction is executed on the TMR0 register (and, where applicable, d = 1), the prescaler will be cleared if assigned to the Timer0 Module. 3: If Program Counter (PC) is modified or a conditional test is true, the instruction requires two cycles. The second cycle is executed as a NOP.

Note:

Additional information on the mid-range instruction set is available in the PICmicro Mid-Range MCU Family Reference Manual (DS33023).

DS30221A-page 112

Preliminary

1999 Microchip Technology Inc.

REFERENCES
BIBLIOGRAPHY
Customizing and programming microcontroller-Myke Predcko-TMH

publication-2000 FIM30 user manual. C programming for embedded systems- Kirk Zurell Embedded Microcomputer systemOnathan W.Valvano PHI

publication2000 Microcontroller inter facingDouglas V.hall TMH publication-2000

Automotive Electronics And Computer Controls- Barry Hollem Beak Automotive Electrical Equipment- P.L. Kohli

WEBILOGRAPHY
www.microchips.com www.max232n.com/texas www.mikroelektronika.co.yu/english/product/books/PICbook/0_Uvod. www.wikipedia.com www.atmel.databook.com

Page | 41