Академический Документы
Профессиональный Документы
Культура Документы
PROJECT INTRODUCTION
1.1 INTRODUCTION
Authentication plays a very critical role in security-related applications like e-commerce.
There are a number of methods and techniques for accomplishing this key process. In
this regard, biometrics is gaining increasing attention these days. Security systems,
having realized the value of biometrics, use biometrics for two basic purposes: to verify
or identify users. There is a number of biometrics and different applications need
different biometrics. Biometric is the most secure and convenient authentication tool. It
can not be borrowed, stolen, or forgotten and forging one is practically impossible.
Biometrics measure individual's unique physical or behavioral characteristics to
recognize or authenticate their identity. Common physical biometrics includes
fingerprints, hand or palm geometry, retina, iris, and facial characteristics. Behavioral
characters characteristics include signature, voice, keystroke pattern, and gait. Project
deals with Identification, Authentication and Setup of Security System using FIM 3030
Biometrics and 8051 Microcontroller. Beside Biometrics and 8051 Microcontroller the
major components required are LCD, RTC Section (for real time clock updates), General
purpose PCB, Relay section (for opening and closing of security doors) and Personal
Computer etc. The interfacing between 8051-LCD, 8051-RTC, 8051 - FIM 3030
Biometrics Module (Thumb Geometry recognition) and FIM 3030 Biometric Module
Personal Computer is to be implemented. The details about each module are given in
next sections of this report.
Block diagram:
1
computer. This mode can be selected with the same switches that are mode
switches on system. In this mode system again scans the thumb geometry of the
person making contact with scanner for identification and start matching with the
existing data base maintained during registration mode. If system recognizes the
person than it would grant the access through doors according to his/her
designation else access denied message would be shown on LCD and according
to persons designation access through doors will be provided.
For a student only door number 1 gets open. For a teacher/staff member door
number 1 and 2 gets open. For an administrator all three doors i.e. door no. 1, 2 & 3
gets open for approximately 6seconds. As only single door lock is available, we are
using electrical bulbs for door no. 2 and 3.System also includes real time clock
updates, which updates our system clock continuously. IC protocols are used to
access real time updates from RTC (real time clock) section. Central control unit of
system is Microcontroller 8051, which is also interfaced with RTC Section. Codes for
whole procedure followed by system are retune in Embedded C programming
language. Keil MicroVision3 Integrated Development Environment is used to compile
whole program and Flash magic is used to burn the program code Hex file.
Whole project is divided in 6 chapters. Second chapter describes the
microcontroller 8051s architecture. Third chapter describes the biometrics basics
and the FIM system. Forth chapter describes the fundamentals of serial
communication. Fifth chapter describes the hardware description of whole project.
Summary
The project deals with the identification, authentication and setup of security system
using Biometrics module. Main aim of project is to give access to the user according to
their designation and to maintain data base. Working of project has been discussed.
Finally, this chapter gives the over view of compete project working.
CHAPTER-2
THE 8051 MICROCONTROLLER
2.1 GENERAL
In this chapter, the 8051 family, 8051 assembly language programming, loop and
I/O port programming, 8051 addressing modes, arithmetic instructions, 8051
hardware connection and Intel hex file have been discussed.
Block Diagram:
GND
Ground.
Port 0
Port 0 is an 8-bit open-drain bi-directional I/O port. As an output port, each 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 configured 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 bi-directional 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 bi-directional 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 uses 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 bi-directional I/O port with internal pull-ups. The Port 3 output buffer
scan 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.
RST
Reset input. A high on this pin for two machine cycles while the oscillator is
running resets the device.
ALE/PROG
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 ALEdisable bit has no effect if the microcontroller is in external execution mode.
PSEN
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.
EA/VPP
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
XTAL1
Input to the inverting oscillator amplifier and input to the internal clock operating circuit.
XTAL2
Output from the inverting oscillator amplifier. Oscillator Characteristics XTAL1 and
XTAL2 are the input and output, respectively, of an inverting amplifier which can be
configured for use as an on-chip oscillator, as shown in Figure 1. Either a quartz
crystal or ceramic resonator may be used. To drive the device from an external clock
source, XTAL2 should be left unconnected while XTAL1 is driven as shown.
10
Need of C:
Compiler produces hex file that we download into ROM of microcontroller. The
size of hex file produced by compiler is one of the main concerns of
microcontroller programmers for two reasons:
1. Microcontroller has limited on -chip ROM
2. The code space for 8051 is limited to 64 KB
Programming in assembly language is tedious and time consuming. C is a high
level programming language that is portable across many hardware architectures.
11
Summary
In this chapter the 8051 Families, Architecture of 8051 Microcontroller, Pin
description and Embedded C programming basics have been discussed.
12
CHAPTER-3
BIOMETRICS
3.1 INTRODUCTION
Humans recognize each other according to their various characteristics for ages.
We recognize others by their face when we meet them and by their voice as we
speak to them. Identity verification (authentication) in computer systems has
been traditionally based on something that (key, magnetic or chip card) or (PIN,
password). Things like keys or cards, however, tend to get stolen or lost and
passwords are often forgotten or disclosed.
To achieve more reliable verification or identification we should use something that
really characterizes the given person. Biometrics offer automated methods of identity
verification or identification on the principle of measurable physiological or behavioral
characteristics such as a fingerprint or a voice sample. The characteristics are
measurable and unique. These characteristics should not be duplicable, but it is
unfortunately often possible to create a copy that is accepted by the biometric system as
a true sample. This is a typical situation where the level of security provided is given as
the amount of money the impostor needs to gain an unauthorized access. We have seen
biometric systems where the estimated amount required is as low as $100 as well as
systems where at least a few thousand dollars are necessary.
Biometric systems can be used in two different modes. Identity occurs when
the user claims to be already enrolled in the system (presents an ID card or login
name); in this case the biometric data obtained from the user is compared to the
users data already stored in the database. Identification occurs when the identity
of the user is a priori unknown. In this case the users biometric data is matched
against all the records in the database as the user can be anywhere in the
database or he/she actually does not have to be there at all.
13
dynamics).
Biometric systems from the first category are usually more reliable and accurate
as the physiological characteristics are easier to repeat and often are not affected by
current (mental) conditions such as stress or illness. One could build a system that
requires a 100%match each time. Yet such a system would be practically useless, as
only very few users (if any) could use it. Most of the users would be rejected all the
time, because the measurement results never are the same. We have to allow for
some variability of the biometric data in order not to reject many authorized users.
However, the greater variability we allow the greater is the probability that an impostor
with a similar biometric data will be accepted as an authorized user. The variability is
usually called a (security) threshold or a (security) level. If the variability allowed is small
then the security threshold or the security level is called high and if we allow for greater
variability then the security threshold or the security level is called low.
can proceed any further we need to obtain the digitalized fingerprint. The traditional
method uses the ink to get the fingerprint onto a piece of paper. This piece of paper is
then scanned using a traditional scanner. This method is used only rarely today when an
old paper-based database is being digitalized, scanning a fingerprint found on a scene of
a crime is being processed or in law enforcement AFIS systems. Otherwise modern live
fingerprint readers are used. They do not require the ink anymore. These live fingerprint
readers are most commonly based on optical, thermal, silicon or ultrasonic principles.
16
17
the small size. The fingerprint bitmap obtained from the silicon reader is affected
by the finger moisture as the moisture significant influences the capacitance. This
often means that too wet or dry finger do not produce bitmaps with a sufficient
quality and so people with unusually wet or dry finger do not produce bitmaps
with a sufficient quality and so people with unusually wet or dry finger have
problems with these silicon fingerprint readers.
Both optical and silicon fingerprint readers are fast enough to capture and
display the fingerprint in real time. The typical resolution is around 500
DPI.Ultrasonic fingerprint readers are the newest and least common. They use
ultrasound to monitor the finger surface.
The user places the finger on a piece of glass and the ultrasonic sensor moves
and reads whole the fingerprint. This process takes one or two seconds. Ultrasound
is not disturbed by the dirt on the finger so the quality of the bitmap obtained is
usually fair. Ultrasonic fingerprint readers are manufactured by a single company
nowadays. This company (Ultra Scan Inc.) owns multiple patents for the ultrasonic
technology. The readers produced by this company are relatively big (15 x15 x 20
centimeters), heavy, noisy and expensive (with the price around $2500). They are
able to scan fingerprint at 300, 600 and 1000 DPI (according to the model).
Fingerprint processing Fingerprints are not compared and usually also not stored as
bitmaps. Fingerprint matching techniques can be placed into two categories: minutiae-based
and correlation based. Minutiae-based techniques find the minutiae points first and then
map their relative placement on the finger. Minutiae are individual unique character-minutiae
istics within the fingerprint pattern such as ridge endings, bifurcations, divergences, dots or
islands (see the picture on the following page). In the recent years automated fingerprint
comparisons have been most often based on minutiae.
The problem with minutiae is that it is difficult to extract the minutiae points accurately
when the fingerprint is of low quality. This method also does not take into account the
global pattern of ridges and furrows. The correlation-based method is able to
18
Loop
Arch
Whorl
19
The speed of the decision sometimes depends on the security level and the
negative answer very often takes longer time than the positive one (sometimes
even 10 times more). There is no direct dependency between the speed and
accuracy of the matching algorithm according to our experience. We have seen
fast and accurate as well as slow and less accurate matching algorithms.
The minutiae found in the fingerprint image are also used to store the fingerprint for
future comparisons. The minutiae are en- templates coded and often also compressed.
The size of such a master template usually is between 24 bytes and one kilobyte.
matches to a small fraction. This means that the fingerprint technology can be used for
identification even within large databases. Fingerprint identification technology has
undergone an extensive research and development since the seventies. The initial
reason for the effort was the response to the FBI requirement for an identification search
system. Such systems are called Automated Fingerprint Identification Systems (AFIS)
and are used to identify individuals in large AFIS databases (typically to find the offender
of a crime according to a fingerprint found at the crime scene or to identify a person
whose identity is unknown). AFIS systems are operated by professionals who manually
intervene the minutiae extraction and matching process and thus their results are really
excellent. The typical access control systems, on the other side, are completely
automated. Their accuracy is slightly worse. The quality of the fingerprint image obtained
by an automated fingerprint reader from an inexperienced (non-professional) user is
usually lower. Access control systems Fingerprint readers often do not show any
fingerprint preview and so the users do not know if the positioning and pressure of the
finger is correct. The automatic minutiae extraction in a lower quality image is not perfect
yet. Thus the overall accuracy of such a system is lower.
Some newer systems are based not only on minutiae extraction; they use the length and
position of the papillary lines as well. A few system take into account even pores (their spatial
distribution), pores but the problem with pores is that they are too dependent on the
fingerprint image quality and finger pressure. Most of the biometric fingerprint systems use
the fingerprint reader to provide for the fingerprint bitmap image only, whole the processing
and matching is done by a software that runs on a computer (the software is often available
for Microsoft Windows operating systems only). There are currently only very few fingerprint
devices that does all the processing by the hardware.
The manufacturers of the fingerprint readers used to deliver the fingerprint processing
software with the hardware. Today, the market specializes. Even if it is still possible to
buy a fingerprint reader with a software package (this is the popular way especial for the
low-end devices for home or office use) there are many manufacturers that produce
fingerprint hardware only (e.g. fingerprint silicon chips by Thomson) or software
companies that offer device-independent fingerprint processing software. Device
21
22
As soon as the user is enrolled, he/she can use the system for successful
authentications or identification. This process is typically fully automated and
takes the following steps:
Acquisition(s) The current biometric measurements must be obtained for the system
to be able to make the comparison with the master template. These subsequent acquisitions
of the users biometric measurements are done at various places where the authentication of
the user is required. This might be users computer in the office, an ATM machine or a
sensor in front of a door. For the best performance the kind of the input device used at the
enrollment and for the subsequent acquisitions should be the same. Other conditions of use
should also be as similar as possible with the conditions at
23
the enrollment. These include the background (face recognition), the background noise
(voice verification) or the moisture (fingerprint). While the enrollment is usually guided by
trained personnel, the subsequent biometric measurements are most commonly fully
automatic and unattended. This brings up a few special issues. Firstly, the user needs to
know how to use the device to provide the sample in the best quality. This is often not easy
because the device does not show any preview of the sample obtained, so for example in
the case of a fingerprint reader, the user does not know whether the positioning of the finger
on the reader and the pressure is correct. Secondly, as the reader is left unattended, it is up
to the reader to check that the measurements obtained really belong to live persons (the
aliveness property). For example, a fingerprint reader aliveness test should tell if the
fingerprint it gets is from a live finger, not from a mask that is put on top of a finger. Similarly,
an iris scanner should make sure that the iris image it is getting is from a real eye not a
picture of an eye. In many biometric techniques (e.g. fingerprinting) the further processing
trusts the biometric hardware to check the aliveness of the person and provide genuine
biometric measurements only. Some other systems (like the face recognition) check the
users aliveness in software (the proper change of a characteristic with time). No matter
whether hardware or software is used, ensuring that the biometric measurements are
genuine is crucial for the system to be secure. Without the assumption of the genuine data
obtained at the input we cannot get a secure system. It is not possible to formally prove that
a reader provides only genuine measurements and this affects also the possibility of a formal
proof attacks and of the security of whole the biometric system. The aliveness test of a
person is not an easy task. New countermeasures are always to be followed by newer
attacks. We do not even know how efficient the current countermeasures are against the
attacks to come. Biometric readers are not yet the main target of sophisticated criminals. But
then we can expect a wave of professional attacks. We have seen a few biometric readers
where the estimated cost of an attack is as low as a few hundred dollars. The security of
such a system is really poor Creation of new characteristics the biometric measurements
obtained in the previous step is processed and new characteristics are created. The process
of feature extraction is basically the same as in the case of the enrollment. Only a single
biometric sample is usually available. This might mean that the number or quality of the
features
24
3.2 FIM30N
3.2.1
General Descriptions
And more
25
Hardware Specification
Operation Specification
26
Figure 3.7 RS-232C communication data consist of 8-bit data, no parity, 1-bit
start-bit and 1-bit stop-bit.
3.2.5 Operation
1. Communication
FIM30N
has RS-232
serial
communicates at the same time. These ports support 6 baud rate modes such as
9600, 14400, 19200, 38400, 57600, and 115200 bps. FIM30N follows NITGEN
Serial Communication protocol.
FIM30N supports 3 function key inputs such as Enroll Key, delete Key, and
Identify Key. Using these keys without serial communication, enrollment,
deletion, all deletion and identification operating can be executed.
28
Summary
In this chapter the basics of Biometrics and its various types has been discussed.
The specifications and working of FIM 3030 Nitgen Module with working Ev tool
have been understood thoroughly.
.
29
CHAPTER-4
SERIAL COMMUNICATION
4.1BASICS OF SERIAL COMMUNICATION
Computer transfers data in two ways these are
1. Parallel: Often 8 or more lines (wire conductors) are used to transfer data
to a device that is only few feet away.
2. Serial: To transfer to a device located many meters away, the serial
method is used. The data is sent one bit at a time .
30
Modulator/demodulator.
Serial data communication uses two methods. First are synchronous method
transfers a block of data at a time. Second is an asynchronous method transfer a
single byte at a time.
It is possible to write software to use either of these methods, but the programs
can be tedious and long. There are special IC chips made by many manufacturers
for serial communications namely UART (universal asynchronous Receivertransmitter) & USART (universal synchronous-asynchronous Receiver-transmitter).
31
4.2MAX232
A line driver required to convert RS232 voltage levels to TTL levels, and vice versa. It
includes a capacitive voltage generator to supply TIA/EIA-232-F voltage levels from a
32
Pin Diagram
33
8051 has two pins that are used specifically for transferring and receiving data
serially. These two pins are called TxD and RxD and are part of the port 3 group
(P3.0 and P3.1).These pins are TTL compatible; therefore, they require a line
driver to make them RS232 compatible. To allow data transfer between the PC
and an 8051 system without any error, we must make sure that the baud rate of
8051 system matches the baud rate of the PCs COM port.
SCON Register: SCON is an 8-bit register used to program the start bit, stop
bit, and data bits of data framing, among other things.
SM0, SM1: They determine the framing of data by specifying the number of bits
per character, and the start and stop bits.
4.4IC
Philips Semiconductors developed the IC bus over 20 years ago and has an extensive
collection of specific use and general purpose devices. Originally, the IC bus was designed
to link a small number of devices on a single card, such as to manage the tuning of a car
radio or TV. The maximum allowable capacitance was set at 400 pF to allow proper rise and
fall times for optimum clock and data signal integrity with a top speed of 100 kbps. In 1992
the standard bus speed was increased to 400 kbps, to keep up with the ever-increasing
performance requirements of new ICs. The 1998 IC specification,
35
increased top speed to 3.4 Mbits/sec. All IC devices are designed to be able to
communicate together on the same two-wire bus and system functional
architecture is limited only by the imagination of the designer.
But while its application to bus lengths within the confines of consumer products such as
PCs, cellular phones, car radios or TV sets grew quickly, only a few system integrators were
using it to span a room or a building. The IC bus is now being increasingly used in multiple
card systems, such as a blade servers, where the IC bus to each card needs to be
isolatable to allow for card insertion and removal while the rest of the system is in operation,
or in systems where many more devices need to be located onto the same card, where the
total device and trace capacitance would have exceeded 400 pF.
New bus extension & control devices help expand the IC bus beyond the 400 pF limit
of about 20 devices and allow control of more devices, even those with the same
address. These new devices are popular with designers as they continue to expand and
increase the range of use of IC devices in maintenance and control applications.
4.4.1 Features
1. IC Only two bus lines are required: a serial data line (SDA) and a serial
clock line (SCL).
2. Each device connected to the bus is software addressable by a unique
address and simple master/slave relationships exist at all times; masters
can operate as master-transmitters or as master-receivers.
3. Its a true multi-master bus including collision detection and arbitration to prevent
data corruption if two or more masters simultaneously initiate data transfer.
36
Provide on the CLOCK (SCL) wire a clock signal. It will be used by all the ICs as
the reference time at which each bit of DATA on the data (SDA) wire will be
correcting (valid) and can be used. The data on the data wire (SDA) must be valid
at the time the clock wire (SCL) switches from low to 'high' voltage.
4. Put out in serial form the unique binary 'address'(name) of the IC that it
wants to communicate with.
5. Put a message (one bit) on the bus telling whether it wants to SEND or
RECEIVE data from the other chip.
6. Ask the other IC to ACKNOWLEDGE (using one bit) that it recognized its
address and is ready to communicate.
7. After the other IC acknowledges all is OK, data can be transferred.
8. The first IC sends or receives as many 8-bit words of data as it wants. After
every 8-bit data word the sending IC expects the receiving IC to
acknowledge the transfer is going OK.
9. When all the data is finished the first chip must free up the bus and it does
that by a special message called 'STOP'. It is just one bit of information
transferred by a special wiggling of the SDA/SCL wires of the bus.
The bus rules say that when data or addresses are being sent, the DATA wire is only
allowed to be changed in voltage (so, '1', '0') when the voltage on the clock line is LOW.
37
The 'start' and 'stop' special messages BREAK that rule, and that is how they are
recognized as special.
Any device with the ability to initiate messages is called a master. It might know
exactly what other chips are connected, in which case it simply addresses the one it
wants, or there might be optional chips and it then checks whats there by sending
each address and seeing whether it gets any response (acknowledge).
38
Multi-master - the ability for more than one master to co-exist on the bus at the
same time without collision or data loss.
Arbitration - the prearranged procedure that authorizes only one master at a
time to take control of the bus.
Synchronization - the prearranged procedure that synchronizes the clock
signals provided by two or more masters.
SDA - data signal line (Serial DAta)
SCL - clock signal line (Serial CLock)
39
(serial data) and SCL (serial clock). These two bus wires have the same
configuration. They are pulled-up to the logic high level by resistors connected
to a single positive supply, usually +3.3 V or +5 V but designers are now moving
to +2.5 V and towards 1.8 V in the near future.
All the connected devices have open-collector (open-drain for CMOS - both terms
mean only the lower transistor is included) driver stages that can transmit data by
pulling the bus low, and high impedance sense amplifiers that monitor the bus
voltage to receive data. Unless devices are communicating by turning on the lower
transistor to pull the bus low, both bus lines remain high. To initiate communication
a chip pulls the SDA line low. It then has the responsibility to drive the SCL line with
clock pulses, until it has finished, and is called the bus master.
41
42
3. C (CHANGE) - while the SCL clock line is low, the data bit to be transferred
can be applied to the SDA data line by a transmitter. During this time, SDA
may change its state, as along as the SCL line remains low.
4. D (DATA) - a high or low bit of information on the SDA data line is valid
during the high level of the SCL clock line. This level must be maintained
stable during the entire time that the clock remains high to avoid
misinterpretation as a Start or Stop condition.
5. P (STOP) - data transfer is terminated by a stop condition, (not a stop bit).
This occurs when the level on the SDA data line passes from the low state
to the high state, while the SCL clock line remains high. When the data
transfer has been terminated, the bus is free once again.
43
4.5LCD Unit
A liquid crystal display (LCD) is a thin, flat
44
PIN
SYMBOL
I/
DESCRIPTIONS
O
1
VSS
-----
GROUND
-----
-----
--2
VCC
---
VEE
---I
RS
5
6
8TO 14
R/W
E
DB0 TO DB14
I
I/O
I/O
45
(IDE) MicroVision3
Keil Software development tools are used to create products for practically every
industry: consumer electronics, industrial control, networking, office automation,
automotive, space exploration. Micro Vision Two is a second generation IDE that
simplifies project development and application testing. With Micro Vision Two, we
can easily create embedded applications in a mixture of C and assembly. Real-time
applications benefit from our highly optimized C libraries and real-time kernels.
MicroVision3 provides a centralized front-end interface for the compiler, assembler, linker,
debugger, and other development tools. The Project Window in MicroVision3 displays the
current target, groups, and source files that comprise our project. Rather than creating a
single target for each project, MicroVision2allows multiple targets for each
46
project file. So, with a single project file, we can create a target for simulating, a target
for our emulator, and a production target for programming into EPROM {E-PROM}.
Each target is composed of one or more groups which are in turn composed of
one or more source files. Groups let us divide the source files into functional blocks
or assign source files to different team members. Options may be configured at each
level of the project. This gives us a great deal of freedom and flexibility when
organizing our application. In addition to the on-line help, MicroVision3 provides online versions of the development tool manuals as well as the device manuals.
Keil C Compilers are based on the ANSI standard and include extensions
necessary to support the 8051, 251, and 166 microcontroller families. The
optimizer in our compiler is tuned for each specific architecture and provides the
highest level of code density and execution speed.
The Keil C compilers give full us control over our embedded platform. We decide
which register banks are used, when to access certain memory areas, which
variables are stored in bits, when and how to use special function registers, and so
on. Without ever writing any assembly code we may even write interrupt service
routines in C. Code generated by the Keil C Compiler compares with that of a
professional assembly programmer. This is due to the level of optimizations that are
performed. One such optimization is global register optimization.
By analyzing which registers are used in each function, the compiler can better
optimize register usage program-wide and generate smaller, faster programs. This is
accomplished by iterative compilation steps during the make process.
The MicroVision3 debugger is designed to make testing your programs as efficient as
possible. While editing and debugging your programs, text and code attributes are
displayed in the source window. As you step through your program, the current line is
marked with a yellow arrow. Code coverage shows you which lines of your program
have been executed. Green means the line has been run. Grey means is has not.
47
Breakpoints are clearly marked in the source window. Red for enabled, white
for disabled. These attributes make following program flow easier than ever. The
features of the Micro Vision Two debugger dont stop there. When simulating
your programs, you not only get source-level, symbolic simulation. You also get
on-chip peripheral simulation. Dialog boxes display the condition of all
peripherals and on-chip components.
The debugger supports a C macro language that you may use to simulate
external hardware. We may create functions to simulate digital and analog input
signals for your application. This lets you get straight to testing and debugging before
the target hardware is available. With nothing more than the simulator and the macro
language, you can create a high-fidelity simulation of your end product.
Summary
In this chapter we have discussed the basics of serial communication. MAX232
has been discussed with it pin configuration and characteristics. The various
registers used in serial communication have explained. The IC protocols used
for communication have explained. The LCD unit also discussed here.
CHAPTER-5
48
HARDWARE DESIGN
5.1 RTC (REAL TIME CLOCK)
5.1.3 Features
49
1. Real-Time Clock (RTC) Counts Seconds, Minutes, Hours, Date of the Month,
Month, Day the week, and Year with Leap-Year Compensation Valid Up to 2100.
50
51
J26
VCC
J1
Q2
R8
L
VCC
5
1234567812
R1
1
1
2
3
4
5
6
7
12
3
14
J1
SW
1
2
3
4
5
6
7
8
F0
SW1
CON
C7
J9
J6
1
2
3
4
5
6
7
8
9
3
38
37
36
35
34
33
32
J5
8
22
. 1 /A D 1
P 2 .1 /A 9
23
. 2 /A D 2
P 2 .2 /A 1 0
24
. 3 /A D 3
P 2 .3 /A 1 1
25
. 4 /A D 4
P 2 .4 /A 1 2
26
. 5 /A D 5
P 2 .5 /A 1 3
27
. 6 /A D 6
P 2 .6 /A 1 4
28
. 7 /A D 7
P 2 .7 /A 1 5
. 0 /A D 0
2
3
4
5
6
7
8
C8
C2
C AP
R1
1
18
.0
.1
.2
.3
.4
.5
.6
.7
P 3 . 0 /R X D
11
P 3 .1 /T X D
12
13
P 3 .2 /IN T 0
P 3 .3 /IN T 1
15
P 3 .5 /T 1
16
P 3 .6 /W R
17
R3
1
J3
1 2
T1
ATTE
RY
29
A L E /P R O G
L2
1
5 2
3
4
PSEN
C6
J1
1
12
181134526
310
X T AL1
X TA
J22
1 0
LS 3
P 3 . 7 /R D
C3
P 3 .4 /T 0
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
P 2 .0 /A 8
C O N 91
C9
CONNTRBLK2
2 1
J2
J7
U1
CONNTRBLK8
F0
1
5 2
3
4
Q1
C ON3
J23
2 0
1111 111
1
2
654321 987654321
0
1234
1
2
R9
J8
J24
J
S
+12V ++ --V
INIINI
CC
NN12
22
A /V P
C1
R 1RT1TCC
C AP
U TUUT U
OOOO
RRTT
C5
J19
C5
MAX 2 3 2
U
J1
1
DR
TT
3
5
AT 8 9
1212
1
P
2E
TOR
S IS
1
2
123456
R E S IS T O R L E D
J11
R4
R5
J17
J12
J13
2
4
6
1
3
5
7
24
24
24
R3
24
R2
D1
R6
CON6
J14
<
13
13
13
T itle
VCC
13
C10
4
5
6
C4
LED
52
ize
A
a te :
<
T itle
>
cu
nt
Rev
<Rev Code>
oc>
F rid a y
,A p ril
2009
Sheet
of 1
Often your relay driver can be very simple, using little more than an NPN or PNP
transistor to control the coil current. All your low-power circuitry has to do is provide
53
enough base current to turn the transistor on and off, as you can see from
diagrams A and B.
In A, NPN transistor Q1 (say a BC337 or BC338) is being used to control a
relay (RLY1) with a 12V coil, operating from a +12V supply. Series base resistor
R1 is used to set the base current for Q1, so that the transistor is driven into
saturation (fully turned on) when the relay is to be energized. That way, the
transistor will have minimal voltage drop, and hence dissipate very little power as
well as delivering most of the12V to the relay coil.
Summary
In this chapter general descriptions of all the important section have been
given. Circuit diagram of related sections and important portion have also been
given. Pin descriptions of various ICs are given for proper understanding of
connections. For connections OrCAD schematic design is given. Working of
sections like RTC and relay have been explained with the help a block diagram.
54
CHAPTER-6
RESULTS AND DISCUSSION
6.1 Result and Conclusion
The project report began with the introduction to the basic functioning of
Microcontroller based Identification, Authentication and Setup of Security system.
Project deals with Microcontroller as central controlling units for various other
sections like Biometrics FIM 3030 module, RTC (real time clock) section, LCD,
Relay section, push button section etc. Interfacing between all sections required for
system and microcontroller P89c51 has been done successfully. For registration
interfacing between biometrics module and personal computer has also been done
successfully. When a new person who is not register with the system try to have
access, system refuses access and displays message Unidentified FP. For the
person who is registered with the system can get access through doors according to
their designation. Doors opening and closing has been achieved successfully.
There are many mature biometric systems are available now. Proper design and
implementation of the biometric system can indeed increase the overall security;
especially the smartcard based solutions seem to be very promising. Making a secure
biometric systems is, however, not as easy as it might appear. The word biometrics is
very often used as a synonym for the perfect security. This is a misleading view. There
are numerous conditions that must be taken in account when designing a secure
biometric system. First, it is necessary to realize that biometrics is not secrets. This
implies be careful that biometric measurements cannot be used as capability tokens and
it is not secure to generate any cryptographic keys from them. Second, it is necessary to
trust the input device and make the communication link secure. Third, the input device
needs to check the live ness of the person being measured and the device itself should
be verified for example by a challenge-response protocol.
55
Attendance system module can also be interfaced with the same existing
system which keeps the record (Identity, Time, Date etc.) of that person and
corresponding data base can be maintained. IC 74LS244 can be used for
multiplexing RxD and TxD to creating the hardware for attendance system.
56
REFERENCES
1. Muhammad Ali Mazidi, Janice Gillispi Mazidi and Rolin D. Mckinlay, The
8051 Microcontroller and Embedded Systems: Using assembly and C 2nd
Edition, Delhi: Pearson Prentic Hall, 2006.
http://www.nxp.com/acrobat_download/datasheets/P89CV51RB2_RC2_RD2_2.p d f
http://www.atmel.com/dyn/resources/prod_documents/doc0265.pd f
http://www.info.bioenabletech.com/Products/nitgen/fim3030lv_hv/FIM30NDataS
heetv1.01.pdf
http://www.nxp.com/acrobat_download/applicationnotes/AN10216_1.pd f
2. http:/www.fi.muni.cz/reports/files/older/FIMU-RS-2000-08.pdf
http://www.maxim-ic.com/search/parts.mvp?pn=max220-max249
http://www.datasheets.maxim-ic.com/en/ds/DS1307.pdf
http://www.misterfixit.com/switches/relay.ht m
http://www.rentron.com/PicBasic/relay-circuit.gif
http://www.lcdinterfacing.googlepages.com/lcdprogrammingwith805 1
http://www.mcu-programming.blogspot.com/2006/09/lcd-interfacing.htm l
http://www.atmel.com/litrature
http://www.en.wikipedia.org/wiki/Fingerprint_recognitio n
http://
www.sparkfun.com/datasheets/Sensors/Biometric/FIM3040LV%20Data%2 0
sheet.pdf
http://www.keil.com/uvision/
http://www.electrofriends.com/wp-content/uploads/2008/11/pin-8051.gi f
http://www.rentron.com/PicBasic/relay-circuit.gif
3. http://daneshnameh.roshd.ir/mavara/img/daneshnameh_up/7/79/max232a.gif
57