SlideShare uma empresa Scribd logo
1 de 77
RFID Based System For Healthcare Service

1. INTRODUCTION
1.1 Objective
The main objective of this project is to provide the patient’s information to the
Doctors.
Although substantial progress was made in improving the sharing of patient medical
information among healthcare providers, professionals still need to address the issue of
efficient electronic medical records. Thus, real-time information presents a persistent
challenge to the emergency response community. In emergency situations, particularly with
unconscious, incoherent and unaccompanied patients, providing emergency physicians with a
patient’s accurate medical history could be the difference between life and death. The RFID
technology has penetrated the healthcare sector due to its increased functionality, low cost,
high reliability and easy-to-use capabilities. As the present paper demonstrates, our major aim
was to design an RFID-based system architecture and data model that would provide efficient
means to perform essential information management for emergency care across hospital and
country boundaries.

1.2 Approach
RFID based healthcare system utilizes AT89S52 microcontroller, RFID reader, RFID
tags, keypad, Liquid Crystal Display, RS232. In this system we are using RFID tags for
storing the patient’s information. To write or read the information to the tag or from the tag
we use the RFID reader. To enter the information we are using keypad and for display
purpose we are using Liquid Crystal Display.

1.3 Principle of Operation
In this system we have to provide the information about the patients to the doctors in
terms of electronic records. In this when we put the tag before the reader it reads the
information present in the tag and send it to the microcontroller through the serial
communication RS232. The microcontroller sends the information to the LCD to display the
information and if we want to change the information then we can use the keypad.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

EmbeddedSystems
Embedded System is a combination of hardware and software used to achieve a single
specific task. An embedded system is a microcontroller-based, software driven, reliable, realtime control system, autonomous, or human or network interactive, operating on diverse
physical variables and in diverse environments and sold into a competitive and cost conscious
market.
An embedded system is a special-purpose computer system designed to perform a dedicated
function. Unlike a general-purpose computer, such as a personal computer, an embedded
system performs one or a few pre-defined tasks, usually with very specific requirements, and
often includes task-specific hardware and mechanical parts not usually found in a generalpurpose computer. Since the system is dedicated to specific tasks, design engineers can
optimize it, reducing the size and cost of the product. Embedded systems are often massproduced, benefiting from economies of scale.
Physically, embedded systems range from portable devices such as digital watches and MP3
players, to large stationary installations like traffic lights, factory controllers, or the systems
controlling nuclear power plants. In terms of complexity embedded systems run from simple,
with a single microcontroller chip, to very complex with multiple units, peripherals and
networks mounted inside a large chassis or enclosure.
Mobile phones or handheld computers share some elements with embedded systems, such as
the operating systems and microprocessors which power them, but are not truly embedded
systems themselves because they tend to be more general purpose, allowing different
applications to be loaded and peripherals to be connected.

Characteristics of Embedded System:
•

An embedded system is any computer system hidden inside a product other than a
computer

•

There will encounter a number of difficulties when writing embedded system
software in addition to those we encounter when we write applications
1. Throughput – Our system may need to handle a lot of data in a short period of
time.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
2. Response–Our system may need to react to events quickly
3. Testability–Setting up equipment to test embedded software can be difficult
4. Debugability–Without a screen or a keyboard, finding out what the software is
doing wrong (other than not working) is a troublesome problem
5. Reliability – embedded systems must be able to handle any situation without
human intervention
6. Memory space – Memory is limited on embedded systems, and you must make
the software and the data fit into whatever memory exists
7. Program installation – you will need special tools to get your software into
embedded systems
8. Power consumption – Portable systems must run on battery power, and the
software in these systems must conserve power
9. Processor hogs – computing that requires large amounts of CPU time can
complicate the response problem
10. Cost – Reducing the cost of the hardware is a concern in many embedded system
projects; software often operates on hardware that is barely adequate for the job.
•

Embedded systems have a microprocessor/ microcontroller and a memory. Some
have a serial port or a network connection. They usually do not have keyboards,
screens or disk drives.

1.4 Applications


To provide the information about the patients to the doctors



This equipment can be employed in any organization, industry for recognition
purpose.



This can also be used in Payment systems such as Road tolls, Electronic tickets.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

2. BLOCK DIAGRAM AND DESCRIPTION
2.1 Block Diagram

Figure 2.1 Block Diagram of Project

2.2 Block DiagramDescription
The block diagram and its brief description are explained in block wise and this consists of
following blocks
 Microcontroller
 RFID Module
 RS-232 Cable, MAX-232.
 LCD (Liquid Crystal Display)
 Power supply
 Key pad

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

AT89S52Microcontroller
The major heart of this project is AT89s52 microcontroller, the reasons why we selected this
in our project?,. The AT89S52 provides the following standard features: 8K bytes of Flash,
256 bytes of RAM, 32 I/O lines, Watchdog timer, two data pointers, three 16-bit
timer/counters, a six-vector two-level interrupt architecture, a full duplex serial port, on-chip
oscillator, and clock circuitry. In addition, the AT89S52 is designed with static logic for
operation down to zero frequency and supports two software selectable power saving modes.
The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port, and
interrupt system to continue functioning. The Power-down mode saves the RAM con-tents
but freezes the oscillator, disabling all other chip functions until the next interrupt or
hardware reset.

RFID Module
Radio Frequency Identification (RFID) is a general term that is used to describe a
system that transmits the identity (in the form of a unique serial number) of an object
wirelessly, using radio waves. RFID is evolving as a major technology enabler for tracking
goods and assets around the world. A great deal of attention is being paid to RFID by the IT
industry, media and analysts. According to studies by Benchmark Research, in 2004 three
quarters of manufacturing companies are now aware of RFID, of which a third are already
using, piloting or investigating RFID applications for their organizations.
Anticipating the potential benefits of RFID, many of the world’s major retailers are
trialing RFID tagging for pallets and cases shipped into and out of their distribution centers.
The consequence of this RFID activity in the retail sector is likely to impact on around
200,000 manufacturers and suppliers globally, and will fuel the market for hardware and
software to support RFID.

LCD
A liquid crystal is a material (normally organic for LCDs) that will flow like a liquid
but whose molecular structure has some properties normally associated with solids. The
Liquid Crystal Display (LCD) is a low power device. The power requirement is typically in
the order of microwatts for the LCD. However, an LCD requires an external or internal light

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
source. It is limited to a temperature range of about 0C to 60C and lifetime is an area of
concern, because LCDs can chemically degrade
There are two major types of LCDs which are:
1. Dynamic-scattering LCDs
2. Field-effect LCDs
Field-effect LCDs are normally used in such applications where source of energy is a
prime factor (e.g., watches, portable instrumentation etc.).They absorb considerably less
power than the light-scattering type. However, the cost for field-effect units is typically
higher, and their hoight is limited to 2 inches. On the other hand, light-scattering units are
available up to 8 inches in height. Field-effect LCD is used in the project for displaying the
appropriate information.

Power supply
The Entire Project needs power for its operation. However, from the study of this project it
comes to know that we supposed to design 5v and 12v dc power supply. So by utilizing the
following power supply components, required power has been gained. (230/12v (1A and
500mA) – Step down transformers, Bridge rectifier to converter ac to dc, booster capacitor
and +5v (7805) and +12v (7812) regulator to maintain constant 5v & 12 supply for the
controller circuit and Fingerprint module).

Keypad
Keypads are the most widely used input devices of the AT89S52, and a basic
understanding of them is essential. At the lowest level, keyboards are organized in a matrix of
rows and columns. The CPU accesses both rows and column through ports; therefore, with 8bit ports, an 4*4 matrix of keys can be connected to a microprocessor. When a key pressed, a
row and column make a connect; otherwise, there is no connection between row and column.
In IBM PC keyboards, a single microcontroller (consisting of microprocessor, RAM and
EPROM, and several ports all on a single chip) takes care of software and hardware
interfacing of keyboard. In such systems it is the function of programs stored in the EPROM
of microcontroller to scan the keys continuously, identify which one has been activated, and
present it to the motherboard. In this section we look at the mechanism by which the
AT89S52 scans and identifies the key.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

3. RFIDMODULE

3.1 History of RFID
In a very interesting article, the San Jose Mercury News tells us about Charles Walton, the
manbehind the radio frequency identification technology (RFID). Since his first patent about
it in1973, Walton, now 83 years old, collected about $3 million from royalties coming from
hispatents. Unfortunately for him, his latest patent about RFID expired in the mid-1990s. So
he willnot make any money from the billions of RFID tags that will appear in the years to
come. But hecontinues to invent and his latest patent about a proximity card with
incorporated PIN codeprotection was granted in June 2004.

3.2 RFID
RFID is short for Radio Frequency Identification. Generally a RFID system consists of 2
parts.A Reader, and one or more Transponders, also known as Tags. RFID systems evolved
frombarcode labels as a means to automatically identify and track products and people. You
willbe generally familiar with RFIDsystems as seen in

1. Access Control
RFID Readers placed at entrances that require a person to pass their proximity card (RFtag)
to be” read” before the access can be made.

2. Contact less Payment Systems
RFID tags used to carry payment information. RFIDs are particular suited to electronicToll
collectionsystems. Tags attached to vehicles, or carried by people transmit payment
information toa fixedreader attached to a Toll station. Payments are then routinely deducted
from a usersaccount, orinformation is changed directly on the RFID tag.

3. Product Tracking and Inventory Control
RFID systems are commonly used to track and record the movement of ordinary items such
as library books, clothes, factory pallets, electrical goods and numerous items.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Working of RFID

Figure 3.2 Working of RFID
Shown above is a typical RFID system. In every RFID system the transponder Tags
containinformation. This information can be as little as a single binary bit , or be a large array
of bitsrepresenting such things as an identity code, personal medical information, or literally
any typeof information that can be stored in digital binary format.Shown is a RFID
transceiver that communicates with a passive Tag. Passive tags have nopower source oftheir
own and instead derive power from the incident electromagnetic field. Commonly theheart of
each tagis a microchip. When the Tag enters the generated RF field it is able to draw
enoughpower from the field toaccess its internal memory andtransmit its stored
information.When the transponder Tag draws power in this way the resultant interaction of
the RF fieldscauses the voltageat the transceiver antenna to drop in value. This effect is
utilized by the Tag to communicate itsinformation tothe reader. The Tag is able to control the
amount of power drawn from the field and bydoingso it can modulatethe voltage sensed at
the Transceiver according to the bit pattern it wishes to transmit.

3.3 Componentsof RFID
A basic RFID system consists of three components:
1. An antenna or coil
2. A transceiver (with decoder)
3. A transponder (RF tag) electronically programmed with unique information
These are described below:
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

1. Antenna
The antenna emits radio signals to activate the tag and read and write data to it. Antennas are
theconduits between the tag and the transceiver, which controls the system's data acquisition
andcommunication. Antennas are available in a variety of shapes and sizes; they can be built
into adoor frame to receive tag data from persons or things passing through the door, or
mounted on aninterstate tollbooth to monitor traffic passing by on a freeway. The
electromagnetic fieldproduced by an antenna can be constantly present when multiple tags
are expected continually. Ifconstant interrogation is not required, a sensor device can activate
the field.Often the antenna is packaged with the transceiver and decoder to become a
reader(a.k.a.interrogator), which can be configured either as a handheld or a fixed-mount
device. The readeremits radio waves in ranges of anywhere from one inch to 100 feet or
more, depending upon itspower output and the radio frequency used. When an RFID tag
passes through theelectromagnetic zone, it detects the reader's activation signal. The reader
decodes the dataencoded in the tag's integrated circuit (silicon chip) and the data is passed to
the host computerfor processing.

Figure 3.3.1 Antenna

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

2. Tags (Transponders)
An RFID tag is comprised of a microchip containing identifying information and an antenna
thattransmits this data wirelessly to a reader. At its most basic, the chip will contain a
serializedidentifier, or license plate number, that uniquely identifies that item, similar to the
way many bar codes are used today. A key difference, however is that RFID tags have a
higher data capacity than their bar code counterparts. This increases the options for thetype of
information that can be encoded on the tag, including the manufacturer, batch or lot number,
weight, ownership, destination and history (such as the temperature range to which anitem
has been exposed). In fact, an unlimited list of other types of information can be stored
onRFID tags, depending on application needs. An RFID tag can be placed on individual
items,cases or pallets for identification purposes, as well as on fixed assets such as trailers
,containers,totes, etc.

Tags come in a variety of types, with a variety of capabilities. Key variables
include “Read-only" versus "read-write"
There are three options in terms of how data can be encoded on tags: (1) Read-only tags
containdata such as a serialized tracking number, which is pre-written onto them by the
tagmanufacturer or distributor. These are generally the least expensive tags because they
cannothave any additional information included as they move throughout the supply chain.
Any updatesto that information would have to be maintained in the application software that
tracks SKUmovement and activity. (2) "Write once" tags enable a user to write data to the tag
one time inproduction or distribution processes. Again, this may include a serial number, but
perhaps otherdata such as a lot or batch number. (3) Full "read-write" tags allow new data to
be written to thetag as needed—and even written over the original data. Examples for the
latter capability mightinclude the time and dateof ownership transfer or updating the repair
history of a fixed asset. While these are the mostcostly of the three tag types and are not
practical for tracking inexpensive items, future standardsfor electronic product codes (EPC)
appear to be headed in this direction.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Figure 3.3.2RFID Tags

Data capacity
The amount of data storage on a tag can vary, ranging from 16 bits on the low end to as much
asseveral thousand bits on the high end. Of course, the greater the storage capacity, the
highertheprice per tag.

Form factor
The tag and antenna structure can come in a variety of physical form factors and can either
beself-contained or embedded as part of a traditional label structure (i.e., the tag is inside
what  looks like a regular bar code label—this is termed a 'Smart Label') companies must
choose theappropriate form factors for the tag very carefully and should expect to use
multiple form factorsto suit the tagging needs of different physical products and units of
measure. For example, apallet may have an RFID tag fitted only to an area of protected
placement on the pallet itself. Onthe other hand, cartons on the pallet have RFID tags inside
bar code labels that also provideoperators human-readable information and a back-up should
the tag fail or pass through nonRFID-capable supply chain links.

Passive versus active
“Passive” tags have no battery and "broadcast" their data only when energized by a reader.
Thatmeans they must be actively polled to send information. "Active" tags are capable
ofbroadcasting their data using their own battery power. In general, this means that the read
rangesare much greater for active tags than they are for passive tags—perhaps a read range of
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
100 feetor more, versus 15 feet or less for most passive tags. The extra capability and read
ranges ofactive tags, however, come with a cost; they are several times more expensive than
passive tags.Today, active tags are much more likely to be used for high-value items or fixed
assets such astrailers, where the cost is minimal compared to item value, and very long read
ranges arerequired. Most traditional supply chain applications, such as the RFID-based
tracking andcompliance programs emerging in the consumer goods retail chain, will use the
less expensivepassive tags.

Frequencies
Like all wireless communications, there are a variety of frequencies or spectra through
whichRFID tags can communicate with readers. Again, there are trade-offs among cost,
performanceand application requirements. For instance, low-frequency tags are cheaper than
ultra highfrequency(UHF) tags, use less power and are better able to penetrate non-metallic
substances.They are ideal for scanning objects with high water content, such as fruit, at close
range. UHFfrequencies typically offer better range and can transfer data faster. But they use
more power andare less likely to pass through some materials. UHF tags are typically best
suited for use with ornear wood, paper, cardboard or clothing products. Compared to lowfrequency tags, UHF tagsmight be better for scanning boxes of goods as they pass through a
bay door into a warehouse.While the tag requirements for compliance mandates may be
narrowly defined, it is likely that avariety of tag types will be required to solve specific
operational issues. You will want to workwith a company that is very knowledgeable in tag
and reader technology to appropriately identifythe right mix of RFID technology for your
environment and applications.

EPC Tags
EPC refers to "electronic product code," an emerging specification for RFID tags, readers
andbusiness applications first developed at the Auto-ID Center at the Massachusetts Institute
ofTechnology. This organization has provided significant intellectual leadership toward the
use andapplication of RFID technology. EPC represents a specific approach to item
identification,including an emerging standard for the tags themselves, including both the data
content of the tagand open wireless communication protocols. In a sense, the EPC movement
is combining thedata standards embodied in certain bar code specifications, such as the UPC

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
or UCC-128 barcode standards, with the wireless datacommunication standards that have
been developed by ANSI and other groups.

3. RF Transceiver
The RF transceiver is the source of the RF energy used to activate and power the passive
RFIDtags. The RF transceiver may be enclosed in the same cabinet as the reader or it may be
aseparate piece of equipment. When provided as a separate piece of equipment, the
transceiver iscommonly referred to as an RF module. The RF transceiver controls and
modulates the radiofrequencies that the antenna transmits and receives. The transceiver filters
and amplifies thebackscatter signal from a passive RFID tag.

3.4 Typical Applications for RFID
1. Logistics & Tracking


Item visibility and status



Anti theft/tamper evidence



Authentication

2. Manufacturing


Shop floor tracking



Location tracking



Status control



Compliance

3. Asset Tracking


Equipment movement



Calibration

4. MaintenanceHealthcare


Patient dosing



Traceability

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
5. Personnel Identification


Access control



Animal tagging



Car immobilizers

6. Payment systems


Road tolls



Electronic tickets



Mass transit ticketing

Advantages of RFID Over Bar Coding
1. No "line of sight" requirements: Bar code reads can sometimes be limited orproblematic
due to the need to have a direct "line of sight" between a scanner and a bar code.RFID tags
can be read through materials without line of sight.
2. More automated reading: RFID tags can be read automatically when a taggedproduct
comes past or near a reader, reducing the labor required to scan product and allowingmore
proactive, real-time tracking.
3. Improved read rates: RFID tags ultimately offer the promise of higher readrates than bar
codes, especially in high-speed operations such as carton sortation.
4. Greater data capacity: RFID tags can be easily encoded with item details suchas lot and
batch, weight, etc.
5. "Write" capabilities: Because RFID tags can be rewritten with new data as supplychain
activities are completed, tagged products carry updated information as theymove throughout
the supply chain.

Common Problems with RFID
Some common problems with RFID are reader collision and tag collision. Reader
collisionoccurs when the signals from two or more readers overlap. The tag is unable to
respond tosimultaneous queries. Systems must be carefully set up to avoid this problem. Tag
collisionoccurs when many tags are present in a small area; but since the read time is very
fast, it is easierfor vendors to develop systems that ensure that tags respond one at a time. See
Problems withRFID for more details.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

4. MICROCONTROLLER
4.1 Introduction to Microcontroller
A microcontroller (or MCU) is a computer-on-a-chip. It is a type of microprocessor
emphasizing self-sufficiency and cost-effectiveness, in contrast to a general-purpose
microprocessor (the kind used in a PC).
A microprocessor is a programmable digital electronic component that incorporates
the functions of a central processing unit (CPU) on a single semi conducting integrated circuit
(IC). The microprocessor was born by reducing the word size of the CPU from 32 bits to 4
bits, so that the transistors of its logic circuits would fit onto a single part. One or more
microprocessors typically serve as the CPU in a computer system, embedded system, or
handheld device.

Typical Microcontroller Architecture and Features
The basic internal designs of microcontrollers are pretty similar. Figure1 shows the
block diagram of a typical microcontroller. All components are connected via an internal bus
and are all integrated on one chip. The modules are connected to the outside world via I/O
pins.

Figure 4.1 Basic Layout of Microcontroller
The following list contains the modules typically found in a microcontroller. You can find a
more detailed description of these components in later sections.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Processor Core
The CPU of the controller.It contains the arithmetic logic unit, the control unit, and the
registers (stack pointer, program counter, accumulator register, register file . . .).
Memory
The memory is sometimes split into program memory and data memory. In larger controllers,
a DMA controller handles data transfers between peripheral components and the memory.
Interrupt Controller
Interrupts are useful for interrupting the normal program flow in case of (important) external
or internal events. In conjunction with sleep modes, they help to conserve power.
Timer/Counter
Most controllers have at least one and more likely 2-3 Timer/Counters, which can be used to
timestamp events, measure intervals, or count events. Many controllers also contain PWM
(pulse width modulation) outputs, which can be used to drive motors or for safe breaking
(antilock brake system, ABS). Furthermore the PWM output can, in conjunction with an
external filter, be used to realize a cheap digital/analog converter.
Digital I/O
Parallel digital I/O ports are one of the main features of microcontrollers. The number of I/O
pins varies from 3-4 to over 90, depending on the controller family and the controller type.
Analog I/O
Apart from a few small controllers, most microcontrollers have integrated analog/digital
converters, which differ in the number of channels (2-16) and their resolution (8-12 bits). The
analog module also generally features an analog comparator. In some cases, the
microcontroller includes digital/analog converters.

The UART
The Universal Asynchronous Receiver/Transmitter (UART) controller is the key
component of the serial communications subsystem of a computer. The UART takes bytes of
data and transmits the individual bits in a sequential fashion. At the destination, a second

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
UART re-assembles the bits into complete bytesSerial transmission is commonly used with
modems and for non-networked communication between computers, terminals and other
devices.
There are two primary forms of serial transmission: Synchronous and Asynchronous.
Depending on the modes that are supported by the hardware, the name of the communication
sub-system will usually include aA if it supports Asynchronous communications, and a S if it
supports Synchronous communications. Both forms are described below.

Synchronous Serial Transmission
Synchronous serial transmission requires that the sender and receiver share a clock
with one another, or that the sender provide a strobe or other timing signal so that the receiver
knows when to “read” the next bit of the data. In most forms of serial Synchronous
communication, if there is no data available at a given instant to transmit, a fill character must
be sent instead so that data is always being transmitted. Synchronous communication is
usually more efficient because only data bits are transmitted between sender and receiver, and
synchronous communication can be more costly if extra wiring and circuits are required to
share a clock signal between the sender and receiver.
A form of Synchronous transmission is used with printers and fixed disk devices in
that the data is sent on one set of wires while a clock or strobe is sent on a different wire.
Printers and fixed disk devices are not normally serial devices because most fixed disk
interface standards send an entire word of data for each clock or strobe signal by using a
separate wire for each bit of the word. In the PC industry, these are known as Parallel
devices.
The standard serial communications hardware in the PC does not support
Synchronous operations. This mode is described here for comparison purposes only

Asynchronous Serial Transmission
Asynchronous transmission allows data to be transmitted without the sender having to
send a clock signal to the receiver. Instead, the sender and receiver must agree on timing

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
parameters in advance and special bits are added to each word which are used to synchronize
the sending and receiving units.
When a word is given to the UART for Asynchronous transmissions, a bit called the
"Start Bit" is added to the beginning of each word that is to be transmitted. The Start Bit is
used to alert the receiver that a word of data is about to be sent, and to force the clock in the
receiver into synchronization with the clock in the transmitter. These two clocks must be
accurate enough to not have the frequency drift by more than 10% during the transmission of
the remaining bits in the word. (This requirement was set in the days of mechanical
teleprinters and is easily met by modern electronic equipment.)
After the Start Bit, the individual bits of the word of data are sent, with the Least
Significant Bit (LSB) being sent first. Each bit in the transmission is transmitted for exactly
the same amount of time as all of the other bits, and the receiver “looks” at the wire at
approximately halfway through the period assigned to each bit to determine if the bit is a 1 or
a 0. For example, if it takes two seconds to send each bit, the receiver will examine the signal
to determine if it is a 1 or a 0 after one second has passed, then it will wait two seconds and
then examine the value of the next bit, and so on.
The sender does not know when the receiver has “looked” at the value of the bit. The
sender only knows when the clock says to begin transmitting the next bit of the word.When
the entire data word has been sent, the transmitter may add a Parity Bit that the transmitter
generates. The Parity Bit may be used by the receiver to perform simple error checking. Then
at least one Stop Bit is sent by the transmitter.
When the receiver has received all of the bits in the data word, it may check for the
Parity Bits (both sender and receiver must agree on whether a Parity Bit is to be used), and
then the receiver looks for a Stop Bit.

4.2AT89S52 MICROCONTROLLER
Features

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
• Compatible with MCS-51® Products
• 8K Bytes of In-System Programmable (ISP) Flash Memory
• 4.0V to 5.5V Operating Range
• Fully Static Operation: 0 Hz to 33 MHz
• Three-level Program Memory Lock
• 256 x 8-bit Internal RAM
• 32 Programmable I/O Lines
• Three 16-bit Timer/Counters
• Eight Interrupt Sources
• Full Duplex UART Serial Channel
• Low-power Idle and Power-down Modes
• Interrupt Recovery from Power-down Mode
• Watchdog Timer
• Dual Data Pointer
• Power-off Flag

Description
The AT89S52 is a low-power, high-performance CMOS 8-bit microcontroller with
8K bytes of in-system programmable Flash memory. The device is manufactured using
Atmel’s high-density nonvolatile memory technology and is compatible with the industrystandard 80C51 instruction set and pin out. The on-chip Flash allows the program memory to
be reprogrammed in-system or by a conventional nonvolatile memory programmer. By
combining a versatile 8-bit CPU with in-system programmable Flash on a monolithic chip,
the Atmel AT89S52 is a powerful microcontroller which provides a highly-flexible and costeffective solution to many embedded control applications.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
The AT89S52 provides the following standard features: 8K bytes of Flash, 256 bytes
of RAM, 32 I/O lines, Watchdog timer, two data pointers, three 16-bit timer/counters, a sixvector two-level interrupt architecture, a full duplex serial port, on-chip oscillator, and clock
circuitry. In addition, the AT89S52 is designed with static logic for operation down to zero
frequency and supports two software selectable power saving modes.

Pin diagram of AT89S52

Figure 4.2.1 Pin diagram ofAT89S52

Block Diagram of AT89S52

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Fig 4.2.2 Block Diagramof AT89S52

Pin Description
VCC
Pin 40 provides supply voltage to the chip. The voltage source is + 5V.
GND

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Pin 20 provides ground.
Port 0
Port 0 is an 8-bit open drain bidirectional 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 can 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 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.
In addition, P1.0 and P1.1 can be configured to be the timer/counter 2 external count
input (P1.0/T2) and the timer/counter 2 trigger input (P1.1/T2EX), respectively, as shown in
the following table.
Port 1 also receives the low-order address bytes during Flash programming and
verification.

Table 4.2.1 Port1 Specificationsof AT89S52
Port 2

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
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 uses 16-bit addresses (MOVX @
DPTR). In this application, Port 2 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 AT89S52, as shown
in the following table.
Port 3 also receives some control signals for Flash programming and verification.

Table 4.2.2 Port3 Specificationsof AT89S52
RST

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Reset input. A high on this pin for two machine cycles while the oscillator is running
resets the device. This pin drives High for 96 oscillator periods after the Watchdog times out.
The DISRTO bit in SFR AUXR (address 8EH) can be used to disable this feature. In the
default state of bit DISRTO, the RESET HIGH out feature is enabled.
ALE/PROG
Address Latch Enable (ALE) is an 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.
PSEN
Program Store Enable (PSEN) is the read strobe to external program memory. When the
AT89S52 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.

XTAL1

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Input to the inverting oscillator amplifier and input to the internal clock operating
circuit.
XTAL2
Output from the inverting oscillator amplifier.

Special Function Registers
A map of the on-chip memory area called the Special Function Register (SFR) space
is shown in Table 1. Note that not all of the addresses are occupied, and unoccupied
addresses may not be implemented on the chip. Read accesses to these addresses will in
general return random data, and write accesses will have an indeterminate effect.
User software should not write 1s to these unlisted locations, since they may be used
in future products to invoke new features. In that case, the reset or inactive values of the new
bits will always be 0.

Timer 2 Registers
Control and status bits are contained in registers T2CON (shown in Table 2) and T2MOD
(shown in Table 3) for Timer 2. The register pair (RCAP2H, RCAP2L) is the Capture/Reload
registers for Timer 2 in 16-bit capture mode or 16-bit auto-reload mode.

Interrupt Registers
The individual interrupt enable bits are in the IE register. Two priorities can be set for
each of the six interrupt sources in the IP register.

Dual Data Pointer Registers
To facilitate accessing both internal and external data memory, two banks of 16-bit Data
Pointer Registers are provided: DP0 at SFR address locations 82H-83H and DP1 at 84H-85H.
Bit DPS = 0 in SFR AUXR1 selects DP0 and DPS = 1 selects DP1. The user should always
initialize the DPS bit to the appropriate value before accessing the respective Data Pointer
Register.

Power off Flag

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
The Power Off Flag (POF) is located at bit 4 (PCON.4) in the PCON SFR. POF is set to “1”
during power up. It can be set and rest under software control and is not affected by reset.

Memory Organization
MCS-51 devices have a separate address space for Program and Data Memory. Up to
64K bytes each of external Program and Data Memory can be addressed.

Program Memory
If the EA pin is connected to GND, all program fetches are directed to external
memory. On the AT89S52, if EA is connected to VCC, program fetches to addresses 0000H
through 1FFFH are directed to internal memory and fetches to addresses 2000H through
FFFFH are to external memory.

Data Memory
The AT89S52 implements 256 bytes of on-chip RAM. The upper 128 bytes occupy a
parallel address space to the Special Function Registers. This means that the upper 128 bytes
have the same addresses as the SFR space but are physically separate from SFR space.
When an instruction accesses an internal location above address 7FH, the address
mode used in the instruction specifies whether the CPU accesses the upper 128 bytes of RAM
or the SFR space. Instructions which use direct addressing access of the SFR space.
For example, the following direct addressing instruction accesses the SFR at location
0A0H (which is P2).
MOV 0A0H, #data
Instructions that use indirect addressing access the upper 128 bytes of RAM. For
example, the following indirect addressing instruction, where R0 contains 0A0H, accesses the
data byte at address 0A0H, rather than P2 (whose address is 0A0H).
MOV @R0, #data
Note that stack operations are examples of indirect addressing, so the upper 128 bytes
of data RAM are available as stack space.

Watchdog Timer(One-time Enabled with Reset-out)
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
The WDT is intended as a recovery method in situations where the CPU may be
subjected to software upsets. The WDT consists of a 13-bit counter and the Watchdog Timer
Reset (WDTRST) SFR. The WDT is defaulted to disable from exiting reset. To enable the
WDT, a user must write 01EH and 0E1H in sequence to the WDTRST register (SFR location
0A6H). When the WDT is enabled, it will increment every machine cycle while the oscillator
is running. The WDT timeout period is dependent on the external clock frequency. There is
no way to disable the WDT except through reset (either hardware reset or WDT overflow
(reset). When WDT overflows, it will drive an output RESET HIGH pulse at the RST pin.
Using the WDT
To enable the WDT, a user must write 01EH and 0E1H in sequence to the WDTRST
register (SFR location 0A6H). When the WDT is enabled, the user needs to service it by
writing 01EH and 0E1H to WDTRST to avoid a WDT overflow. The 13-bit counter
overflows when it reaches 8191 (1FFFH), and this will reset the device. When the WDT is
enabled, it will increment every machine cycle while the oscillator is running. This means the
user must reset the WDT at least every 8191 machine cycles. To reset the WDT the user must
write 01EH and 0E1H to WDTRST. DTRST is a write-only register. The WDT counter
cannot be read or written. When WDT overflows, it will generate an output RESET pulse at
the RST pin. The RESET pulse duration is 96xTOSC, where TOSC=1/FOSC. To make the
best use of the WDT, it should be serviced in those sections of code that will periodically be
executed within the time required to prevent a WDT reset.

UART
Serial data communication uses two methods, asynchronous and synchronous. The
synchronous method transfers a block of data (characters) at a time, while the asynchronous
method transfers a single byte at a time. It is possible to write software to use either of these
methods, but programs can be tedious and long. For this reason, there are special IC chips
made by the manufacturers for the serial data communications. These chips are commonly
referred to as UART (universal asynchronous receiver-transmitter) and USART (universal
synchronous receiver-transmitter). The 8052 has built-in UART.

Timer 0

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
The 16-bit register of timer 0 is accessed as low byte and high byte. The low byte register is
called TL0 (Timer 0 low byte) and the high byte register is referred to as TH0 (Timer 0 high
byte). These registers can be accessed like any other registers, such as A, B, R0, R1, R2 etc.
for example the instruction “MOV TL0, #4FH” moves the value 4FH into TL0, the low byte
of Timer 0. These registers can also be read like any other register. For example, “MOV R5,
TH0” saves TH0 (high byte of Timer 0) in R5.

Timer1
Timer 1 is also 16 bits and its 16-bit register is split into two bytes, referred to as TL1 (Timer
1 low byte) and TH1 ( Timer 1 high byte). These registers are accessible in the same way as
the registers of Timer 0.

Timer 2
Timer 2 is a 16-bit Timer/Counter that can operate as either a timer or an event
counter. The type of operation is selected by bit C/T2 in the SFR T2CON (shown in Table 2).
Timer 2 has three operating modes: capture, auto-reload (up or down counting), and baud rate
generator. The modes are selected by bits in T2CON, as shown in Table 3. Timer 2 consists
of two 8-bit registers, TH2 and TL2. In the Timer function, the TL2 register is incremented
every machine cycle. Since a machine cycle consists of 12 oscillator periods, the count rate is
1/12 of the oscillator frequency.

Table 4.2.3 Timer2 Operating Modes of AT89S52
In the Counter function, the register is incremented in response to a 1-to-0 transition at its
corresponding external input pin, T2. In this function, the external input is sampled during
S5P2 of every machine cycle. When the samples show a high in one cycle and a low in the
next cycle, the count is incremented. The new count value appears in the register during S3P1
of the cycle following the one in which the transition was detected. Since two machine cycles
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
(24 oscillator periods) are required to recognize a 1-to-0 transition, the maximum count rate
is 1/24 of the oscillator frequency. To ensure that a given level is sampled at least once before
it changes, the level should be held for at least one full machine cycle.

Interrupts
The AT89S52 has a total of six interrupt vectors: two external interrupts (INT0 and INT1),
three timer interrupts (Timers 0, 1, and 2), and the serial port interrupt. These interrupts are
all shown in Figure 10. Each of these interrupt sources can be individually enabled or
disabled by setting or clearing a bit in Special Function Register IE. IE also contains a global
disable bit, EA, which disables all interrupts at once. Note that Table 5 shows that bit position
IE.6 is unimplemented. In the AT89S52, bit position IE.5 is also unimplemented. User
software should not write 1s to these bit positions, since they may be used in future AT89
products. Timer 2 interrupt is generated by the logical OR of bits TF2 and EXF2 in register
T2CON. Neither of these flags is cleared by hardware when the service routine is vectored to.
In fact, the service routine may have to determine whether it was TF2 or EXF2 that generated
the interrupt, and that bit will have to be cleared in software. The Timer 0 and Timer 1 flags,
TF0 and TF1, are set at S5P2 of the cycle in which the timers overflow. The values are then
polled by the circuitry in the next cycle. However, the Timer 2 flag, TF2, is set at S2P2 and is
polled in the same cycle in which the timer overflows.

Oscillator Characteristics
XTAL1 and XTAL2 are the input and output, respectively, of an inverting amplifier that can
be configured for use as an on-chip oscillator, as shown in Figure 11. 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 in Figure 12. There are
no requirements on the duty cycle of the external clock signal, since the input to the internal
clocking circuitry is through a divide-by-two flip-flop, but minimum and maximum voltage
high and low time specifications must be observed.

Oscillator connections

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Figure4.2.3 Oscillator Connectionsof AT89S52
Note: C1, C2 = 30 pF ± 10 pF for Crystals
= 40 pF ± 10 pF for Ceramic Resonators

External Clock Drive Configuration

Figure 4.2.4 External Clock Drive Configurationof AT89S52

Idle Mode
In idle mode, the CPU puts itself to sleep while all the on chip peripherals remain active. The
mode is invoked by software. The content of the on-chip RAM and all the specialfunctions
registers remain unchanged during this mode. The idle mode can be terminated by any

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
enabled interrupt or by a hardware reset. Note that when idle mode is terminated by a
hardware 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 mode is terminated by
a reset, the instruction following the one that invokes idle mode should not write to a port pin
or to external memory.

Power-down Mode
In the Power-down mode, the oscillator is stopped, and the instruction that invokes Powerdown is the last instruction executed. The on-chip RAM and Special Function Registersretain
their values until the Power-down mode is terminated. Exit from Power-down mode can be
initiated either by a hardware reset or by an enabled external interrupt. Reset redefines the
SFRs but does not change the on-chip RAM. The reset should not be activated before VCC is
restored to its normal operating level and must be held active long enough to allow the
oscillator to restart and stabilize.
Status of External Pins during Idle and Power-down Modes

Table 4.2.4 Power down and Idle Modesof AT89S52

5. FUNCTIONAL DESCRIPTIONS
5.1 Liquid Crystal Display

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Liquid crystal display (LCD) has material which combines the properties of both
liquid and crystals. 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 order form similar to a
crystal.
First thing to begin with is to know what LCD driver/controller is used in LCD.Yes,
your LCD is dumb it does not know to talk with your microcontroller. LCD driver is a link
between the microcontroller and LCD. You can refer the datasheet of LCD to know the LCD
driver for e.g. JHD 162A is name of LCD having driver HD44780U.You have to interface the
LCD according to the driver specification. To understand the algorithm of LCD interfacing
user must have datasheet of both LCD and LCD driver. Many people ignore the datasheets
and end up in troubles. If you want to interface LCD successfully you must have datasheets.

Figure5.1.1 LCD Module
More microcontroller devices are using 'smart LCD' displays to output visual
information. The following discussion covers the connection of a Hitachi LCD display to a
PIC microcontroller. LCD displays designed around Hitachi's LCD HD44780 module, are
inexpensive, easy to use, and it is even possible to produce a readout using the 8 x 80 pixels
of the display. Hitachi LCD displays have a standard ASCII set of characters plus Japanese,
Greek and mathematical symbols.

Hardware Diagram

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

16 x 2 Char LCD
A

D0 EN RW

K D7

RS Vf

GND

ACK
Vcc
D0 – D7
R1

R2

Figure 5.1.2 LCD pin configuration
For an 8-bit data bus, the display requires a +5V supply plus 11 I/O lines. For a 4-bit
data bus it only requires the supply lines plus seven extra lines. When the LCD display is not
enabled, data lines are tri-state which means they are in a state of high impedance (as though
they are disconnected) and this means they do not interfere with the operation of the
microcontroller when the display is not being addressed. The LCD also requires 3 "control"
lines from the microcontroller.
When the LCD is initialized, it is ready to continue receiving data or instructions. If it
receives a character, it will write it on the display and move the cursor one space to the right.
The Cursor marks the next location where a character will be written. When we want to write
a string of characters, first we need to set up the starting address, and then send one character
at a time.

Pins description

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Table 5.1 LCD Pin Description
Logic status on control lines
RS (Command / Data):
This bit is to specify weather received byte is command or data. So that LCD can recognize
the operation to be performed based on the bit status.
RS

= 0

=>

Command

RS

= 1

=>

Data

RW (Read / Write)
RW bit is to specify weather controller wants READ from LCD or WRITE to LCD.
The READ operation here is just ACK bit to know weather LCD is free or not.
RW

= 0

=>

Write

RW

= 1

=>

Read

EN (Enable LCD)
EN bit is to ENABLE or DISABLE the LCD. When ever controller wants to write
some thing into LCD or READ acknowledgment from LCD it needs to enable the LCD.
EN = 0

=>

High Impedance

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
EN = 1

=>

Low Impedance

ACK (LCD Ready)
ACK bit is to acknowledge the MCU that LCD is free so that it can send new
command or data to be stored in its internal Ram locations.
ACK

= 1

=>

Not ACK

ACK = 0

=>

ACK

Reading data from the LCD is done in the same way, but control line R/W has to be high.
When we send a high to the LCD, it will reset and wait for instructions. Typical instructions
sent to LCD display after a reset are: turning on a display, turning on a cursor and writing
characters from left to right. Characters that can be shown on the display are stored in data
display (DD) RAM. The size of DDRAM is 80 bytes.
Before we access DD RAM after defining a special character, the program must set
the DD RAM address. Writing and reading data from any LCD memory is done from the last
address which was set up using set-address instruction. Once the address of DD RAM is set, a
new written character will be displayed at the appropriate place on the screen. Until now we
discussed the operation of writing and reading to an LCD as if it were an ordinary memory.
But this is not so. The LCD controller needs 40 to 120 microseconds (uS) for writing and
reading. Other operations can take up to 5 mS. During that time, the microcontroller can not
access the LCD, so a program needs to know when the LCD is busy. We can solve this in two
ways.One way is to check the BUSY bit found on data line D7. This is not the best method
because LCD's can get stuck, and program will then stay forever in a loop checking the
BUSY bit. The other way is to introduce a delay in the program. The delay has to be long
enough for the LCD to finish the operation in process.
At the beginning we mentioned that we needed 11 I/O lines to communicate with an LCD.
However, we can communicate with an LCD through a 4-bit data bus. Thus we can reduce
the total number of communication lines to seven.

5.2 Power Supply Unit
The input to the circuit is applied from the regulated power supply. The a.c. input i.e.,
230V from the mains supply is step down by the transformer to 12V and is fed to a rectifier.
The output obtained from the rectifier is a pulsating d.c voltage. So in order to get a pure d.c
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
voltage, the output voltage from the rectifier is fed to a filter to remove any a.c components
present even after rectification. Now, this voltage is given to a voltage regulator to obtain a
pure constant dc voltage.

Block diagram

Figure 5.2.1 power supply
Power supply unit consists of following units
i) Step down transformer
ii) Rectifier unit
iii) Input filter
iv).Regulator unit
v) Output filter
Stepdown Transformer
The Step down Transformer is used to step down the main supply voltage from 230V AC to
lower value. This 230 AC voltage cannot be used directly, thus it is stepped down. The
Transformer consists of primary and secondary coils. To reduce or step down the voltage, the
transformer is designed to contain less number of turns in its secondary core. The output from
the secondary coil is also AC waveform. Thus the conversion from AC to DC is essential.
This conversion is achieved by using the Rectifier Circuit/Unit.
Step down transformers can step down incoming voltage, which enables you to have the
correct voltage input for your electrical needs. For example, if our equipment has been
specified for input voltage of 12 volts, and the main power supply is 230 volts, we will need a
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
step down transformer, which decreases the incoming electrical voltage to be compatible with
your 12 volt equipment.
Rectifier Unit

The Rectifier circuit is used to convert the AC voltage into its corresponding DC voltage. The
most important and simple device used in Rectifier circuit is the diode. The simple function
of the diode is to conduct when forward biased and not to conduct in reverse bias. Now we
are using three types of rectifiers. They are

1. Half-wave rectifier
2. Full-wave rectifier
3. Bridge rectifier

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
Bridge Rectifier
A bridge rectifier makes use of four diodes in a bridge arrangement to achieve fullwave rectification. This is a widely used configuration, both with individual diodes wired as
shown and with single component bridges where the diode bridge is wired internally.
A diode bridge or bridge rectifier is an arrangement of four diodes in a bridge
configuration that provides the same polarity of output voltage for either polarity of input
voltage. When used in its most common application, for conversion of alternating current
(AC) input into direct current (DC) output, it is known as a bridge rectifier. A bridge rectifier
provides full-wave rectification from a two-wire AC input, resulting in lower cost and weight
as compared to a center-tappedtransformer design.
The Forward Bias is achieved by connecting the diode’s positive with positive of the battery
and negative with battery’s negative. The efficient circuit used is the Full wave Bridge
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
rectifier circuit. The output voltage of the rectifier is in rippled form, the ripples from the
obtained DC voltage are removed using other circuits available. The circuit used for
removing the ripples is called Filter circuit.

Input Filter

Capacitors are used as filter. The ripples from the DC voltage are removed and pure DC
voltage is obtained. And also these capacitors are used to reduce the harmonics of the input
voltage. The primary action performed by capacitor is charging and discharging. It charges in
positive half cycle of the AC voltage and it will discharge in negative half cycle. So it allows
only AC voltage and does not allow the DC voltage. This filter is fixed before the regulator.
Thus the output is free from ripples.

Regulator Unit
Regulator regulates the output voltage to be always constant. The output voltage is
maintained irrespective of the fluctuations in the input AC voltage. As and then the AC
voltage changes, the DC voltage also changes. Thus to avoid this Regulators are used. Also
when the internal resistance of the power supply is greater than 30 ohms, the output gets
affected. Thus this can be successfully reduced here. The regulators are mainly classified for
low voltage and for high voltage. Further they can also be classified as
i) Positive regulator
1. input pin
2. ground pin
3. output pin
It regulates the positive voltage.
ii) Negative regulator
1. ground pin
2. input pin
3. output pin
It regulates the negative voltage.

Fixed Regulators

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Figure 5.2.2 An Assortment of 78xx Series ICs
"Fixed" three-terminal linear regulators are commonly available to generate fixed voltages of
plus 3 V, and plus or minus 5 V, 9 V, 12 V, or 15 V when the load is less than about 7
amperes.
7805 Voltage Regulator
The 7805 provides circuit designers with an easy way to regulate DC voltages to 5v.
Encapsulated in a single chip/package (IC), the 7805 is a positive voltage DC regulator that
has only 3 terminals. They are: Input voltage, Ground, Output Voltage.
General Features


Output Current up to 1A



Output Voltages of 5, 6, 8, 9, 10, 12, 15, 18, 24V



Thermal Overload Protection



Short Circuit Protection



Output Transistor Safe Operating Area Protection

Output Filter

The Filter circuit is often fixed after the Regulator circuit. Capacitor is most often used as
filter. The principle of the capacitor is to charge and discharge. It charges during the positive
half cycle of the AC voltage and discharges during the negative half cycle. So it allows only
AC voltage and does not allow the DC voltage. This filter is fixed after the Regulator circuit
to filter any of the possibly found ripples in the output received finally. Here we used 0.1µF
capacitor. The output at this stage is 5V and is given to the Microcontroller. The output
voltage overshoots when the load is removed or a short clears. When the load is removing
from a switching mode power supply with a LC low-pass output filter, the only thing the
control loop can do is stop the switching action so no more energy is taken from the source.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
The energy that is stored in the output filter inductor is dumped into the output capacitor
causing a voltage overshoot.
The magnitude of the overshoot is the vector sum of two orthogonal voltages, the
output voltage before the load is removed and the current through the inductor times the
characteristic impedance of the output filter, Zo = (L/C)^1/2. This can be derived from
conservation of energy considerations.
The two energies are equal when the load is removed, since the load is no longer
taking energy from the system. Equating the two energies, substituting zero current for the
final inductor current, then the solution for the final voltage Vf is:
This is the orthogonal vector sum of the output voltage and the load current times the
characteristic impedance and is illustrated in Figure .The problem becomes worse if the
current in the inductor is established by a short circuit on the output and the short circuit
clears. In this case, the initial voltage is zero (short circuit) and the overshoot is I*Zo, where I
can be very large, resulting in a ruinous overshoot.

5.3Serial Communication
Theinformation from micro controller is sent to system through serial communication
by using MAX-232 ic in between micro controller and RS232 DB9 connector. This MAX232 acts as voltage level translator i.e., the TTL logic voltage level is to be transformed to
RS232 DB9 connector voltage level of the system. In short a MAX –232 is nothing but a
clamper circuit, which consists of diodes and capacitors i.e., the voltage level translator. is
done through clamping circuit here diodes are inbuilt, whereas the capacitors are to be
connected externally .
Introduction
In this chapter we are going to cover basic concepts involved in the project such as serial
communication and modem activation commands. The serial communication is between the
modem and MCU and also between modem and PC.
Serial Communication

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
In order to connect micro controller to a modem or a pc to modem a serial port is
used. Serial is a very common protocol for device communication that is standard on almost
every PC. Most computers include two RS-232 based serial ports. Serial is also a common
communication protocol that is used by many devices for instrumentation; numerous GPIBcompatible devices also come with an RS-232 port. Furthermore, serial communication can
be used for data acquisition in conjunction with a remote sampling device
The concept of serial communication is simple. The serial port sends and receives
bytes of information one bit at a time. Although this is slower than parallel communication,
which allows the transmission of an entire byte at once, it is simpler and can be used over
longer distances. For example, the IEEE 488 specifications for parallel communication state
that the cabling between equipment can be no more than 20 meters total, with no more than 2
meters between any two devices. serial, however, can extend as much as 1200 meters.
Typically, serial is used to transmit ASCII data. Communication is completed using 3
transmission lines: (1) Ground, (2) Transmit, and (3) Receive. Since serial is asynchronous,
the port is able to transmit data on one line while receiving data on another. Other lines are
available for handshaking, but are not required. The important serial characteristics are baud
rate, data bits, stop bits, and parity. For two ports to communicate, these parameters must
match.
Baud rate
It is a speed measurement for communication. It indicates the number of bit transfers
per second. For example, 300 baud is 300 bits per second. When a clock cycle is referred it
means the baud rate. For example, if the protocol calls for a 4800 baud rate, then the clock is
running at 4800Hz. This means that the serial port is sampling the data line at 4800Hz.
Common baud rates for telephone lines are 14400, 28800, and 33600. Baud rates greater than
these are possible, but these rates reduce the distance by which devices can be separated.
These high baud rates are used for device communication where the devices are located
together, as is typically the case with GPIB devices.
Data bits
A measurement of the actual data bits in a transmission. When the computer sends a
packet of information, the amount of actual data may not be a full 8 bits. Standard values for
the data packets are 5, 7, and 8 bits. Which setting choosen depends on what information

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
transferred? For example, standard ASCII has values from 0 to 127 (7 bits). Extended ASCII
uses 0 to 255 (8 bits). If the data being transferred is simple text (standard ASCII), then
sending 7 bits of data per packet is sufficient for communication. A packet refers to a single
byte transfer, including start/stop bits, data bits, and parity. Since the number of actual bits
depends on the protocol selected, the term packet is used to cover all instances.
Stop bits
Used to signal the end of communication for a single packet. Typical values are 1, 1.5, and 2
bits. Since the data is clocked across the lines and each device has its own clock, it is possible
for the two devices to become slightly out of sync. Therefore, the stop bits not only indicate
the end of transmission but also give the computers some room for error in the clock speeds.
The more bits that are used for stop bits, the greater the lenience in synchronizing the
different clocks, but the slower the data transmission rate.
Parity
A simple form of error checking that is used in serial communication. There are four
types of parity: even, odd, marked, and spaced. The option of using no parity is also
available. For even and odd parity, the serial port sets the parity bit (the last bit after the data
bits) to a value to ensure that the transmission has an even or odd number of logic high bits.
For example, if the data is 011, then for even parity, the parity bit is 0 to keep the number of
logic-high bits even. If the parity is odd, then the parity bit is 1, resulting in 3 logic-high bits.
Marked and spaced parity does not actually check the data bits, but simply sets the parity bit
high for marked parity or low for spaced parity. This allows the receiving device to know the
state of a bit to enable the device to determine if noise is corrupting the data or if the
transmitting and receiving device clocks are out of sync.
RS –232
RS-232 (ANSI/EIA-232 Standard) is the serial connection found on IBM-compatible
PCs. It is used for many purposes, such as connecting a mouse, printer, or modem, as well as
industrial instrumentation. Because of improvements in line drivers and cables, applications
often increase the performance of RS-232 beyond the distance and speed listed in the
standard. RS-232 is limited to point-to-point connections between PC serial ports and
devices. RS-232 hardware can be used for serial communication up to distances of 50 feet .

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

DB-9 pin connector

12345
6789

Pin Functions:

Data:

TxD on pin 3, RxD on pin 2

Handshake:

RTS on pin 7, CTS on pin 8, DSR on pin 6,
CD on pin 1, DTR on pin 4

Common:

Common pin 5(ground)

Other:

RI on pin 9

The method used by RS-232 for communication allows for a simple connection of
three lines: Tx, Rx, and Ground. The three essential signals for 2 way RS232Communications are these:
TXD: carries data from DTE to the DCE.
RXD: carries data from DCE to the DTE
SG:

signal ground
Here in our project DTE is the micro controller at the remote station and PC at the

base station, DCE is the modem at both the stations. However the data to be transmitted, both
sides have to be clocking the data at the same baud rate. Even though this method is sufficient
for most applications, it is limited in being able to respond to problems such as the receiver
getting overloaded. This is where serial handshaking can help. This method uses actual
hardware lines. There are two pairs of hand shaking signals DTR/DSR and

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

MAX232
Pin Diagram Of Max232

Figure 5.3 Max232 Pin Diagram
This module is primary of interest for people building their own electronics with an
RS-232 interface. Off-the-shelf computers with RS-232 interfaces already contain the
necessary electronics, and there is no need to add the circuitry as described here.
Serial RS-232 (V.24) communication works with voltages (-15V ... -3V for high [sic])
and +3V ... +15V for low [sic]) which are not compatible with normal computer logic
voltages. On the other hand, classic TTL computer logic operates between 0V ... +5V
(roughly 0V ... +0.8V for low, +2V ... +5V for high). Modern low-power logic operates in the
range of 0V ... +3.3V or even lower.
So, the maximum RS-232 signal levels are far too high for computer logic electronics,
and the negative RS-232 voltage for high can't be grokked at all by computer logic.
Therefore, to receive serial data from an RS-232 interface the voltage has to be reduced, and
the low and high voltage level inverted. In the other direction (sending data from some logic
over RS-232) the low logic voltage has to be "bumped up", and a negative voltage has to be
generated, too.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Table 5.3.1 Voltage levels for RS232 and TTL
All this can be done with conventional analog electronics, e.g. a particular power
supply and a couple of transistors or the once popular 1488 (transmitter) and 1489 (receiver)
ICs. However, since more than a decade it has become standard in amateur electronics to do
the necessary signal level conversion with an integrated circuit (IC) from the MAX232
family (typically a MAX232A or some clone). In fact, it is hard to find some RS-232
circuitry in amateur electronics without a MAX232A or some clone.
The MAX232 from Maxim was the first IC which in one package contains the
necessary drivers (two) and receivers (also two), to adapt the RS-232 signal voltage levels to
TTL logic. It became popular, because it just needs one voltage (+5V) and generates the
necessary RS-232 voltage levels (approx. -10V and +10V) internally. This greatly simplified
the design of circuitry. Circuitry designers no longer need to design and build a power supply
with three voltages (e.g. -12V, +5V, and +12V), but could just provide one +5V power
supply, e.g. with the help of a simple 78x05 voltage converter.
The MAX232 has a successor, the MAX232A. The ICs are almost identical, however,
the MAX232A is much more often used (and easier to get) than the original MAX232, and
the MAX232A only needs external capacitors 1/10th the capacity of what the original
MAX232 needs.
It should be noted that the MAX232(A) is just a driver/receiver. It does not generate
the necessary RS-232 sequence of marks and spaces with the right timing, it does not decode
the RS-232 signal, it does not provide a serial/parallel conversion. All it does is to convert
signal voltage levels. Generating serial data with the right timing and decoding serial data has
to be done by additional circuitry, e.g. by a 16550 UART or one of these small micro
controllers (e.g. Atmel AVR, Microchip PIC) getting more and more popular.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
The MAX232 and MAX232A were once rather expensive ICs, but today they are
cheap. It has also helped that many companies now produce clones (i.e. Sipex). These clones
sometimes need different external circuitry, e.g. the capacities of the external capacitors vary.
It is recommended to check the data sheet of the particular manufacturer of an IC instead of
relying on Maxim's original data sheet.
The original manufacturer (and now some clone manufacturers, too) offers a large
series of similar ICs, with different numbers of receivers and drivers, voltages, built-in or
external capacitors, etc. E.g. The MAX232 and MAX232A need external capacitors for the
internal voltage pump, while the MAX233 has these capacitors built-in. The MAX233 is also
between three and ten times more expensive in electronic shops than the MAX232A because
of its internal capacitors. It is also more difficult to get the MAX233 than the garden variety
MAX232A.A similar IC, the MAX3232 is nowadays available for low-power 3V logic.

MAX232Application
The MAX232(A) has two receivers (converts from RS-232 to TTL voltage levels) and
two drivers (converts from TTL logic to RS-232 voltage levels). This means only two of the
RS-232 signals can be converted in each direction. The old MC1488/1498 combo provided
four drivers and receivers.
Typically a pair of a driver/receiver of the MAX232 is used for TX and RX and the second
one for CTS and RTS. There are not enough drivers/receivers in the MAX232 to also connect
the DTR, DSR, and DCD signals. Usually these signals can be omitted when e.g.
communicating with a PC's serial interface. If the DTE really requires these signals either a
second MAX232 is needed, or some other IC from the MAX232 family can be used (if it can
be found in consumer electronic shops at all). An alternative for DTR/DSR is also given
below.Maxim's data sheet explains the MAX232 family in great detail, including the pin
configuration and how to connect such an IC to external circuitry. Exactly to connect the RS232 signals to the IC. So here is one possible example:

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

MAX232 Pin Nbr. MAX232 Pin Name Signal Voltage DB9 Pin
7

T2out

CTS

RS-232 7

8

R2in

RTS

RS-232 8

9

R2out

RTS

TTL

n/a

10

T2in

CTS

TTL

n/a

11

T1in

TX

TTL

n/a

12

R1out

RX

TTL

n/a

13

R1in

RX

RS-232 2

14

T1out

TX

RS-232 3

15

GND

GND

0

5

Table 5.3.2 RS232-DB9 pin Diagram specifications

5.4 Keypad
Keypads and LCDs are the most widely used input/output devices of the 8051, and a
basic understanding of them is essential. At the lowest level, keyboards are organized in a
matrix of rows and columns. The CPU accesses both rows and column through ports;
therefore, with 8-bit ports, an 4*4 matrix of keys can be connected to a microprocessor.
When a key pressed, a row and column make a connect; otherwise, there is no connection
between row and column. In IBM PC keyboards, a single microcontroller (consisting of
microprocessor, RAM and EPROM, and several ports all on a single chip) takes care of
software and hardware interfacing of keyboard. In such systems it is the function of programs
stored in the EPROM of microcontroller to scan the keys continuously, identify which one
has been activated, and present it to the motherboard. In this section we look at the
mechanism by which the 8051 scans and identifies the key.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
A 4*4 matrix connected to two ports. The rows are connected to an output port and the
columns are connected to an input port. If no key has been pressed, reading the input port will
yield 1s for all columns since they are all connected to high (Vcc) If all the rows are
grounded and a key is pressed, one of the columns will have 0 since the key pressed provides
the path to ground. It is the function of the microcontroller to scan the keyboard continuously
to detect and identify the key pressed. How it is done is explained next.

Figure 5.4 4*4 Keypad

To detect a pressed key, the microcontroller grounds all rows by providing 0 to the output
latch, and then it reads the columns. If the data read from the columns is D3-D0=1111, no
key has been pressed and the process continues until a key press is detected. However, if one
of the column bits has a zero, this means that a key press has occurred. For example, if D3D0=1101, this means that a key in the D1 column has been pressed. After a key press is
detected, the microcontroller will go through the process of identifying the key. Starting with
the top row, the microcontroller grounds it by providing a low to row D0 only; then it reads
the columns. If the data read is all1s, no key in that row is activated and the process is moved
to the next row. It grounds the next row, reads the columns, and checks for any zero. This
process continues until the row is identified. After identification of the row in which the key
has been pressed, the next task is to find out which column the pressed key belongs to. This
should be easy since the microcontroller knows at any time which row and column are being
accessed.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

Assembly language program for detection and identification of key activation is given below.
In this program, it is assumed that P1 and P2 are initialized as output and input, respectively.
Program13.1 goes through the following four major stages:

1. To make sure that the preceding key has been released, 0s are output to all rows at once,
and the columns are read and checked repeatedly until all the columns are high. When all
columns are found to be high, the program waits for a short amount of time before it goes to
the next stage of waiting for a key to be pressed.

2. To see if any key is pressed, the columns are scanned over and over in an infinite loop until
one of them has a 0 on it. Remember that the output latches connected to rows still have their
initial zeros (provided in stage 1), making them grounded. After the key press detection, it
waits 20ms for the bounce and then scans the columns again. This serves two functions: (a) it
ensures that the first key press detection was not an erroneous one due to spike noise, and(b)
the 20ms delay prevents the same key press from being interpreted as a multiple key press. If
after the 20-ms delay the key is still pressed, it goes to the next stage to detect which row it
belongs to; otherwise, it goes back into the loop to detect a real key press

3. To detect which row the key press belongs to, it grounds one row at a time, reading the
columns each time. If it finds that all columns are high, this means that the key press cannot
belong to that row; therefore, it grounds the next row and continues until it finds the row the
key press belongs to. Upon finding the row that the key press belongs to, it sets up the
starting address for the look-up table holding the scan codes (or the ASCII value) for that row
and goes to the next stage to identify the key.

4. To identify the key press, it rotates the column bits, one bit at a time, into the carry flag and
checks to see if it is low. Upon finding the zero, it pulls out the ASCII code for that key from
the look-up table; Otherwise, it increments the pointer to point to the next element of the
look-up table.
While the key press detection is standard for all keyboards, the process for
determining which key is pressed varies. The look-up table method shown in program can be
modified to work with any matrix up to 8*8.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

6. SOFTWARE REQUIREMENTS
Keil an ARM Company makes C compilers, macro assemblers, real-time kernels, debuggers,
simulators,

integrated

environments,

evaluation

boards,

and

emulators

for

ARM7/ARM9/Cortex-M3, XC16x/C16x/ST10, 251, and 8051 MCU families.
The Keil 8051 Development Tools are designed to solve the complex problems facing
embedded software developers
Keil development tools for the 8051 Microcontroller Architecture support every level
of software developer from the professional applications engineer to the student just learning
about embedded software development.
When starting a new project, simply select the microcontroller you use from the Device
Database and the µVision IDE sets all compiler, assembler, linker, and memory options for
you.
Numerous example programs are included to help you get started with the most
popular embedded 8051 devices.
The Keil µVision Debugger accurately simulates on-chip peripherals (I²C, CAN,
UART, SPI, Interrupts, I/OPorts, A/D Converter, D/A Converter, and PWM Modules) of
your 8051 device. Simulation helps you understand hardware configurations and avoids time
wasted on setup problems. Additionally, with simulation, you can write and test applications
before target hardware is available

Embedded ‘C’:
Ex: Hitec – c, Keil – c

HI-TECH Software makes industrial-strength software development tools and C
compilers that help software developers write compact, efficient embedded processor code.
For over two decades HI-TECH Software has delivered the industry's most reliable
embedded software development tools and compilers for writing efficient and compact code
to run on the most popular embedded processors. Used by tens of thousands of customers
including General Motors, Whirlpool, Qualcomm, John Deere and many others, HI-TECH's
reliable development tools and C compilers, combined with world-class support have helped

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
serious embedded software programmers to create hundreds of breakthrough new
solutions.Whichever embedded processor family you are targeting with your software,
whether it is the ARM, PICC or 8051 series, HI-TECH tools and C compilers can help you
write better code and bring it to market faster. HI-TECH PICC is a high-performance C
compiler for the Microchip PIC micro 10/12/14/16/17 series of microcontrollers. HI-TECH
PICC is an industrial-strength ANSI C compiler - not a subset implementation like some
other PIC compilers. The PICC compiler implements full ISO/ANSI C, with the exception of
recursion. All data types are supported including 24 and 32 bit IEEE standard floating point.
HI-TECH PICC makes full use of specific features and using an intelligent optimizer, can
generate high-quality code easily rivaling hand-written assembler. Automatic handling of
page and bank selection frees the programmer from the trivial details of assembler code.

Embedded “C” Compiler


ANSI C - full featured and portable.



Reliable - mature, field-proven technology.



Multiple C optimization levels .



An optimizing assembler.



Full linker, with overlaying of local variables to minimize RAM usage.



Comprehensive C library with all source code provided.



Includes support for 24-bit and 32-bit IEEE floating point and 32-bit
long data types.



Mixed C and assembler programming.



Unlimited number of source files.



Listings showing generated assembler.



Compatible - integrates into the MPLAB IDE, MPLAB ICD .



Runs on multiple platforms: Windows, Linux, UNIX, Mac OS X,
Solaris.

Embedded System Tools
Assembler
An assembler is a computer program for translating assembly languageessentially, a
mnemonic representation of machine language into object code. A cross assembler (see cross
compiler) produces code for one type of processor, but runs on another. The computational

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
step where an assembler is run is known as assembly time. Translating assembly instruction
mnemonics into opcodes, assemblers provide the ability to use symbolic names for memory
locations (saving tedious calculations and manually updating addresses when a program is
slightly modified), and macro facilities for performing textual substitution typically used to
encode common short sequences of instructions to run inline instead of in a subroutine.
Assemblers are far simpler to write than compilers for high-level languages.
Assembly Language Has Several Benefits
Speed: Assembly language programs are generally the fastest programs around.
Space: Assembly language programs are often the smallest.
Capability: You can do things in assembly which are difficult or impossible in High level
languages.
Knowledge: Your knowledge of assembly language will help you write better programs,
even when using High level languages. An example of an assembler we use in our project is
RAD 51.
Simulator
Simulator is a machine that simulates an environment for the purpose of training or
research. We use a UMPS simulator for this purpose in our project.

UMPS
Universal microprocessor program simulator simulates a microcontroller with its
external environment. UMPS is able to simulate external components connected to the
microcontroller. Then, debug step is dramatically reduced. UMPS is not dedicated to only
one microcontroller family, it can simulate all kind of microcontrollers. The main limitation
is to have less than 64K-Bytes of RAM and ROM space and the good microcontroller library.
UMPS provide all the facilities other low-cost simulator does not have. It offers the user to
see the "real effect" of a program and a way to change the microcontroller family without
changing IDE. UMPS provide a low-cost solution to the problems. UMPS is really the best
solution to your evaluation.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
UMPS Key Features
The speed, UMPS can run as fast as 1/5 the real microcontroller speed. No need to wait
2 days to see the result of a LCD routine access. All the microcontroller parts are simulated,
interrupts, communication protocol, parallel handshake, timer and so on. UMPS have an
integrated assembler/disassembler and debugger. It is able to accept an external assembler or
compiler. It has a text editor which is not limited to 64K-bytes and shows keyword with
color. It can also communicate with an external compiler to integrate all the debug facilities
you need.UMPS is universal, it can easily be extended to other microcontroller with a library.
Ask us for toolkit development.External resource simulation is not limited. It can be extended
to your proper needs by writing your own DLL.UMPS allows you to evaluate at the lowest
cost the possibility to build a microcontroller project without any cable. - UMPS include a
complete documentation on each microcontroller which describe special registers and each
instruction.

User Interfaces
User interfaces for embedded systems vary widely, and thus deserve some special comment.
User interface is the ultimate aim for an embedded module as to the user to check the output
with complete convenience. One standard interface, widely used in embedded systems, uses
two buttons (the absolute minimum) to control a menu system (just to be clear, one button
should be "next menu entry" the other button should be "select this menu entry").
Another basic trick is to minimize and simplify the type of output. Designs sometimes
use a status light for each interface plug, or failure condition, to tell what failed. A cheap
variation is to have two light bars with a printed matrix of errors that they select- the user can
glue on the labels for the language that he speaks. For example, most small computer printers
use lights labeled with stick-on labels that can be printed in any language. In some markets,
these are delivered with several sets of labels, so customers can pick the most comfortable
language.
In many organizations, one person approves the user interface. Often this is a
customer, the major distributor or someone directly responsible for selling the system.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Platform
There are many different CPU architectures used in embedded designs such as ARM,
MIPS, Coldfire/68k, PowerPC, X86, PIC, 8051, Atmel AVR, H8, SH, V850, FR-V, M32R
etc.
This in contrast to the desktop computer market, which as of this writing (2003)is
limited to just a few competing architectures, mainly the Intel/AMDx86, and the
Apple/Motorola/IBMPowerPC, used in the Apple Macintosh. With the growing acceptance
of Java in this field, there is a tendency to even further eliminate the dependency on specific
CPU/hardware (and OS) requirements.
Standard PC/104 is a typical base for small, low-volume embedded and ruggedized
system design. These often use DOS, Linux or an embedded real-time operating system such
as QNX or Inferno.
A common configuration for very-high-volume embedded systems is the system on a
chip, an application-specific integrated circuit, for which the CPU was purchased as
intellectual property to add to the IC's design. A related common scheme is to use a fieldprogrammable gate array, and program it with all the logic, including the CPU. Most modern
FPGAs are designed for this purpose.

Tools
Like typical computer programmers, embedded system designers use compilers,
assemblers, and debuggers to develop embedded system software. However, they also use a
few tools that are unfamiliar to most programmers.
Software companies that specialize in the embedded market Ported from the GNU
software development tools. Sometimes, development tools for a personal computer can be
used if the embedded processor is a close relative to a common PC processor. Embedded
system designers also use a few software tools rarely used by typical computer programmers.
One common tool is an "in-circuit emulator" (ICE) or, in more modern designs, an
embedded debugger. This debugging tool is the fundamental trick used to develop embedded
code. It replaces or plugs into the microprocessor, and provides facilities to quickly load and
debug experimental code in the system. A small pod usually provides the special electronics
to plug into the system. Often a personal computer with special software attaches to the pod
to provide the debugging interface.
www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Another common tool is a utility program (often home-grown) to add a checksum or
CRC to a program, so it can check its program data before executing it.
An embedded programmer that develops software for digital signal processing often
has a math workbench such as MathCad or Mathematical to simulate the mathematics.
Less common are utility programs to turn data files into code, so one can include any
kind of data in a program. A few projects use Synchronous programming languages for extra
reliability or digital signal processing.

Debugging
Debugging is usually performed with an in-circuit emulator, or some type of debugger
that can interrupt the microcontroller's internal microcode. The microcode interrupt lets the
debugger operate in hardware in which only the CPU works. The CPU-based debugger can
be used to test and debug the electronics of the computer from the viewpoint of the CPU.
This feature was pioneered on the PDP-11.
As the complexity of embedded systems grows, higher level tools and operating
systems are migrating into machinery where it makes sense. For example, cell phones,
personal digital assistants and other consumer computers often need significant software that
is purchased or provided by a person other than the manufacturer of the electronics. In these
systems, an open programming environment such as Linux, OSGi or Embedded Java is
required so that the third-party software provider can sell to a large market.

Operating System
Embedded systems often have no operating system, or a specialized embedded
operating system (often a real-time operating system), or the programmer is assigned to port
one of these to the new system.

Built- In Self- Test
Most embedded systems have some degree or amount of built-in self-test.
There are several basic types.
1. Testing the computer.
2. Test of peripherals.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
3. Tests of power.
4. Communication tests.
5. Cabling tests.
6. Rigging tests.
7. Consumables test.
8. Operational test.

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service

7. CODE GENERATION
#include<reg51.h>
#include<string.h>
void Delay_1ms(void);
void Delay_30ms(void);
void Delay(unsigned int);
void MSDelay(unsigned char);
void lcd_cmd(unsigned char);
void lcd_pos(unsigned char);

//set the lcd address

void lcd_char(unsigned char);

//convert the integer value to writing

format
void lcd_print(unsigned char *);
unsigned char keypad(void);
void lcd_init(void);

//write the string to LCD

void lcd_clear(void);
void uart_init(void);
void lcd_print(unsigned char *);
sbit RS =P2^7;

//RESET

sbit RW

=P2^6;

//READ/WRITE

sbit EN

=P2^5;

//ENABLE

sfr LCD=0x80;
void reader(void);
void database(void);

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
unsigned char temp,blood,heart;
unsigned char rf[13];
#define COLROW P1
unsigned char code keypadMatrix[4][4]={"1234",
"5678",
"90AB",
"CDE#"};
unsigned char t[3],b[3],h[3];
void main()
{
unsigned char key1;
lcd_init();
lcd_print("LCD READY");
Delay(200);
lcd_clear();
uart_init();
lcd_print("UART READY");
Delay(200);
lcd_clear();
lcd_cmd(0x83);
lcd_print("RFID BASED");
lcd_cmd(0xC2);
lcd_print("SYSTEM FOR");

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
Delay(500);
lcd_clear();
lcd_cmd(0x82);
lcd_print("HEALTH CARE");
lcd_cmd(0xC4);
lcd_print("SERVICES");
Delay(500);
lcd_clear();
while(1)
{
lcd_clear();
lcd_print("PRESS 1 TO");
lcd_pos(0xc0);
lcd_print("STORE DATA");
Delay(500);
Delay(500);
lcd_clear();
lcd_print("PRESS 2 TO");
lcd_pos(0xc0);
lcd_print("READ DATA");
Delay(500);
Delay(500);
lcd_clear();

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
key1=keypad();
lcd_char(key1);
Delay(500);
Delay(500);
lcd_clear();
if(key1 == '1')
reader();
else if(key1== '2')
database();
else
{
lcd_clear();
lcd_print("INVALID INPUT");
}
Delay(500);
Delay(500);
}
}
void reader(void)
{
unsigned char id[5],key;
unsigned char i,k;

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
lcd_clear();
lcd_print("PLACE THE TAG");
lcd_pos(0xc0);
lcd_print("BEFORE READER");
Delay(500);
Delay(500);
for(k=0;k<12;k++)
{
while(!RI);
rf[k] = SBUF;
RI=0;
}
rf[12]='0';
if(!strcmp(rf,"26006FCA6FEC"))
{
lcd_clear();
lcd_print(rf);
Delay(200);
Delay(200);
lcd_clear();
lcd_print("ENTER 3 DIGIT ID");
Delay(200);
lcd_clear();

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
for(i=0;i<3;i++)
{
Delay(100);
key=keypad();
lcd_char(key);
id[i]=key;
}
id[i]='0';
Delay(200);
if(!strcmp(id,"123"))
{
lcd_clear();
lcd_print("ACCESS OK");
Delay(200);
Delay(200);
lcd_clear();
lcd_print("ENTER TEMP");
Delay(200);
lcd_clear();
for(i=0;i<3;i++)
{
Delay(100);
key=keypad();

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
lcd_char(key);
t[i]=key;
}
temp=t[0]*100+t[1]*10+t[2]*1;
lcd_clear();
lcd_print("ENTER BP");
Delay(200);
lcd_clear();
for(i=0;i<3;i++)
{
Delay(100);
key=keypad();
lcd_char(key);
b[i]=key;
}
blood=b[0]*100+b[1]*10+b[2]*1;
lcd_clear();
lcd_print("ENTER HEART BEAT");
Delay(200);
lcd_clear();
for(i=0;i<3;i++)
{
Delay(100);

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
key=keypad();
lcd_char(key);
h[i]=key;
}
heart=h[0]*100+h[1]*10+h[2]*1;
}
}
}
void database(void)
{
unsigned char i,k,id[5],key;
lcd_clear();
lcd_print("PLACE THE TAG");
lcd_pos(0xc0);
lcd_print("BEFORE READER");
Delay(500);
Delay(500);
for(k=0;k<12;k++)
{
while(!RI);
rf[k] = SBUF;
RI=0;
}

www.final-yearproject.com | www.finalyearthesis.com
RFID Based System For Healthcare Service
rf[12]='0';
if(!strcmp(rf,"2600709EE62E"))
{
lcd_clear();
lcd_print(rf);
Delay(200);
Delay(200);
lcd_clear();
lcd_print("ENTER 3 DIGIT ID");
Delay(200);
Delay(200);
lcd_clear();
for(i=0;i<3;i++)
{
Delay(100);
key=keypad();
lcd_char(key);
id[i]=key;
}
id[i]='0';
Delay(200);
if(!strcmp(id,"123"))
{

www.final-yearproject.com | www.finalyearthesis.com
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service
Rfid based system for healthcare service

Mais conteúdo relacionado

Mais procurados

Industrial Control System Cyber Security and the Employment of Industrial Fir...
Industrial Control System Cyber Security and the Employment of Industrial Fir...Industrial Control System Cyber Security and the Employment of Industrial Fir...
Industrial Control System Cyber Security and the Employment of Industrial Fir...Schneider Electric
 
Embedded Web Server based Interactive data acquisition and Control System
Embedded Web Server based Interactive data acquisition and Control SystemEmbedded Web Server based Interactive data acquisition and Control System
Embedded Web Server based Interactive data acquisition and Control SystemIOSR Journals
 
IRJET - Cryptographic Communication between Two ESP32 Devices
IRJET - Cryptographic Communication between Two ESP32 DevicesIRJET - Cryptographic Communication between Two ESP32 Devices
IRJET - Cryptographic Communication between Two ESP32 DevicesIRJET Journal
 
DDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart CitiesDDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart CitiesAngelo Corsaro
 
Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...IRJET Journal
 
How to Combat Building Automation Obsolescencece
How to Combat Building Automation ObsolescenceceHow to Combat Building Automation Obsolescencece
How to Combat Building Automation ObsolescenceceSenseware
 
IRJET- Review on IoT based Dual ARM Tele-Robotic System
IRJET- Review on IoT based Dual ARM Tele-Robotic SystemIRJET- Review on IoT based Dual ARM Tele-Robotic System
IRJET- Review on IoT based Dual ARM Tele-Robotic SystemIRJET Journal
 
smart-net-total-care-data-sheet
smart-net-total-care-data-sheetsmart-net-total-care-data-sheet
smart-net-total-care-data-sheetGabrielle Curtis
 
Embedded systems - UNIT-1 - Mtech
Embedded systems - UNIT-1 - MtechEmbedded systems - UNIT-1 - Mtech
Embedded systems - UNIT-1 - Mtechsangeetha rakhi
 
A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...
A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...
A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...IRJET Journal
 
Tevatron technologies design_services_corporate_profile
Tevatron technologies design_services_corporate_profileTevatron technologies design_services_corporate_profile
Tevatron technologies design_services_corporate_profileJayant Kaintura
 
Platform-based approach for IIoT trends
Platform-based approach for IIoT trendsPlatform-based approach for IIoT trends
Platform-based approach for IIoT trendsNinad Deshpande
 
Elastic Software Infrastructure to Support the Industrial Internet
Elastic Software Infrastructure to Support the Industrial InternetElastic Software Infrastructure to Support the Industrial Internet
Elastic Software Infrastructure to Support the Industrial InternetReal-Time Innovations (RTI)
 
Review paper on IoT based technology
Review paper on IoT based technologyReview paper on IoT based technology
Review paper on IoT based technologyIRJET Journal
 

Mais procurados (19)

Industrial Control System Cyber Security and the Employment of Industrial Fir...
Industrial Control System Cyber Security and the Employment of Industrial Fir...Industrial Control System Cyber Security and the Employment of Industrial Fir...
Industrial Control System Cyber Security and the Employment of Industrial Fir...
 
Embedded Web Server based Interactive data acquisition and Control System
Embedded Web Server based Interactive data acquisition and Control SystemEmbedded Web Server based Interactive data acquisition and Control System
Embedded Web Server based Interactive data acquisition and Control System
 
IRJET - Cryptographic Communication between Two ESP32 Devices
IRJET - Cryptographic Communication between Two ESP32 DevicesIRJET - Cryptographic Communication between Two ESP32 Devices
IRJET - Cryptographic Communication between Two ESP32 Devices
 
DDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart CitiesDDS in SCADA, Utilities, Smart Grid and Smart Cities
DDS in SCADA, Utilities, Smart Grid and Smart Cities
 
Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...Controlling Home Appliances by using Universal Remote Control System (IoT and...
Controlling Home Appliances by using Universal Remote Control System (IoT and...
 
How to Combat Building Automation Obsolescencece
How to Combat Building Automation ObsolescenceceHow to Combat Building Automation Obsolescencece
How to Combat Building Automation Obsolescencece
 
IRJET- Review on IoT based Dual ARM Tele-Robotic System
IRJET- Review on IoT based Dual ARM Tele-Robotic SystemIRJET- Review on IoT based Dual ARM Tele-Robotic System
IRJET- Review on IoT based Dual ARM Tele-Robotic System
 
smart-net-total-care-data-sheet
smart-net-total-care-data-sheetsmart-net-total-care-data-sheet
smart-net-total-care-data-sheet
 
Embedded systems - UNIT-1 - Mtech
Embedded systems - UNIT-1 - MtechEmbedded systems - UNIT-1 - Mtech
Embedded systems - UNIT-1 - Mtech
 
Internet of things
Internet of thingsInternet of things
Internet of things
 
A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...
A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...
A Smart Switch to Connect and Disconnect Electrical Devices at Home by using ...
 
Handkey 2012
Handkey 2012Handkey 2012
Handkey 2012
 
Substation Cyber Security
Substation Cyber SecuritySubstation Cyber Security
Substation Cyber Security
 
Embedded Systems
Embedded Systems Embedded Systems
Embedded Systems
 
Tevatron technologies design_services_corporate_profile
Tevatron technologies design_services_corporate_profileTevatron technologies design_services_corporate_profile
Tevatron technologies design_services_corporate_profile
 
Platform-based approach for IIoT trends
Platform-based approach for IIoT trendsPlatform-based approach for IIoT trends
Platform-based approach for IIoT trends
 
Meshcom Modules Brochure
Meshcom Modules BrochureMeshcom Modules Brochure
Meshcom Modules Brochure
 
Elastic Software Infrastructure to Support the Industrial Internet
Elastic Software Infrastructure to Support the Industrial InternetElastic Software Infrastructure to Support the Industrial Internet
Elastic Software Infrastructure to Support the Industrial Internet
 
Review paper on IoT based technology
Review paper on IoT based technologyReview paper on IoT based technology
Review paper on IoT based technology
 

Destaque

Reaction To Hospitalization
Reaction To HospitalizationReaction To Hospitalization
Reaction To HospitalizationNirmala Roberts
 
Hospitalized child by Jinesh TM
Hospitalized child by Jinesh TMHospitalized child by Jinesh TM
Hospitalized child by Jinesh TMJinesh Mathew
 
Patient monitoring system
Patient monitoring systemPatient monitoring system
Patient monitoring systemSuni Reddy
 
Library management system using rfid
Library management system using rfidLibrary management system using rfid
Library management system using rfidNaveen Sihag
 
Patient Monitoring
Patient Monitoring	Patient Monitoring
Patient Monitoring Khalid
 

Destaque (7)

King spring2016v1.8
King spring2016v1.8King spring2016v1.8
King spring2016v1.8
 
Chowdhury rfidhpms
Chowdhury rfidhpmsChowdhury rfidhpms
Chowdhury rfidhpms
 
Reaction To Hospitalization
Reaction To HospitalizationReaction To Hospitalization
Reaction To Hospitalization
 
Hospitalized child by Jinesh TM
Hospitalized child by Jinesh TMHospitalized child by Jinesh TM
Hospitalized child by Jinesh TM
 
Patient monitoring system
Patient monitoring systemPatient monitoring system
Patient monitoring system
 
Library management system using rfid
Library management system using rfidLibrary management system using rfid
Library management system using rfid
 
Patient Monitoring
Patient Monitoring	Patient Monitoring
Patient Monitoring
 

Semelhante a Rfid based system for healthcare service

IRJET - Automatic Toll E-Tickting System for Transportation and Finding o...
IRJET -  	  Automatic Toll E-Tickting System for Transportation and Finding o...IRJET -  	  Automatic Toll E-Tickting System for Transportation and Finding o...
IRJET - Automatic Toll E-Tickting System for Transportation and Finding o...IRJET Journal
 
Rotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By MicrocontrollerRotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By MicrocontrollerIJSRD
 
Rotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By MicrocontrollerRotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By MicrocontrollerIJSRD
 
Design & Implementation Of Fault Identification In Underground Cables Using IOT
Design & Implementation Of Fault Identification In Underground Cables Using IOTDesign & Implementation Of Fault Identification In Underground Cables Using IOT
Design & Implementation Of Fault Identification In Underground Cables Using IOTIRJET Journal
 
12.automatic toll gate billing system using rfid.
12.automatic toll gate billing system using rfid.12.automatic toll gate billing system using rfid.
12.automatic toll gate billing system using rfid.Sai Krishna
 
IRJET- A Survey on: Smart Attendance Management System using RFID
IRJET- A Survey on: Smart Attendance Management System using RFIDIRJET- A Survey on: Smart Attendance Management System using RFID
IRJET- A Survey on: Smart Attendance Management System using RFIDIRJET Journal
 
ESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptx
ESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptxESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptx
ESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptxVenkateshVenkatesh96
 
Implementation of IOT based Student Healthcare Monitoring and Automation Boot...
Implementation of IOT based Student Healthcare Monitoring and Automation Boot...Implementation of IOT based Student Healthcare Monitoring and Automation Boot...
Implementation of IOT based Student Healthcare Monitoring and Automation Boot...IRJET Journal
 
Office Automation & Attendance System using IoT
Office Automation & Attendance System using IoTOffice Automation & Attendance System using IoT
Office Automation & Attendance System using IoTIRJET Journal
 
IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...
IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...
IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...IRJET Journal
 
137.gsm, fprs ,keypad_based_atm_security_(doc)
137.gsm, fprs ,keypad_based_atm_security_(doc)137.gsm, fprs ,keypad_based_atm_security_(doc)
137.gsm, fprs ,keypad_based_atm_security_(doc)Karteek Irukulla
 
IRJET- Intelligent Student Tracking and Monitoring for College Infrastruc...
IRJET-  	  Intelligent Student Tracking and Monitoring for College Infrastruc...IRJET-  	  Intelligent Student Tracking and Monitoring for College Infrastruc...
IRJET- Intelligent Student Tracking and Monitoring for College Infrastruc...IRJET Journal
 
Industrial monitoring and control system using android application
Industrial monitoring and control system using android applicationIndustrial monitoring and control system using android application
Industrial monitoring and control system using android applicationAvinash Vemula
 
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded SystemsSYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded SystemsArti Parab Academics
 
Density based traffic light controlling (2)
Density based traffic light controlling (2)Density based traffic light controlling (2)
Density based traffic light controlling (2)hardik1240
 
IRJET- Information Logging and Investigation of Control Framework Utilizing D...
IRJET- Information Logging and Investigation of Control Framework Utilizing D...IRJET- Information Logging and Investigation of Control Framework Utilizing D...
IRJET- Information Logging and Investigation of Control Framework Utilizing D...IRJET Journal
 
It 443 lecture 1
It 443 lecture 1It 443 lecture 1
It 443 lecture 1elisha25
 
Dharshan INTERNSHIP PPT-1.pptx
Dharshan INTERNSHIP PPT-1.pptxDharshan INTERNSHIP PPT-1.pptx
Dharshan INTERNSHIP PPT-1.pptxVinayakHiremath29
 
Rfid solution for solar panels
Rfid solution for solar panelsRfid solution for solar panels
Rfid solution for solar panelsBlaze_Hyd
 

Semelhante a Rfid based system for healthcare service (20)

IRJET - Automatic Toll E-Tickting System for Transportation and Finding o...
IRJET -  	  Automatic Toll E-Tickting System for Transportation and Finding o...IRJET -  	  Automatic Toll E-Tickting System for Transportation and Finding o...
IRJET - Automatic Toll E-Tickting System for Transportation and Finding o...
 
Rotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By MicrocontrollerRotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By Microcontroller
 
Rotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By MicrocontrollerRotary RFID Parking Management Solution Controlled By Microcontroller
Rotary RFID Parking Management Solution Controlled By Microcontroller
 
Design & Implementation Of Fault Identification In Underground Cables Using IOT
Design & Implementation Of Fault Identification In Underground Cables Using IOTDesign & Implementation Of Fault Identification In Underground Cables Using IOT
Design & Implementation Of Fault Identification In Underground Cables Using IOT
 
12.automatic toll gate billing system using rfid.
12.automatic toll gate billing system using rfid.12.automatic toll gate billing system using rfid.
12.automatic toll gate billing system using rfid.
 
IRJET- A Survey on: Smart Attendance Management System using RFID
IRJET- A Survey on: Smart Attendance Management System using RFIDIRJET- A Survey on: Smart Attendance Management System using RFID
IRJET- A Survey on: Smart Attendance Management System using RFID
 
ESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptx
ESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptxESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptx
ESP8266 MICROCONTROLLER APPLICATION IN WIRELESS SYNCHRONIZATION TASKS.pptx
 
Implementation of IOT based Student Healthcare Monitoring and Automation Boot...
Implementation of IOT based Student Healthcare Monitoring and Automation Boot...Implementation of IOT based Student Healthcare Monitoring and Automation Boot...
Implementation of IOT based Student Healthcare Monitoring and Automation Boot...
 
Office Automation & Attendance System using IoT
Office Automation & Attendance System using IoTOffice Automation & Attendance System using IoT
Office Automation & Attendance System using IoT
 
IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...
IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...
IRJET- Implementation of Cloud Robotics using Raspberry PI to Monitor Product...
 
137.gsm, fprs ,keypad_based_atm_security_(doc)
137.gsm, fprs ,keypad_based_atm_security_(doc)137.gsm, fprs ,keypad_based_atm_security_(doc)
137.gsm, fprs ,keypad_based_atm_security_(doc)
 
IRJET- Intelligent Student Tracking and Monitoring for College Infrastruc...
IRJET-  	  Intelligent Student Tracking and Monitoring for College Infrastruc...IRJET-  	  Intelligent Student Tracking and Monitoring for College Infrastruc...
IRJET- Intelligent Student Tracking and Monitoring for College Infrastruc...
 
Industrial monitoring and control system using android application
Industrial monitoring and control system using android applicationIndustrial monitoring and control system using android application
Industrial monitoring and control system using android application
 
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded SystemsSYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I   Core of Embedded Systems
SYBSC IT SEM IV EMBEDDED SYSTEMS UNIT I Core of Embedded Systems
 
Sdfgh
SdfghSdfgh
Sdfgh
 
Density based traffic light controlling (2)
Density based traffic light controlling (2)Density based traffic light controlling (2)
Density based traffic light controlling (2)
 
IRJET- Information Logging and Investigation of Control Framework Utilizing D...
IRJET- Information Logging and Investigation of Control Framework Utilizing D...IRJET- Information Logging and Investigation of Control Framework Utilizing D...
IRJET- Information Logging and Investigation of Control Framework Utilizing D...
 
It 443 lecture 1
It 443 lecture 1It 443 lecture 1
It 443 lecture 1
 
Dharshan INTERNSHIP PPT-1.pptx
Dharshan INTERNSHIP PPT-1.pptxDharshan INTERNSHIP PPT-1.pptx
Dharshan INTERNSHIP PPT-1.pptx
 
Rfid solution for solar panels
Rfid solution for solar panelsRfid solution for solar panels
Rfid solution for solar panels
 

Mais de Mohammed Irshad S K

Mais de Mohammed Irshad S K (7)

Electronics Engineer
Electronics EngineerElectronics Engineer
Electronics Engineer
 
Recruitment agencies list Dubai
Recruitment  agencies list DubaiRecruitment  agencies list Dubai
Recruitment agencies list Dubai
 
Electronics engineer resume
Electronics engineer resumeElectronics engineer resume
Electronics engineer resume
 
Electronics Engineer Resume Foramt
Electronics Engineer Resume ForamtElectronics Engineer Resume Foramt
Electronics Engineer Resume Foramt
 
Report on Enviorment Panel Monitoring
Report on Enviorment Panel MonitoringReport on Enviorment Panel Monitoring
Report on Enviorment Panel Monitoring
 
Cover letter
Cover letterCover letter
Cover letter
 
Resume electronics engineer 3years experience
Resume electronics engineer 3years experienceResume electronics engineer 3years experience
Resume electronics engineer 3years experience
 

Rfid based system for healthcare service

  • 1. RFID Based System For Healthcare Service 1. INTRODUCTION 1.1 Objective The main objective of this project is to provide the patient’s information to the Doctors. Although substantial progress was made in improving the sharing of patient medical information among healthcare providers, professionals still need to address the issue of efficient electronic medical records. Thus, real-time information presents a persistent challenge to the emergency response community. In emergency situations, particularly with unconscious, incoherent and unaccompanied patients, providing emergency physicians with a patient’s accurate medical history could be the difference between life and death. The RFID technology has penetrated the healthcare sector due to its increased functionality, low cost, high reliability and easy-to-use capabilities. As the present paper demonstrates, our major aim was to design an RFID-based system architecture and data model that would provide efficient means to perform essential information management for emergency care across hospital and country boundaries. 1.2 Approach RFID based healthcare system utilizes AT89S52 microcontroller, RFID reader, RFID tags, keypad, Liquid Crystal Display, RS232. In this system we are using RFID tags for storing the patient’s information. To write or read the information to the tag or from the tag we use the RFID reader. To enter the information we are using keypad and for display purpose we are using Liquid Crystal Display. 1.3 Principle of Operation In this system we have to provide the information about the patients to the doctors in terms of electronic records. In this when we put the tag before the reader it reads the information present in the tag and send it to the microcontroller through the serial communication RS232. The microcontroller sends the information to the LCD to display the information and if we want to change the information then we can use the keypad. www.final-yearproject.com | www.finalyearthesis.com
  • 2. RFID Based System For Healthcare Service EmbeddedSystems Embedded System is a combination of hardware and software used to achieve a single specific task. An embedded system is a microcontroller-based, software driven, reliable, realtime control system, autonomous, or human or network interactive, operating on diverse physical variables and in diverse environments and sold into a competitive and cost conscious market. An embedded system is a special-purpose computer system designed to perform a dedicated function. Unlike a general-purpose computer, such as a personal computer, an embedded system performs one or a few pre-defined tasks, usually with very specific requirements, and often includes task-specific hardware and mechanical parts not usually found in a generalpurpose computer. Since the system is dedicated to specific tasks, design engineers can optimize it, reducing the size and cost of the product. Embedded systems are often massproduced, benefiting from economies of scale. Physically, embedded systems range from portable devices such as digital watches and MP3 players, to large stationary installations like traffic lights, factory controllers, or the systems controlling nuclear power plants. In terms of complexity embedded systems run from simple, with a single microcontroller chip, to very complex with multiple units, peripherals and networks mounted inside a large chassis or enclosure. Mobile phones or handheld computers share some elements with embedded systems, such as the operating systems and microprocessors which power them, but are not truly embedded systems themselves because they tend to be more general purpose, allowing different applications to be loaded and peripherals to be connected. Characteristics of Embedded System: • An embedded system is any computer system hidden inside a product other than a computer • There will encounter a number of difficulties when writing embedded system software in addition to those we encounter when we write applications 1. Throughput – Our system may need to handle a lot of data in a short period of time. www.final-yearproject.com | www.finalyearthesis.com
  • 3. RFID Based System For Healthcare Service 2. Response–Our system may need to react to events quickly 3. Testability–Setting up equipment to test embedded software can be difficult 4. Debugability–Without a screen or a keyboard, finding out what the software is doing wrong (other than not working) is a troublesome problem 5. Reliability – embedded systems must be able to handle any situation without human intervention 6. Memory space – Memory is limited on embedded systems, and you must make the software and the data fit into whatever memory exists 7. Program installation – you will need special tools to get your software into embedded systems 8. Power consumption – Portable systems must run on battery power, and the software in these systems must conserve power 9. Processor hogs – computing that requires large amounts of CPU time can complicate the response problem 10. Cost – Reducing the cost of the hardware is a concern in many embedded system projects; software often operates on hardware that is barely adequate for the job. • Embedded systems have a microprocessor/ microcontroller and a memory. Some have a serial port or a network connection. They usually do not have keyboards, screens or disk drives. 1.4 Applications  To provide the information about the patients to the doctors  This equipment can be employed in any organization, industry for recognition purpose.  This can also be used in Payment systems such as Road tolls, Electronic tickets. www.final-yearproject.com | www.finalyearthesis.com
  • 4. RFID Based System For Healthcare Service 2. BLOCK DIAGRAM AND DESCRIPTION 2.1 Block Diagram Figure 2.1 Block Diagram of Project 2.2 Block DiagramDescription The block diagram and its brief description are explained in block wise and this consists of following blocks  Microcontroller  RFID Module  RS-232 Cable, MAX-232.  LCD (Liquid Crystal Display)  Power supply  Key pad www.final-yearproject.com | www.finalyearthesis.com
  • 5. RFID Based System For Healthcare Service AT89S52Microcontroller The major heart of this project is AT89s52 microcontroller, the reasons why we selected this in our project?,. The AT89S52 provides the following standard features: 8K bytes of Flash, 256 bytes of RAM, 32 I/O lines, Watchdog timer, two data pointers, three 16-bit timer/counters, a six-vector two-level interrupt architecture, a full duplex serial port, on-chip oscillator, and clock circuitry. In addition, the AT89S52 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port, and interrupt system to continue functioning. The Power-down mode saves the RAM con-tents but freezes the oscillator, disabling all other chip functions until the next interrupt or hardware reset. RFID Module Radio Frequency Identification (RFID) is a general term that is used to describe a system that transmits the identity (in the form of a unique serial number) of an object wirelessly, using radio waves. RFID is evolving as a major technology enabler for tracking goods and assets around the world. A great deal of attention is being paid to RFID by the IT industry, media and analysts. According to studies by Benchmark Research, in 2004 three quarters of manufacturing companies are now aware of RFID, of which a third are already using, piloting or investigating RFID applications for their organizations. Anticipating the potential benefits of RFID, many of the world’s major retailers are trialing RFID tagging for pallets and cases shipped into and out of their distribution centers. The consequence of this RFID activity in the retail sector is likely to impact on around 200,000 manufacturers and suppliers globally, and will fuel the market for hardware and software to support RFID. LCD A liquid crystal is a material (normally organic for LCDs) that will flow like a liquid but whose molecular structure has some properties normally associated with solids. The Liquid Crystal Display (LCD) is a low power device. The power requirement is typically in the order of microwatts for the LCD. However, an LCD requires an external or internal light www.final-yearproject.com | www.finalyearthesis.com
  • 6. RFID Based System For Healthcare Service source. It is limited to a temperature range of about 0C to 60C and lifetime is an area of concern, because LCDs can chemically degrade There are two major types of LCDs which are: 1. Dynamic-scattering LCDs 2. Field-effect LCDs Field-effect LCDs are normally used in such applications where source of energy is a prime factor (e.g., watches, portable instrumentation etc.).They absorb considerably less power than the light-scattering type. However, the cost for field-effect units is typically higher, and their hoight is limited to 2 inches. On the other hand, light-scattering units are available up to 8 inches in height. Field-effect LCD is used in the project for displaying the appropriate information. Power supply The Entire Project needs power for its operation. However, from the study of this project it comes to know that we supposed to design 5v and 12v dc power supply. So by utilizing the following power supply components, required power has been gained. (230/12v (1A and 500mA) – Step down transformers, Bridge rectifier to converter ac to dc, booster capacitor and +5v (7805) and +12v (7812) regulator to maintain constant 5v & 12 supply for the controller circuit and Fingerprint module). Keypad Keypads are the most widely used input devices of the AT89S52, and a basic understanding of them is essential. At the lowest level, keyboards are organized in a matrix of rows and columns. The CPU accesses both rows and column through ports; therefore, with 8bit ports, an 4*4 matrix of keys can be connected to a microprocessor. When a key pressed, a row and column make a connect; otherwise, there is no connection between row and column. In IBM PC keyboards, a single microcontroller (consisting of microprocessor, RAM and EPROM, and several ports all on a single chip) takes care of software and hardware interfacing of keyboard. In such systems it is the function of programs stored in the EPROM of microcontroller to scan the keys continuously, identify which one has been activated, and present it to the motherboard. In this section we look at the mechanism by which the AT89S52 scans and identifies the key. www.final-yearproject.com | www.finalyearthesis.com
  • 7. RFID Based System For Healthcare Service 3. RFIDMODULE 3.1 History of RFID In a very interesting article, the San Jose Mercury News tells us about Charles Walton, the manbehind the radio frequency identification technology (RFID). Since his first patent about it in1973, Walton, now 83 years old, collected about $3 million from royalties coming from hispatents. Unfortunately for him, his latest patent about RFID expired in the mid-1990s. So he willnot make any money from the billions of RFID tags that will appear in the years to come. But hecontinues to invent and his latest patent about a proximity card with incorporated PIN codeprotection was granted in June 2004. 3.2 RFID RFID is short for Radio Frequency Identification. Generally a RFID system consists of 2 parts.A Reader, and one or more Transponders, also known as Tags. RFID systems evolved frombarcode labels as a means to automatically identify and track products and people. You willbe generally familiar with RFIDsystems as seen in 1. Access Control RFID Readers placed at entrances that require a person to pass their proximity card (RFtag) to be” read” before the access can be made. 2. Contact less Payment Systems RFID tags used to carry payment information. RFIDs are particular suited to electronicToll collectionsystems. Tags attached to vehicles, or carried by people transmit payment information toa fixedreader attached to a Toll station. Payments are then routinely deducted from a usersaccount, orinformation is changed directly on the RFID tag. 3. Product Tracking and Inventory Control RFID systems are commonly used to track and record the movement of ordinary items such as library books, clothes, factory pallets, electrical goods and numerous items. www.final-yearproject.com | www.finalyearthesis.com
  • 8. RFID Based System For Healthcare Service Working of RFID Figure 3.2 Working of RFID Shown above is a typical RFID system. In every RFID system the transponder Tags containinformation. This information can be as little as a single binary bit , or be a large array of bitsrepresenting such things as an identity code, personal medical information, or literally any typeof information that can be stored in digital binary format.Shown is a RFID transceiver that communicates with a passive Tag. Passive tags have nopower source oftheir own and instead derive power from the incident electromagnetic field. Commonly theheart of each tagis a microchip. When the Tag enters the generated RF field it is able to draw enoughpower from the field toaccess its internal memory andtransmit its stored information.When the transponder Tag draws power in this way the resultant interaction of the RF fieldscauses the voltageat the transceiver antenna to drop in value. This effect is utilized by the Tag to communicate itsinformation tothe reader. The Tag is able to control the amount of power drawn from the field and bydoingso it can modulatethe voltage sensed at the Transceiver according to the bit pattern it wishes to transmit. 3.3 Componentsof RFID A basic RFID system consists of three components: 1. An antenna or coil 2. A transceiver (with decoder) 3. A transponder (RF tag) electronically programmed with unique information These are described below: www.final-yearproject.com | www.finalyearthesis.com
  • 9. RFID Based System For Healthcare Service 1. Antenna The antenna emits radio signals to activate the tag and read and write data to it. Antennas are theconduits between the tag and the transceiver, which controls the system's data acquisition andcommunication. Antennas are available in a variety of shapes and sizes; they can be built into adoor frame to receive tag data from persons or things passing through the door, or mounted on aninterstate tollbooth to monitor traffic passing by on a freeway. The electromagnetic fieldproduced by an antenna can be constantly present when multiple tags are expected continually. Ifconstant interrogation is not required, a sensor device can activate the field.Often the antenna is packaged with the transceiver and decoder to become a reader(a.k.a.interrogator), which can be configured either as a handheld or a fixed-mount device. The readeremits radio waves in ranges of anywhere from one inch to 100 feet or more, depending upon itspower output and the radio frequency used. When an RFID tag passes through theelectromagnetic zone, it detects the reader's activation signal. The reader decodes the dataencoded in the tag's integrated circuit (silicon chip) and the data is passed to the host computerfor processing. Figure 3.3.1 Antenna www.final-yearproject.com | www.finalyearthesis.com
  • 10. RFID Based System For Healthcare Service 2. Tags (Transponders) An RFID tag is comprised of a microchip containing identifying information and an antenna thattransmits this data wirelessly to a reader. At its most basic, the chip will contain a serializedidentifier, or license plate number, that uniquely identifies that item, similar to the way many bar codes are used today. A key difference, however is that RFID tags have a higher data capacity than their bar code counterparts. This increases the options for thetype of information that can be encoded on the tag, including the manufacturer, batch or lot number, weight, ownership, destination and history (such as the temperature range to which anitem has been exposed). In fact, an unlimited list of other types of information can be stored onRFID tags, depending on application needs. An RFID tag can be placed on individual items,cases or pallets for identification purposes, as well as on fixed assets such as trailers ,containers,totes, etc. Tags come in a variety of types, with a variety of capabilities. Key variables include “Read-only" versus "read-write" There are three options in terms of how data can be encoded on tags: (1) Read-only tags containdata such as a serialized tracking number, which is pre-written onto them by the tagmanufacturer or distributor. These are generally the least expensive tags because they cannothave any additional information included as they move throughout the supply chain. Any updatesto that information would have to be maintained in the application software that tracks SKUmovement and activity. (2) "Write once" tags enable a user to write data to the tag one time inproduction or distribution processes. Again, this may include a serial number, but perhaps otherdata such as a lot or batch number. (3) Full "read-write" tags allow new data to be written to thetag as needed—and even written over the original data. Examples for the latter capability mightinclude the time and dateof ownership transfer or updating the repair history of a fixed asset. While these are the mostcostly of the three tag types and are not practical for tracking inexpensive items, future standardsfor electronic product codes (EPC) appear to be headed in this direction. www.final-yearproject.com | www.finalyearthesis.com
  • 11. RFID Based System For Healthcare Service Figure 3.3.2RFID Tags Data capacity The amount of data storage on a tag can vary, ranging from 16 bits on the low end to as much asseveral thousand bits on the high end. Of course, the greater the storage capacity, the highertheprice per tag. Form factor The tag and antenna structure can come in a variety of physical form factors and can either beself-contained or embedded as part of a traditional label structure (i.e., the tag is inside what looks like a regular bar code label—this is termed a 'Smart Label') companies must choose theappropriate form factors for the tag very carefully and should expect to use multiple form factorsto suit the tagging needs of different physical products and units of measure. For example, apallet may have an RFID tag fitted only to an area of protected placement on the pallet itself. Onthe other hand, cartons on the pallet have RFID tags inside bar code labels that also provideoperators human-readable information and a back-up should the tag fail or pass through nonRFID-capable supply chain links. Passive versus active “Passive” tags have no battery and "broadcast" their data only when energized by a reader. Thatmeans they must be actively polled to send information. "Active" tags are capable ofbroadcasting their data using their own battery power. In general, this means that the read rangesare much greater for active tags than they are for passive tags—perhaps a read range of www.final-yearproject.com | www.finalyearthesis.com
  • 12. RFID Based System For Healthcare Service 100 feetor more, versus 15 feet or less for most passive tags. The extra capability and read ranges ofactive tags, however, come with a cost; they are several times more expensive than passive tags.Today, active tags are much more likely to be used for high-value items or fixed assets such astrailers, where the cost is minimal compared to item value, and very long read ranges arerequired. Most traditional supply chain applications, such as the RFID-based tracking andcompliance programs emerging in the consumer goods retail chain, will use the less expensivepassive tags. Frequencies Like all wireless communications, there are a variety of frequencies or spectra through whichRFID tags can communicate with readers. Again, there are trade-offs among cost, performanceand application requirements. For instance, low-frequency tags are cheaper than ultra highfrequency(UHF) tags, use less power and are better able to penetrate non-metallic substances.They are ideal for scanning objects with high water content, such as fruit, at close range. UHFfrequencies typically offer better range and can transfer data faster. But they use more power andare less likely to pass through some materials. UHF tags are typically best suited for use with ornear wood, paper, cardboard or clothing products. Compared to lowfrequency tags, UHF tagsmight be better for scanning boxes of goods as they pass through a bay door into a warehouse.While the tag requirements for compliance mandates may be narrowly defined, it is likely that avariety of tag types will be required to solve specific operational issues. You will want to workwith a company that is very knowledgeable in tag and reader technology to appropriately identifythe right mix of RFID technology for your environment and applications. EPC Tags EPC refers to "electronic product code," an emerging specification for RFID tags, readers andbusiness applications first developed at the Auto-ID Center at the Massachusetts Institute ofTechnology. This organization has provided significant intellectual leadership toward the use andapplication of RFID technology. EPC represents a specific approach to item identification,including an emerging standard for the tags themselves, including both the data content of the tagand open wireless communication protocols. In a sense, the EPC movement is combining thedata standards embodied in certain bar code specifications, such as the UPC www.final-yearproject.com | www.finalyearthesis.com
  • 13. RFID Based System For Healthcare Service or UCC-128 barcode standards, with the wireless datacommunication standards that have been developed by ANSI and other groups. 3. RF Transceiver The RF transceiver is the source of the RF energy used to activate and power the passive RFIDtags. The RF transceiver may be enclosed in the same cabinet as the reader or it may be aseparate piece of equipment. When provided as a separate piece of equipment, the transceiver iscommonly referred to as an RF module. The RF transceiver controls and modulates the radiofrequencies that the antenna transmits and receives. The transceiver filters and amplifies thebackscatter signal from a passive RFID tag. 3.4 Typical Applications for RFID 1. Logistics & Tracking  Item visibility and status  Anti theft/tamper evidence  Authentication 2. Manufacturing  Shop floor tracking  Location tracking  Status control  Compliance 3. Asset Tracking  Equipment movement  Calibration 4. MaintenanceHealthcare  Patient dosing  Traceability www.final-yearproject.com | www.finalyearthesis.com
  • 14. RFID Based System For Healthcare Service 5. Personnel Identification  Access control  Animal tagging  Car immobilizers 6. Payment systems  Road tolls  Electronic tickets  Mass transit ticketing Advantages of RFID Over Bar Coding 1. No "line of sight" requirements: Bar code reads can sometimes be limited orproblematic due to the need to have a direct "line of sight" between a scanner and a bar code.RFID tags can be read through materials without line of sight. 2. More automated reading: RFID tags can be read automatically when a taggedproduct comes past or near a reader, reducing the labor required to scan product and allowingmore proactive, real-time tracking. 3. Improved read rates: RFID tags ultimately offer the promise of higher readrates than bar codes, especially in high-speed operations such as carton sortation. 4. Greater data capacity: RFID tags can be easily encoded with item details suchas lot and batch, weight, etc. 5. "Write" capabilities: Because RFID tags can be rewritten with new data as supplychain activities are completed, tagged products carry updated information as theymove throughout the supply chain. Common Problems with RFID Some common problems with RFID are reader collision and tag collision. Reader collisionoccurs when the signals from two or more readers overlap. The tag is unable to respond tosimultaneous queries. Systems must be carefully set up to avoid this problem. Tag collisionoccurs when many tags are present in a small area; but since the read time is very fast, it is easierfor vendors to develop systems that ensure that tags respond one at a time. See Problems withRFID for more details. www.final-yearproject.com | www.finalyearthesis.com
  • 15. RFID Based System For Healthcare Service 4. MICROCONTROLLER 4.1 Introduction to Microcontroller A microcontroller (or MCU) is a computer-on-a-chip. It is a type of microprocessor emphasizing self-sufficiency and cost-effectiveness, in contrast to a general-purpose microprocessor (the kind used in a PC). A microprocessor is a programmable digital electronic component that incorporates the functions of a central processing unit (CPU) on a single semi conducting integrated circuit (IC). The microprocessor was born by reducing the word size of the CPU from 32 bits to 4 bits, so that the transistors of its logic circuits would fit onto a single part. One or more microprocessors typically serve as the CPU in a computer system, embedded system, or handheld device. Typical Microcontroller Architecture and Features The basic internal designs of microcontrollers are pretty similar. Figure1 shows the block diagram of a typical microcontroller. All components are connected via an internal bus and are all integrated on one chip. The modules are connected to the outside world via I/O pins. Figure 4.1 Basic Layout of Microcontroller The following list contains the modules typically found in a microcontroller. You can find a more detailed description of these components in later sections. www.final-yearproject.com | www.finalyearthesis.com
  • 16. RFID Based System For Healthcare Service Processor Core The CPU of the controller.It contains the arithmetic logic unit, the control unit, and the registers (stack pointer, program counter, accumulator register, register file . . .). Memory The memory is sometimes split into program memory and data memory. In larger controllers, a DMA controller handles data transfers between peripheral components and the memory. Interrupt Controller Interrupts are useful for interrupting the normal program flow in case of (important) external or internal events. In conjunction with sleep modes, they help to conserve power. Timer/Counter Most controllers have at least one and more likely 2-3 Timer/Counters, which can be used to timestamp events, measure intervals, or count events. Many controllers also contain PWM (pulse width modulation) outputs, which can be used to drive motors or for safe breaking (antilock brake system, ABS). Furthermore the PWM output can, in conjunction with an external filter, be used to realize a cheap digital/analog converter. Digital I/O Parallel digital I/O ports are one of the main features of microcontrollers. The number of I/O pins varies from 3-4 to over 90, depending on the controller family and the controller type. Analog I/O Apart from a few small controllers, most microcontrollers have integrated analog/digital converters, which differ in the number of channels (2-16) and their resolution (8-12 bits). The analog module also generally features an analog comparator. In some cases, the microcontroller includes digital/analog converters. The UART The Universal Asynchronous Receiver/Transmitter (UART) controller is the key component of the serial communications subsystem of a computer. The UART takes bytes of data and transmits the individual bits in a sequential fashion. At the destination, a second www.final-yearproject.com | www.finalyearthesis.com
  • 17. RFID Based System For Healthcare Service UART re-assembles the bits into complete bytesSerial transmission is commonly used with modems and for non-networked communication between computers, terminals and other devices. There are two primary forms of serial transmission: Synchronous and Asynchronous. Depending on the modes that are supported by the hardware, the name of the communication sub-system will usually include aA if it supports Asynchronous communications, and a S if it supports Synchronous communications. Both forms are described below. Synchronous Serial Transmission Synchronous serial transmission requires that the sender and receiver share a clock with one another, or that the sender provide a strobe or other timing signal so that the receiver knows when to “read” the next bit of the data. In most forms of serial Synchronous communication, if there is no data available at a given instant to transmit, a fill character must be sent instead so that data is always being transmitted. Synchronous communication is usually more efficient because only data bits are transmitted between sender and receiver, and synchronous communication can be more costly if extra wiring and circuits are required to share a clock signal between the sender and receiver. A form of Synchronous transmission is used with printers and fixed disk devices in that the data is sent on one set of wires while a clock or strobe is sent on a different wire. Printers and fixed disk devices are not normally serial devices because most fixed disk interface standards send an entire word of data for each clock or strobe signal by using a separate wire for each bit of the word. In the PC industry, these are known as Parallel devices. The standard serial communications hardware in the PC does not support Synchronous operations. This mode is described here for comparison purposes only Asynchronous Serial Transmission Asynchronous transmission allows data to be transmitted without the sender having to send a clock signal to the receiver. Instead, the sender and receiver must agree on timing www.final-yearproject.com | www.finalyearthesis.com
  • 18. RFID Based System For Healthcare Service parameters in advance and special bits are added to each word which are used to synchronize the sending and receiving units. When a word is given to the UART for Asynchronous transmissions, a bit called the "Start Bit" is added to the beginning of each word that is to be transmitted. The Start Bit is used to alert the receiver that a word of data is about to be sent, and to force the clock in the receiver into synchronization with the clock in the transmitter. These two clocks must be accurate enough to not have the frequency drift by more than 10% during the transmission of the remaining bits in the word. (This requirement was set in the days of mechanical teleprinters and is easily met by modern electronic equipment.) After the Start Bit, the individual bits of the word of data are sent, with the Least Significant Bit (LSB) being sent first. Each bit in the transmission is transmitted for exactly the same amount of time as all of the other bits, and the receiver “looks” at the wire at approximately halfway through the period assigned to each bit to determine if the bit is a 1 or a 0. For example, if it takes two seconds to send each bit, the receiver will examine the signal to determine if it is a 1 or a 0 after one second has passed, then it will wait two seconds and then examine the value of the next bit, and so on. The sender does not know when the receiver has “looked” at the value of the bit. The sender only knows when the clock says to begin transmitting the next bit of the word.When the entire data word has been sent, the transmitter may add a Parity Bit that the transmitter generates. The Parity Bit may be used by the receiver to perform simple error checking. Then at least one Stop Bit is sent by the transmitter. When the receiver has received all of the bits in the data word, it may check for the Parity Bits (both sender and receiver must agree on whether a Parity Bit is to be used), and then the receiver looks for a Stop Bit. 4.2AT89S52 MICROCONTROLLER Features www.final-yearproject.com | www.finalyearthesis.com
  • 19. RFID Based System For Healthcare Service • Compatible with MCS-51® Products • 8K Bytes of In-System Programmable (ISP) Flash Memory • 4.0V to 5.5V Operating Range • Fully Static Operation: 0 Hz to 33 MHz • Three-level Program Memory Lock • 256 x 8-bit Internal RAM • 32 Programmable I/O Lines • Three 16-bit Timer/Counters • Eight Interrupt Sources • Full Duplex UART Serial Channel • Low-power Idle and Power-down Modes • Interrupt Recovery from Power-down Mode • Watchdog Timer • Dual Data Pointer • Power-off Flag Description The AT89S52 is a low-power, high-performance CMOS 8-bit microcontroller with 8K bytes of in-system programmable Flash memory. The device is manufactured using Atmel’s high-density nonvolatile memory technology and is compatible with the industrystandard 80C51 instruction set and pin out. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional nonvolatile memory programmer. By combining a versatile 8-bit CPU with in-system programmable Flash on a monolithic chip, the Atmel AT89S52 is a powerful microcontroller which provides a highly-flexible and costeffective solution to many embedded control applications. www.final-yearproject.com | www.finalyearthesis.com
  • 20. RFID Based System For Healthcare Service The AT89S52 provides the following standard features: 8K bytes of Flash, 256 bytes of RAM, 32 I/O lines, Watchdog timer, two data pointers, three 16-bit timer/counters, a sixvector two-level interrupt architecture, a full duplex serial port, on-chip oscillator, and clock circuitry. In addition, the AT89S52 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. Pin diagram of AT89S52 Figure 4.2.1 Pin diagram ofAT89S52 Block Diagram of AT89S52 www.final-yearproject.com | www.finalyearthesis.com
  • 21. RFID Based System For Healthcare Service Fig 4.2.2 Block Diagramof AT89S52 Pin Description VCC Pin 40 provides supply voltage to the chip. The voltage source is + 5V. GND www.final-yearproject.com | www.finalyearthesis.com
  • 22. RFID Based System For Healthcare Service Pin 20 provides ground. Port 0 Port 0 is an 8-bit open drain bidirectional 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 can 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 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. In addition, P1.0 and P1.1 can be configured to be the timer/counter 2 external count input (P1.0/T2) and the timer/counter 2 trigger input (P1.1/T2EX), respectively, as shown in the following table. Port 1 also receives the low-order address bytes during Flash programming and verification. Table 4.2.1 Port1 Specificationsof AT89S52 Port 2 www.final-yearproject.com | www.finalyearthesis.com
  • 23. RFID Based System For Healthcare Service 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 uses 16-bit addresses (MOVX @ DPTR). In this application, Port 2 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 AT89S52, as shown in the following table. Port 3 also receives some control signals for Flash programming and verification. Table 4.2.2 Port3 Specificationsof AT89S52 RST www.final-yearproject.com | www.finalyearthesis.com
  • 24. RFID Based System For Healthcare Service Reset input. A high on this pin for two machine cycles while the oscillator is running resets the device. This pin drives High for 96 oscillator periods after the Watchdog times out. The DISRTO bit in SFR AUXR (address 8EH) can be used to disable this feature. In the default state of bit DISRTO, the RESET HIGH out feature is enabled. ALE/PROG Address Latch Enable (ALE) is an 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. PSEN Program Store Enable (PSEN) is the read strobe to external program memory. When the AT89S52 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. XTAL1 www.final-yearproject.com | www.finalyearthesis.com
  • 25. RFID Based System For Healthcare Service Input to the inverting oscillator amplifier and input to the internal clock operating circuit. XTAL2 Output from the inverting oscillator amplifier. Special Function Registers A map of the on-chip memory area called the Special Function Register (SFR) space is shown in Table 1. Note that not all of the addresses are occupied, and unoccupied addresses may not be implemented on the chip. Read accesses to these addresses will in general return random data, and write accesses will have an indeterminate effect. User software should not write 1s to these unlisted locations, since they may be used in future products to invoke new features. In that case, the reset or inactive values of the new bits will always be 0. Timer 2 Registers Control and status bits are contained in registers T2CON (shown in Table 2) and T2MOD (shown in Table 3) for Timer 2. The register pair (RCAP2H, RCAP2L) is the Capture/Reload registers for Timer 2 in 16-bit capture mode or 16-bit auto-reload mode. Interrupt Registers The individual interrupt enable bits are in the IE register. Two priorities can be set for each of the six interrupt sources in the IP register. Dual Data Pointer Registers To facilitate accessing both internal and external data memory, two banks of 16-bit Data Pointer Registers are provided: DP0 at SFR address locations 82H-83H and DP1 at 84H-85H. Bit DPS = 0 in SFR AUXR1 selects DP0 and DPS = 1 selects DP1. The user should always initialize the DPS bit to the appropriate value before accessing the respective Data Pointer Register. Power off Flag www.final-yearproject.com | www.finalyearthesis.com
  • 26. RFID Based System For Healthcare Service The Power Off Flag (POF) is located at bit 4 (PCON.4) in the PCON SFR. POF is set to “1” during power up. It can be set and rest under software control and is not affected by reset. Memory Organization MCS-51 devices have a separate address space for Program and Data Memory. Up to 64K bytes each of external Program and Data Memory can be addressed. Program Memory If the EA pin is connected to GND, all program fetches are directed to external memory. On the AT89S52, if EA is connected to VCC, program fetches to addresses 0000H through 1FFFH are directed to internal memory and fetches to addresses 2000H through FFFFH are to external memory. Data Memory The AT89S52 implements 256 bytes of on-chip RAM. The upper 128 bytes occupy a parallel address space to the Special Function Registers. This means that the upper 128 bytes have the same addresses as the SFR space but are physically separate from SFR space. When an instruction accesses an internal location above address 7FH, the address mode used in the instruction specifies whether the CPU accesses the upper 128 bytes of RAM or the SFR space. Instructions which use direct addressing access of the SFR space. For example, the following direct addressing instruction accesses the SFR at location 0A0H (which is P2). MOV 0A0H, #data Instructions that use indirect addressing access the upper 128 bytes of RAM. For example, the following indirect addressing instruction, where R0 contains 0A0H, accesses the data byte at address 0A0H, rather than P2 (whose address is 0A0H). MOV @R0, #data Note that stack operations are examples of indirect addressing, so the upper 128 bytes of data RAM are available as stack space. Watchdog Timer(One-time Enabled with Reset-out) www.final-yearproject.com | www.finalyearthesis.com
  • 27. RFID Based System For Healthcare Service The WDT is intended as a recovery method in situations where the CPU may be subjected to software upsets. The WDT consists of a 13-bit counter and the Watchdog Timer Reset (WDTRST) SFR. The WDT is defaulted to disable from exiting reset. To enable the WDT, a user must write 01EH and 0E1H in sequence to the WDTRST register (SFR location 0A6H). When the WDT is enabled, it will increment every machine cycle while the oscillator is running. The WDT timeout period is dependent on the external clock frequency. There is no way to disable the WDT except through reset (either hardware reset or WDT overflow (reset). When WDT overflows, it will drive an output RESET HIGH pulse at the RST pin. Using the WDT To enable the WDT, a user must write 01EH and 0E1H in sequence to the WDTRST register (SFR location 0A6H). When the WDT is enabled, the user needs to service it by writing 01EH and 0E1H to WDTRST to avoid a WDT overflow. The 13-bit counter overflows when it reaches 8191 (1FFFH), and this will reset the device. When the WDT is enabled, it will increment every machine cycle while the oscillator is running. This means the user must reset the WDT at least every 8191 machine cycles. To reset the WDT the user must write 01EH and 0E1H to WDTRST. DTRST is a write-only register. The WDT counter cannot be read or written. When WDT overflows, it will generate an output RESET pulse at the RST pin. The RESET pulse duration is 96xTOSC, where TOSC=1/FOSC. To make the best use of the WDT, it should be serviced in those sections of code that will periodically be executed within the time required to prevent a WDT reset. UART Serial data communication uses two methods, asynchronous and synchronous. The synchronous method transfers a block of data (characters) at a time, while the asynchronous method transfers a single byte at a time. It is possible to write software to use either of these methods, but programs can be tedious and long. For this reason, there are special IC chips made by the manufacturers for the serial data communications. These chips are commonly referred to as UART (universal asynchronous receiver-transmitter) and USART (universal synchronous receiver-transmitter). The 8052 has built-in UART. Timer 0 www.final-yearproject.com | www.finalyearthesis.com
  • 28. RFID Based System For Healthcare Service The 16-bit register of timer 0 is accessed as low byte and high byte. The low byte register is called TL0 (Timer 0 low byte) and the high byte register is referred to as TH0 (Timer 0 high byte). These registers can be accessed like any other registers, such as A, B, R0, R1, R2 etc. for example the instruction “MOV TL0, #4FH” moves the value 4FH into TL0, the low byte of Timer 0. These registers can also be read like any other register. For example, “MOV R5, TH0” saves TH0 (high byte of Timer 0) in R5. Timer1 Timer 1 is also 16 bits and its 16-bit register is split into two bytes, referred to as TL1 (Timer 1 low byte) and TH1 ( Timer 1 high byte). These registers are accessible in the same way as the registers of Timer 0. Timer 2 Timer 2 is a 16-bit Timer/Counter that can operate as either a timer or an event counter. The type of operation is selected by bit C/T2 in the SFR T2CON (shown in Table 2). Timer 2 has three operating modes: capture, auto-reload (up or down counting), and baud rate generator. The modes are selected by bits in T2CON, as shown in Table 3. Timer 2 consists of two 8-bit registers, TH2 and TL2. In the Timer function, the TL2 register is incremented every machine cycle. Since a machine cycle consists of 12 oscillator periods, the count rate is 1/12 of the oscillator frequency. Table 4.2.3 Timer2 Operating Modes of AT89S52 In the Counter function, the register is incremented in response to a 1-to-0 transition at its corresponding external input pin, T2. In this function, the external input is sampled during S5P2 of every machine cycle. When the samples show a high in one cycle and a low in the next cycle, the count is incremented. The new count value appears in the register during S3P1 of the cycle following the one in which the transition was detected. Since two machine cycles www.final-yearproject.com | www.finalyearthesis.com
  • 29. RFID Based System For Healthcare Service (24 oscillator periods) are required to recognize a 1-to-0 transition, the maximum count rate is 1/24 of the oscillator frequency. To ensure that a given level is sampled at least once before it changes, the level should be held for at least one full machine cycle. Interrupts The AT89S52 has a total of six interrupt vectors: two external interrupts (INT0 and INT1), three timer interrupts (Timers 0, 1, and 2), and the serial port interrupt. These interrupts are all shown in Figure 10. Each of these interrupt sources can be individually enabled or disabled by setting or clearing a bit in Special Function Register IE. IE also contains a global disable bit, EA, which disables all interrupts at once. Note that Table 5 shows that bit position IE.6 is unimplemented. In the AT89S52, bit position IE.5 is also unimplemented. User software should not write 1s to these bit positions, since they may be used in future AT89 products. Timer 2 interrupt is generated by the logical OR of bits TF2 and EXF2 in register T2CON. Neither of these flags is cleared by hardware when the service routine is vectored to. In fact, the service routine may have to determine whether it was TF2 or EXF2 that generated the interrupt, and that bit will have to be cleared in software. The Timer 0 and Timer 1 flags, TF0 and TF1, are set at S5P2 of the cycle in which the timers overflow. The values are then polled by the circuitry in the next cycle. However, the Timer 2 flag, TF2, is set at S2P2 and is polled in the same cycle in which the timer overflows. Oscillator Characteristics XTAL1 and XTAL2 are the input and output, respectively, of an inverting amplifier that can be configured for use as an on-chip oscillator, as shown in Figure 11. 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 in Figure 12. There are no requirements on the duty cycle of the external clock signal, since the input to the internal clocking circuitry is through a divide-by-two flip-flop, but minimum and maximum voltage high and low time specifications must be observed. Oscillator connections www.final-yearproject.com | www.finalyearthesis.com
  • 30. RFID Based System For Healthcare Service Figure4.2.3 Oscillator Connectionsof AT89S52 Note: C1, C2 = 30 pF ± 10 pF for Crystals = 40 pF ± 10 pF for Ceramic Resonators External Clock Drive Configuration Figure 4.2.4 External Clock Drive Configurationof AT89S52 Idle Mode In idle mode, the CPU puts itself to sleep while all the on chip peripherals remain active. The mode is invoked by software. The content of the on-chip RAM and all the specialfunctions registers remain unchanged during this mode. The idle mode can be terminated by any www.final-yearproject.com | www.finalyearthesis.com
  • 31. RFID Based System For Healthcare Service enabled interrupt or by a hardware reset. Note that when idle mode is terminated by a hardware 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 mode is terminated by a reset, the instruction following the one that invokes idle mode should not write to a port pin or to external memory. Power-down Mode In the Power-down mode, the oscillator is stopped, and the instruction that invokes Powerdown is the last instruction executed. The on-chip RAM and Special Function Registersretain their values until the Power-down mode is terminated. Exit from Power-down mode can be initiated either by a hardware reset or by an enabled external interrupt. Reset redefines the SFRs but does not change the on-chip RAM. The reset should not be activated before VCC is restored to its normal operating level and must be held active long enough to allow the oscillator to restart and stabilize. Status of External Pins during Idle and Power-down Modes Table 4.2.4 Power down and Idle Modesof AT89S52 5. FUNCTIONAL DESCRIPTIONS 5.1 Liquid Crystal Display www.final-yearproject.com | www.finalyearthesis.com
  • 32. RFID Based System For Healthcare Service Liquid crystal display (LCD) has material which combines the properties of both liquid and crystals. 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 order form similar to a crystal. First thing to begin with is to know what LCD driver/controller is used in LCD.Yes, your LCD is dumb it does not know to talk with your microcontroller. LCD driver is a link between the microcontroller and LCD. You can refer the datasheet of LCD to know the LCD driver for e.g. JHD 162A is name of LCD having driver HD44780U.You have to interface the LCD according to the driver specification. To understand the algorithm of LCD interfacing user must have datasheet of both LCD and LCD driver. Many people ignore the datasheets and end up in troubles. If you want to interface LCD successfully you must have datasheets. Figure5.1.1 LCD Module More microcontroller devices are using 'smart LCD' displays to output visual information. The following discussion covers the connection of a Hitachi LCD display to a PIC microcontroller. LCD displays designed around Hitachi's LCD HD44780 module, are inexpensive, easy to use, and it is even possible to produce a readout using the 8 x 80 pixels of the display. Hitachi LCD displays have a standard ASCII set of characters plus Japanese, Greek and mathematical symbols. Hardware Diagram www.final-yearproject.com | www.finalyearthesis.com
  • 33. RFID Based System For Healthcare Service 16 x 2 Char LCD A D0 EN RW K D7 RS Vf GND ACK Vcc D0 – D7 R1 R2 Figure 5.1.2 LCD pin configuration For an 8-bit data bus, the display requires a +5V supply plus 11 I/O lines. For a 4-bit data bus it only requires the supply lines plus seven extra lines. When the LCD display is not enabled, data lines are tri-state which means they are in a state of high impedance (as though they are disconnected) and this means they do not interfere with the operation of the microcontroller when the display is not being addressed. The LCD also requires 3 "control" lines from the microcontroller. When the LCD is initialized, it is ready to continue receiving data or instructions. If it receives a character, it will write it on the display and move the cursor one space to the right. The Cursor marks the next location where a character will be written. When we want to write a string of characters, first we need to set up the starting address, and then send one character at a time. Pins description www.final-yearproject.com | www.finalyearthesis.com
  • 34. RFID Based System For Healthcare Service Table 5.1 LCD Pin Description Logic status on control lines RS (Command / Data): This bit is to specify weather received byte is command or data. So that LCD can recognize the operation to be performed based on the bit status. RS = 0 => Command RS = 1 => Data RW (Read / Write) RW bit is to specify weather controller wants READ from LCD or WRITE to LCD. The READ operation here is just ACK bit to know weather LCD is free or not. RW = 0 => Write RW = 1 => Read EN (Enable LCD) EN bit is to ENABLE or DISABLE the LCD. When ever controller wants to write some thing into LCD or READ acknowledgment from LCD it needs to enable the LCD. EN = 0 => High Impedance www.final-yearproject.com | www.finalyearthesis.com
  • 35. RFID Based System For Healthcare Service EN = 1 => Low Impedance ACK (LCD Ready) ACK bit is to acknowledge the MCU that LCD is free so that it can send new command or data to be stored in its internal Ram locations. ACK = 1 => Not ACK ACK = 0 => ACK Reading data from the LCD is done in the same way, but control line R/W has to be high. When we send a high to the LCD, it will reset and wait for instructions. Typical instructions sent to LCD display after a reset are: turning on a display, turning on a cursor and writing characters from left to right. Characters that can be shown on the display are stored in data display (DD) RAM. The size of DDRAM is 80 bytes. Before we access DD RAM after defining a special character, the program must set the DD RAM address. Writing and reading data from any LCD memory is done from the last address which was set up using set-address instruction. Once the address of DD RAM is set, a new written character will be displayed at the appropriate place on the screen. Until now we discussed the operation of writing and reading to an LCD as if it were an ordinary memory. But this is not so. The LCD controller needs 40 to 120 microseconds (uS) for writing and reading. Other operations can take up to 5 mS. During that time, the microcontroller can not access the LCD, so a program needs to know when the LCD is busy. We can solve this in two ways.One way is to check the BUSY bit found on data line D7. This is not the best method because LCD's can get stuck, and program will then stay forever in a loop checking the BUSY bit. The other way is to introduce a delay in the program. The delay has to be long enough for the LCD to finish the operation in process. At the beginning we mentioned that we needed 11 I/O lines to communicate with an LCD. However, we can communicate with an LCD through a 4-bit data bus. Thus we can reduce the total number of communication lines to seven. 5.2 Power Supply Unit The input to the circuit is applied from the regulated power supply. The a.c. input i.e., 230V from the mains supply is step down by the transformer to 12V and is fed to a rectifier. The output obtained from the rectifier is a pulsating d.c voltage. So in order to get a pure d.c www.final-yearproject.com | www.finalyearthesis.com
  • 36. RFID Based System For Healthcare Service voltage, the output voltage from the rectifier is fed to a filter to remove any a.c components present even after rectification. Now, this voltage is given to a voltage regulator to obtain a pure constant dc voltage. Block diagram Figure 5.2.1 power supply Power supply unit consists of following units i) Step down transformer ii) Rectifier unit iii) Input filter iv).Regulator unit v) Output filter Stepdown Transformer The Step down Transformer is used to step down the main supply voltage from 230V AC to lower value. This 230 AC voltage cannot be used directly, thus it is stepped down. The Transformer consists of primary and secondary coils. To reduce or step down the voltage, the transformer is designed to contain less number of turns in its secondary core. The output from the secondary coil is also AC waveform. Thus the conversion from AC to DC is essential. This conversion is achieved by using the Rectifier Circuit/Unit. Step down transformers can step down incoming voltage, which enables you to have the correct voltage input for your electrical needs. For example, if our equipment has been specified for input voltage of 12 volts, and the main power supply is 230 volts, we will need a www.final-yearproject.com | www.finalyearthesis.com
  • 37. RFID Based System For Healthcare Service step down transformer, which decreases the incoming electrical voltage to be compatible with your 12 volt equipment. Rectifier Unit The Rectifier circuit is used to convert the AC voltage into its corresponding DC voltage. The most important and simple device used in Rectifier circuit is the diode. The simple function of the diode is to conduct when forward biased and not to conduct in reverse bias. Now we are using three types of rectifiers. They are 1. Half-wave rectifier 2. Full-wave rectifier 3. Bridge rectifier 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 Bridge Rectifier A bridge rectifier makes use of four diodes in a bridge arrangement to achieve fullwave rectification. This is a widely used configuration, both with individual diodes wired as shown and with single component bridges where the diode bridge is wired internally. A diode bridge or bridge rectifier is an arrangement of four diodes in a bridge configuration that provides the same polarity of output voltage for either polarity of input voltage. When used in its most common application, for conversion of alternating current (AC) input into direct current (DC) output, it is known as a bridge rectifier. A bridge rectifier provides full-wave rectification from a two-wire AC input, resulting in lower cost and weight as compared to a center-tappedtransformer design. The Forward Bias is achieved by connecting the diode’s positive with positive of the battery and negative with battery’s negative. The efficient circuit used is the Full wave Bridge www.final-yearproject.com | www.finalyearthesis.com
  • 38. RFID Based System For Healthcare Service rectifier circuit. The output voltage of the rectifier is in rippled form, the ripples from the obtained DC voltage are removed using other circuits available. The circuit used for removing the ripples is called Filter circuit. Input Filter Capacitors are used as filter. The ripples from the DC voltage are removed and pure DC voltage is obtained. And also these capacitors are used to reduce the harmonics of the input voltage. The primary action performed by capacitor is charging and discharging. It charges in positive half cycle of the AC voltage and it will discharge in negative half cycle. So it allows only AC voltage and does not allow the DC voltage. This filter is fixed before the regulator. Thus the output is free from ripples. Regulator Unit Regulator regulates the output voltage to be always constant. The output voltage is maintained irrespective of the fluctuations in the input AC voltage. As and then the AC voltage changes, the DC voltage also changes. Thus to avoid this Regulators are used. Also when the internal resistance of the power supply is greater than 30 ohms, the output gets affected. Thus this can be successfully reduced here. The regulators are mainly classified for low voltage and for high voltage. Further they can also be classified as i) Positive regulator 1. input pin 2. ground pin 3. output pin It regulates the positive voltage. ii) Negative regulator 1. ground pin 2. input pin 3. output pin It regulates the negative voltage. Fixed Regulators www.final-yearproject.com | www.finalyearthesis.com
  • 39. RFID Based System For Healthcare Service Figure 5.2.2 An Assortment of 78xx Series ICs "Fixed" three-terminal linear regulators are commonly available to generate fixed voltages of plus 3 V, and plus or minus 5 V, 9 V, 12 V, or 15 V when the load is less than about 7 amperes. 7805 Voltage Regulator The 7805 provides circuit designers with an easy way to regulate DC voltages to 5v. Encapsulated in a single chip/package (IC), the 7805 is a positive voltage DC regulator that has only 3 terminals. They are: Input voltage, Ground, Output Voltage. General Features  Output Current up to 1A  Output Voltages of 5, 6, 8, 9, 10, 12, 15, 18, 24V  Thermal Overload Protection  Short Circuit Protection  Output Transistor Safe Operating Area Protection Output Filter The Filter circuit is often fixed after the Regulator circuit. Capacitor is most often used as filter. The principle of the capacitor is to charge and discharge. It charges during the positive half cycle of the AC voltage and discharges during the negative half cycle. So it allows only AC voltage and does not allow the DC voltage. This filter is fixed after the Regulator circuit to filter any of the possibly found ripples in the output received finally. Here we used 0.1µF capacitor. The output at this stage is 5V and is given to the Microcontroller. The output voltage overshoots when the load is removed or a short clears. When the load is removing from a switching mode power supply with a LC low-pass output filter, the only thing the control loop can do is stop the switching action so no more energy is taken from the source. www.final-yearproject.com | www.finalyearthesis.com
  • 40. RFID Based System For Healthcare Service The energy that is stored in the output filter inductor is dumped into the output capacitor causing a voltage overshoot. The magnitude of the overshoot is the vector sum of two orthogonal voltages, the output voltage before the load is removed and the current through the inductor times the characteristic impedance of the output filter, Zo = (L/C)^1/2. This can be derived from conservation of energy considerations. The two energies are equal when the load is removed, since the load is no longer taking energy from the system. Equating the two energies, substituting zero current for the final inductor current, then the solution for the final voltage Vf is: This is the orthogonal vector sum of the output voltage and the load current times the characteristic impedance and is illustrated in Figure .The problem becomes worse if the current in the inductor is established by a short circuit on the output and the short circuit clears. In this case, the initial voltage is zero (short circuit) and the overshoot is I*Zo, where I can be very large, resulting in a ruinous overshoot. 5.3Serial Communication Theinformation from micro controller is sent to system through serial communication by using MAX-232 ic in between micro controller and RS232 DB9 connector. This MAX232 acts as voltage level translator i.e., the TTL logic voltage level is to be transformed to RS232 DB9 connector voltage level of the system. In short a MAX –232 is nothing but a clamper circuit, which consists of diodes and capacitors i.e., the voltage level translator. is done through clamping circuit here diodes are inbuilt, whereas the capacitors are to be connected externally . Introduction In this chapter we are going to cover basic concepts involved in the project such as serial communication and modem activation commands. The serial communication is between the modem and MCU and also between modem and PC. Serial Communication www.final-yearproject.com | www.finalyearthesis.com
  • 41. RFID Based System For Healthcare Service In order to connect micro controller to a modem or a pc to modem a serial port is used. Serial is a very common protocol for device communication that is standard on almost every PC. Most computers include two RS-232 based serial ports. Serial is also a common communication protocol that is used by many devices for instrumentation; numerous GPIBcompatible devices also come with an RS-232 port. Furthermore, serial communication can be used for data acquisition in conjunction with a remote sampling device The concept of serial communication is simple. The serial port sends and receives bytes of information one bit at a time. Although this is slower than parallel communication, which allows the transmission of an entire byte at once, it is simpler and can be used over longer distances. For example, the IEEE 488 specifications for parallel communication state that the cabling between equipment can be no more than 20 meters total, with no more than 2 meters between any two devices. serial, however, can extend as much as 1200 meters. Typically, serial is used to transmit ASCII data. Communication is completed using 3 transmission lines: (1) Ground, (2) Transmit, and (3) Receive. Since serial is asynchronous, the port is able to transmit data on one line while receiving data on another. Other lines are available for handshaking, but are not required. The important serial characteristics are baud rate, data bits, stop bits, and parity. For two ports to communicate, these parameters must match. Baud rate It is a speed measurement for communication. It indicates the number of bit transfers per second. For example, 300 baud is 300 bits per second. When a clock cycle is referred it means the baud rate. For example, if the protocol calls for a 4800 baud rate, then the clock is running at 4800Hz. This means that the serial port is sampling the data line at 4800Hz. Common baud rates for telephone lines are 14400, 28800, and 33600. Baud rates greater than these are possible, but these rates reduce the distance by which devices can be separated. These high baud rates are used for device communication where the devices are located together, as is typically the case with GPIB devices. Data bits A measurement of the actual data bits in a transmission. When the computer sends a packet of information, the amount of actual data may not be a full 8 bits. Standard values for the data packets are 5, 7, and 8 bits. Which setting choosen depends on what information www.final-yearproject.com | www.finalyearthesis.com
  • 42. RFID Based System For Healthcare Service transferred? For example, standard ASCII has values from 0 to 127 (7 bits). Extended ASCII uses 0 to 255 (8 bits). If the data being transferred is simple text (standard ASCII), then sending 7 bits of data per packet is sufficient for communication. A packet refers to a single byte transfer, including start/stop bits, data bits, and parity. Since the number of actual bits depends on the protocol selected, the term packet is used to cover all instances. Stop bits Used to signal the end of communication for a single packet. Typical values are 1, 1.5, and 2 bits. Since the data is clocked across the lines and each device has its own clock, it is possible for the two devices to become slightly out of sync. Therefore, the stop bits not only indicate the end of transmission but also give the computers some room for error in the clock speeds. The more bits that are used for stop bits, the greater the lenience in synchronizing the different clocks, but the slower the data transmission rate. Parity A simple form of error checking that is used in serial communication. There are four types of parity: even, odd, marked, and spaced. The option of using no parity is also available. For even and odd parity, the serial port sets the parity bit (the last bit after the data bits) to a value to ensure that the transmission has an even or odd number of logic high bits. For example, if the data is 011, then for even parity, the parity bit is 0 to keep the number of logic-high bits even. If the parity is odd, then the parity bit is 1, resulting in 3 logic-high bits. Marked and spaced parity does not actually check the data bits, but simply sets the parity bit high for marked parity or low for spaced parity. This allows the receiving device to know the state of a bit to enable the device to determine if noise is corrupting the data or if the transmitting and receiving device clocks are out of sync. RS –232 RS-232 (ANSI/EIA-232 Standard) is the serial connection found on IBM-compatible PCs. It is used for many purposes, such as connecting a mouse, printer, or modem, as well as industrial instrumentation. Because of improvements in line drivers and cables, applications often increase the performance of RS-232 beyond the distance and speed listed in the standard. RS-232 is limited to point-to-point connections between PC serial ports and devices. RS-232 hardware can be used for serial communication up to distances of 50 feet . www.final-yearproject.com | www.finalyearthesis.com
  • 43. RFID Based System For Healthcare Service DB-9 pin connector 12345 6789 Pin Functions: Data: TxD on pin 3, RxD on pin 2 Handshake: RTS on pin 7, CTS on pin 8, DSR on pin 6, CD on pin 1, DTR on pin 4 Common: Common pin 5(ground) Other: RI on pin 9 The method used by RS-232 for communication allows for a simple connection of three lines: Tx, Rx, and Ground. The three essential signals for 2 way RS232Communications are these: TXD: carries data from DTE to the DCE. RXD: carries data from DCE to the DTE SG: signal ground Here in our project DTE is the micro controller at the remote station and PC at the base station, DCE is the modem at both the stations. However the data to be transmitted, both sides have to be clocking the data at the same baud rate. Even though this method is sufficient for most applications, it is limited in being able to respond to problems such as the receiver getting overloaded. This is where serial handshaking can help. This method uses actual hardware lines. There are two pairs of hand shaking signals DTR/DSR and www.final-yearproject.com | www.finalyearthesis.com
  • 44. RFID Based System For Healthcare Service MAX232 Pin Diagram Of Max232 Figure 5.3 Max232 Pin Diagram This module is primary of interest for people building their own electronics with an RS-232 interface. Off-the-shelf computers with RS-232 interfaces already contain the necessary electronics, and there is no need to add the circuitry as described here. Serial RS-232 (V.24) communication works with voltages (-15V ... -3V for high [sic]) and +3V ... +15V for low [sic]) which are not compatible with normal computer logic voltages. On the other hand, classic TTL computer logic operates between 0V ... +5V (roughly 0V ... +0.8V for low, +2V ... +5V for high). Modern low-power logic operates in the range of 0V ... +3.3V or even lower. So, the maximum RS-232 signal levels are far too high for computer logic electronics, and the negative RS-232 voltage for high can't be grokked at all by computer logic. Therefore, to receive serial data from an RS-232 interface the voltage has to be reduced, and the low and high voltage level inverted. In the other direction (sending data from some logic over RS-232) the low logic voltage has to be "bumped up", and a negative voltage has to be generated, too. www.final-yearproject.com | www.finalyearthesis.com
  • 45. RFID Based System For Healthcare Service Table 5.3.1 Voltage levels for RS232 and TTL All this can be done with conventional analog electronics, e.g. a particular power supply and a couple of transistors or the once popular 1488 (transmitter) and 1489 (receiver) ICs. However, since more than a decade it has become standard in amateur electronics to do the necessary signal level conversion with an integrated circuit (IC) from the MAX232 family (typically a MAX232A or some clone). In fact, it is hard to find some RS-232 circuitry in amateur electronics without a MAX232A or some clone. The MAX232 from Maxim was the first IC which in one package contains the necessary drivers (two) and receivers (also two), to adapt the RS-232 signal voltage levels to TTL logic. It became popular, because it just needs one voltage (+5V) and generates the necessary RS-232 voltage levels (approx. -10V and +10V) internally. This greatly simplified the design of circuitry. Circuitry designers no longer need to design and build a power supply with three voltages (e.g. -12V, +5V, and +12V), but could just provide one +5V power supply, e.g. with the help of a simple 78x05 voltage converter. The MAX232 has a successor, the MAX232A. The ICs are almost identical, however, the MAX232A is much more often used (and easier to get) than the original MAX232, and the MAX232A only needs external capacitors 1/10th the capacity of what the original MAX232 needs. It should be noted that the MAX232(A) is just a driver/receiver. It does not generate the necessary RS-232 sequence of marks and spaces with the right timing, it does not decode the RS-232 signal, it does not provide a serial/parallel conversion. All it does is to convert signal voltage levels. Generating serial data with the right timing and decoding serial data has to be done by additional circuitry, e.g. by a 16550 UART or one of these small micro controllers (e.g. Atmel AVR, Microchip PIC) getting more and more popular. www.final-yearproject.com | www.finalyearthesis.com
  • 46. RFID Based System For Healthcare Service The MAX232 and MAX232A were once rather expensive ICs, but today they are cheap. It has also helped that many companies now produce clones (i.e. Sipex). These clones sometimes need different external circuitry, e.g. the capacities of the external capacitors vary. It is recommended to check the data sheet of the particular manufacturer of an IC instead of relying on Maxim's original data sheet. The original manufacturer (and now some clone manufacturers, too) offers a large series of similar ICs, with different numbers of receivers and drivers, voltages, built-in or external capacitors, etc. E.g. The MAX232 and MAX232A need external capacitors for the internal voltage pump, while the MAX233 has these capacitors built-in. The MAX233 is also between three and ten times more expensive in electronic shops than the MAX232A because of its internal capacitors. It is also more difficult to get the MAX233 than the garden variety MAX232A.A similar IC, the MAX3232 is nowadays available for low-power 3V logic. MAX232Application The MAX232(A) has two receivers (converts from RS-232 to TTL voltage levels) and two drivers (converts from TTL logic to RS-232 voltage levels). This means only two of the RS-232 signals can be converted in each direction. The old MC1488/1498 combo provided four drivers and receivers. Typically a pair of a driver/receiver of the MAX232 is used for TX and RX and the second one for CTS and RTS. There are not enough drivers/receivers in the MAX232 to also connect the DTR, DSR, and DCD signals. Usually these signals can be omitted when e.g. communicating with a PC's serial interface. If the DTE really requires these signals either a second MAX232 is needed, or some other IC from the MAX232 family can be used (if it can be found in consumer electronic shops at all). An alternative for DTR/DSR is also given below.Maxim's data sheet explains the MAX232 family in great detail, including the pin configuration and how to connect such an IC to external circuitry. Exactly to connect the RS232 signals to the IC. So here is one possible example: www.final-yearproject.com | www.finalyearthesis.com
  • 47. RFID Based System For Healthcare Service MAX232 Pin Nbr. MAX232 Pin Name Signal Voltage DB9 Pin 7 T2out CTS RS-232 7 8 R2in RTS RS-232 8 9 R2out RTS TTL n/a 10 T2in CTS TTL n/a 11 T1in TX TTL n/a 12 R1out RX TTL n/a 13 R1in RX RS-232 2 14 T1out TX RS-232 3 15 GND GND 0 5 Table 5.3.2 RS232-DB9 pin Diagram specifications 5.4 Keypad Keypads and LCDs are the most widely used input/output devices of the 8051, and a basic understanding of them is essential. At the lowest level, keyboards are organized in a matrix of rows and columns. The CPU accesses both rows and column through ports; therefore, with 8-bit ports, an 4*4 matrix of keys can be connected to a microprocessor. When a key pressed, a row and column make a connect; otherwise, there is no connection between row and column. In IBM PC keyboards, a single microcontroller (consisting of microprocessor, RAM and EPROM, and several ports all on a single chip) takes care of software and hardware interfacing of keyboard. In such systems it is the function of programs stored in the EPROM of microcontroller to scan the keys continuously, identify which one has been activated, and present it to the motherboard. In this section we look at the mechanism by which the 8051 scans and identifies the key. www.final-yearproject.com | www.finalyearthesis.com
  • 48. RFID Based System For Healthcare Service A 4*4 matrix connected to two ports. The rows are connected to an output port and the columns are connected to an input port. If no key has been pressed, reading the input port will yield 1s for all columns since they are all connected to high (Vcc) If all the rows are grounded and a key is pressed, one of the columns will have 0 since the key pressed provides the path to ground. It is the function of the microcontroller to scan the keyboard continuously to detect and identify the key pressed. How it is done is explained next. Figure 5.4 4*4 Keypad To detect a pressed key, the microcontroller grounds all rows by providing 0 to the output latch, and then it reads the columns. If the data read from the columns is D3-D0=1111, no key has been pressed and the process continues until a key press is detected. However, if one of the column bits has a zero, this means that a key press has occurred. For example, if D3D0=1101, this means that a key in the D1 column has been pressed. After a key press is detected, the microcontroller will go through the process of identifying the key. Starting with the top row, the microcontroller grounds it by providing a low to row D0 only; then it reads the columns. If the data read is all1s, no key in that row is activated and the process is moved to the next row. It grounds the next row, reads the columns, and checks for any zero. This process continues until the row is identified. After identification of the row in which the key has been pressed, the next task is to find out which column the pressed key belongs to. This should be easy since the microcontroller knows at any time which row and column are being accessed. www.final-yearproject.com | www.finalyearthesis.com
  • 49. RFID Based System For Healthcare Service Assembly language program for detection and identification of key activation is given below. In this program, it is assumed that P1 and P2 are initialized as output and input, respectively. Program13.1 goes through the following four major stages: 1. To make sure that the preceding key has been released, 0s are output to all rows at once, and the columns are read and checked repeatedly until all the columns are high. When all columns are found to be high, the program waits for a short amount of time before it goes to the next stage of waiting for a key to be pressed. 2. To see if any key is pressed, the columns are scanned over and over in an infinite loop until one of them has a 0 on it. Remember that the output latches connected to rows still have their initial zeros (provided in stage 1), making them grounded. After the key press detection, it waits 20ms for the bounce and then scans the columns again. This serves two functions: (a) it ensures that the first key press detection was not an erroneous one due to spike noise, and(b) the 20ms delay prevents the same key press from being interpreted as a multiple key press. If after the 20-ms delay the key is still pressed, it goes to the next stage to detect which row it belongs to; otherwise, it goes back into the loop to detect a real key press 3. To detect which row the key press belongs to, it grounds one row at a time, reading the columns each time. If it finds that all columns are high, this means that the key press cannot belong to that row; therefore, it grounds the next row and continues until it finds the row the key press belongs to. Upon finding the row that the key press belongs to, it sets up the starting address for the look-up table holding the scan codes (or the ASCII value) for that row and goes to the next stage to identify the key. 4. To identify the key press, it rotates the column bits, one bit at a time, into the carry flag and checks to see if it is low. Upon finding the zero, it pulls out the ASCII code for that key from the look-up table; Otherwise, it increments the pointer to point to the next element of the look-up table. While the key press detection is standard for all keyboards, the process for determining which key is pressed varies. The look-up table method shown in program can be modified to work with any matrix up to 8*8. www.final-yearproject.com | www.finalyearthesis.com
  • 50. RFID Based System For Healthcare Service 6. SOFTWARE REQUIREMENTS Keil an ARM Company makes C compilers, macro assemblers, real-time kernels, debuggers, simulators, integrated environments, evaluation boards, and emulators for ARM7/ARM9/Cortex-M3, XC16x/C16x/ST10, 251, and 8051 MCU families. The Keil 8051 Development Tools are designed to solve the complex problems facing embedded software developers Keil development tools for the 8051 Microcontroller Architecture support every level of software developer from the professional applications engineer to the student just learning about embedded software development. When starting a new project, simply select the microcontroller you use from the Device Database and the µVision IDE sets all compiler, assembler, linker, and memory options for you. Numerous example programs are included to help you get started with the most popular embedded 8051 devices. The Keil µVision Debugger accurately simulates on-chip peripherals (I²C, CAN, UART, SPI, Interrupts, I/OPorts, A/D Converter, D/A Converter, and PWM Modules) of your 8051 device. Simulation helps you understand hardware configurations and avoids time wasted on setup problems. Additionally, with simulation, you can write and test applications before target hardware is available Embedded ‘C’: Ex: Hitec – c, Keil – c HI-TECH Software makes industrial-strength software development tools and C compilers that help software developers write compact, efficient embedded processor code. For over two decades HI-TECH Software has delivered the industry's most reliable embedded software development tools and compilers for writing efficient and compact code to run on the most popular embedded processors. Used by tens of thousands of customers including General Motors, Whirlpool, Qualcomm, John Deere and many others, HI-TECH's reliable development tools and C compilers, combined with world-class support have helped www.final-yearproject.com | www.finalyearthesis.com
  • 51. RFID Based System For Healthcare Service serious embedded software programmers to create hundreds of breakthrough new solutions.Whichever embedded processor family you are targeting with your software, whether it is the ARM, PICC or 8051 series, HI-TECH tools and C compilers can help you write better code and bring it to market faster. HI-TECH PICC is a high-performance C compiler for the Microchip PIC micro 10/12/14/16/17 series of microcontrollers. HI-TECH PICC is an industrial-strength ANSI C compiler - not a subset implementation like some other PIC compilers. The PICC compiler implements full ISO/ANSI C, with the exception of recursion. All data types are supported including 24 and 32 bit IEEE standard floating point. HI-TECH PICC makes full use of specific features and using an intelligent optimizer, can generate high-quality code easily rivaling hand-written assembler. Automatic handling of page and bank selection frees the programmer from the trivial details of assembler code. Embedded “C” Compiler  ANSI C - full featured and portable.  Reliable - mature, field-proven technology.  Multiple C optimization levels .  An optimizing assembler.  Full linker, with overlaying of local variables to minimize RAM usage.  Comprehensive C library with all source code provided.  Includes support for 24-bit and 32-bit IEEE floating point and 32-bit long data types.  Mixed C and assembler programming.  Unlimited number of source files.  Listings showing generated assembler.  Compatible - integrates into the MPLAB IDE, MPLAB ICD .  Runs on multiple platforms: Windows, Linux, UNIX, Mac OS X, Solaris. Embedded System Tools Assembler An assembler is a computer program for translating assembly languageessentially, a mnemonic representation of machine language into object code. A cross assembler (see cross compiler) produces code for one type of processor, but runs on another. The computational www.final-yearproject.com | www.finalyearthesis.com
  • 52. RFID Based System For Healthcare Service step where an assembler is run is known as assembly time. Translating assembly instruction mnemonics into opcodes, assemblers provide the ability to use symbolic names for memory locations (saving tedious calculations and manually updating addresses when a program is slightly modified), and macro facilities for performing textual substitution typically used to encode common short sequences of instructions to run inline instead of in a subroutine. Assemblers are far simpler to write than compilers for high-level languages. Assembly Language Has Several Benefits Speed: Assembly language programs are generally the fastest programs around. Space: Assembly language programs are often the smallest. Capability: You can do things in assembly which are difficult or impossible in High level languages. Knowledge: Your knowledge of assembly language will help you write better programs, even when using High level languages. An example of an assembler we use in our project is RAD 51. Simulator Simulator is a machine that simulates an environment for the purpose of training or research. We use a UMPS simulator for this purpose in our project. UMPS Universal microprocessor program simulator simulates a microcontroller with its external environment. UMPS is able to simulate external components connected to the microcontroller. Then, debug step is dramatically reduced. UMPS is not dedicated to only one microcontroller family, it can simulate all kind of microcontrollers. The main limitation is to have less than 64K-Bytes of RAM and ROM space and the good microcontroller library. UMPS provide all the facilities other low-cost simulator does not have. It offers the user to see the "real effect" of a program and a way to change the microcontroller family without changing IDE. UMPS provide a low-cost solution to the problems. UMPS is really the best solution to your evaluation. www.final-yearproject.com | www.finalyearthesis.com
  • 53. RFID Based System For Healthcare Service UMPS Key Features The speed, UMPS can run as fast as 1/5 the real microcontroller speed. No need to wait 2 days to see the result of a LCD routine access. All the microcontroller parts are simulated, interrupts, communication protocol, parallel handshake, timer and so on. UMPS have an integrated assembler/disassembler and debugger. It is able to accept an external assembler or compiler. It has a text editor which is not limited to 64K-bytes and shows keyword with color. It can also communicate with an external compiler to integrate all the debug facilities you need.UMPS is universal, it can easily be extended to other microcontroller with a library. Ask us for toolkit development.External resource simulation is not limited. It can be extended to your proper needs by writing your own DLL.UMPS allows you to evaluate at the lowest cost the possibility to build a microcontroller project without any cable. - UMPS include a complete documentation on each microcontroller which describe special registers and each instruction. User Interfaces User interfaces for embedded systems vary widely, and thus deserve some special comment. User interface is the ultimate aim for an embedded module as to the user to check the output with complete convenience. One standard interface, widely used in embedded systems, uses two buttons (the absolute minimum) to control a menu system (just to be clear, one button should be "next menu entry" the other button should be "select this menu entry"). Another basic trick is to minimize and simplify the type of output. Designs sometimes use a status light for each interface plug, or failure condition, to tell what failed. A cheap variation is to have two light bars with a printed matrix of errors that they select- the user can glue on the labels for the language that he speaks. For example, most small computer printers use lights labeled with stick-on labels that can be printed in any language. In some markets, these are delivered with several sets of labels, so customers can pick the most comfortable language. In many organizations, one person approves the user interface. Often this is a customer, the major distributor or someone directly responsible for selling the system. www.final-yearproject.com | www.finalyearthesis.com
  • 54. RFID Based System For Healthcare Service Platform There are many different CPU architectures used in embedded designs such as ARM, MIPS, Coldfire/68k, PowerPC, X86, PIC, 8051, Atmel AVR, H8, SH, V850, FR-V, M32R etc. This in contrast to the desktop computer market, which as of this writing (2003)is limited to just a few competing architectures, mainly the Intel/AMDx86, and the Apple/Motorola/IBMPowerPC, used in the Apple Macintosh. With the growing acceptance of Java in this field, there is a tendency to even further eliminate the dependency on specific CPU/hardware (and OS) requirements. Standard PC/104 is a typical base for small, low-volume embedded and ruggedized system design. These often use DOS, Linux or an embedded real-time operating system such as QNX or Inferno. A common configuration for very-high-volume embedded systems is the system on a chip, an application-specific integrated circuit, for which the CPU was purchased as intellectual property to add to the IC's design. A related common scheme is to use a fieldprogrammable gate array, and program it with all the logic, including the CPU. Most modern FPGAs are designed for this purpose. Tools Like typical computer programmers, embedded system designers use compilers, assemblers, and debuggers to develop embedded system software. However, they also use a few tools that are unfamiliar to most programmers. Software companies that specialize in the embedded market Ported from the GNU software development tools. Sometimes, development tools for a personal computer can be used if the embedded processor is a close relative to a common PC processor. Embedded system designers also use a few software tools rarely used by typical computer programmers. One common tool is an "in-circuit emulator" (ICE) or, in more modern designs, an embedded debugger. This debugging tool is the fundamental trick used to develop embedded code. It replaces or plugs into the microprocessor, and provides facilities to quickly load and debug experimental code in the system. A small pod usually provides the special electronics to plug into the system. Often a personal computer with special software attaches to the pod to provide the debugging interface. www.final-yearproject.com | www.finalyearthesis.com
  • 55. RFID Based System For Healthcare Service Another common tool is a utility program (often home-grown) to add a checksum or CRC to a program, so it can check its program data before executing it. An embedded programmer that develops software for digital signal processing often has a math workbench such as MathCad or Mathematical to simulate the mathematics. Less common are utility programs to turn data files into code, so one can include any kind of data in a program. A few projects use Synchronous programming languages for extra reliability or digital signal processing. Debugging Debugging is usually performed with an in-circuit emulator, or some type of debugger that can interrupt the microcontroller's internal microcode. The microcode interrupt lets the debugger operate in hardware in which only the CPU works. The CPU-based debugger can be used to test and debug the electronics of the computer from the viewpoint of the CPU. This feature was pioneered on the PDP-11. As the complexity of embedded systems grows, higher level tools and operating systems are migrating into machinery where it makes sense. For example, cell phones, personal digital assistants and other consumer computers often need significant software that is purchased or provided by a person other than the manufacturer of the electronics. In these systems, an open programming environment such as Linux, OSGi or Embedded Java is required so that the third-party software provider can sell to a large market. Operating System Embedded systems often have no operating system, or a specialized embedded operating system (often a real-time operating system), or the programmer is assigned to port one of these to the new system. Built- In Self- Test Most embedded systems have some degree or amount of built-in self-test. There are several basic types. 1. Testing the computer. 2. Test of peripherals. www.final-yearproject.com | www.finalyearthesis.com
  • 56. RFID Based System For Healthcare Service 3. Tests of power. 4. Communication tests. 5. Cabling tests. 6. Rigging tests. 7. Consumables test. 8. Operational test. www.final-yearproject.com | www.finalyearthesis.com
  • 57. RFID Based System For Healthcare Service 7. CODE GENERATION #include<reg51.h> #include<string.h> void Delay_1ms(void); void Delay_30ms(void); void Delay(unsigned int); void MSDelay(unsigned char); void lcd_cmd(unsigned char); void lcd_pos(unsigned char); //set the lcd address void lcd_char(unsigned char); //convert the integer value to writing format void lcd_print(unsigned char *); unsigned char keypad(void); void lcd_init(void); //write the string to LCD void lcd_clear(void); void uart_init(void); void lcd_print(unsigned char *); sbit RS =P2^7; //RESET sbit RW =P2^6; //READ/WRITE sbit EN =P2^5; //ENABLE sfr LCD=0x80; void reader(void); void database(void); www.final-yearproject.com | www.finalyearthesis.com
  • 58. RFID Based System For Healthcare Service unsigned char temp,blood,heart; unsigned char rf[13]; #define COLROW P1 unsigned char code keypadMatrix[4][4]={"1234", "5678", "90AB", "CDE#"}; unsigned char t[3],b[3],h[3]; void main() { unsigned char key1; lcd_init(); lcd_print("LCD READY"); Delay(200); lcd_clear(); uart_init(); lcd_print("UART READY"); Delay(200); lcd_clear(); lcd_cmd(0x83); lcd_print("RFID BASED"); lcd_cmd(0xC2); lcd_print("SYSTEM FOR"); www.final-yearproject.com | www.finalyearthesis.com
  • 59. RFID Based System For Healthcare Service Delay(500); lcd_clear(); lcd_cmd(0x82); lcd_print("HEALTH CARE"); lcd_cmd(0xC4); lcd_print("SERVICES"); Delay(500); lcd_clear(); while(1) { lcd_clear(); lcd_print("PRESS 1 TO"); lcd_pos(0xc0); lcd_print("STORE DATA"); Delay(500); Delay(500); lcd_clear(); lcd_print("PRESS 2 TO"); lcd_pos(0xc0); lcd_print("READ DATA"); Delay(500); Delay(500); lcd_clear(); www.final-yearproject.com | www.finalyearthesis.com
  • 60. RFID Based System For Healthcare Service key1=keypad(); lcd_char(key1); Delay(500); Delay(500); lcd_clear(); if(key1 == '1') reader(); else if(key1== '2') database(); else { lcd_clear(); lcd_print("INVALID INPUT"); } Delay(500); Delay(500); } } void reader(void) { unsigned char id[5],key; unsigned char i,k; www.final-yearproject.com | www.finalyearthesis.com
  • 61. RFID Based System For Healthcare Service lcd_clear(); lcd_print("PLACE THE TAG"); lcd_pos(0xc0); lcd_print("BEFORE READER"); Delay(500); Delay(500); for(k=0;k<12;k++) { while(!RI); rf[k] = SBUF; RI=0; } rf[12]='0'; if(!strcmp(rf,"26006FCA6FEC")) { lcd_clear(); lcd_print(rf); Delay(200); Delay(200); lcd_clear(); lcd_print("ENTER 3 DIGIT ID"); Delay(200); lcd_clear(); www.final-yearproject.com | www.finalyearthesis.com
  • 62. RFID Based System For Healthcare Service for(i=0;i<3;i++) { Delay(100); key=keypad(); lcd_char(key); id[i]=key; } id[i]='0'; Delay(200); if(!strcmp(id,"123")) { lcd_clear(); lcd_print("ACCESS OK"); Delay(200); Delay(200); lcd_clear(); lcd_print("ENTER TEMP"); Delay(200); lcd_clear(); for(i=0;i<3;i++) { Delay(100); key=keypad(); www.final-yearproject.com | www.finalyearthesis.com
  • 63. RFID Based System For Healthcare Service lcd_char(key); t[i]=key; } temp=t[0]*100+t[1]*10+t[2]*1; lcd_clear(); lcd_print("ENTER BP"); Delay(200); lcd_clear(); for(i=0;i<3;i++) { Delay(100); key=keypad(); lcd_char(key); b[i]=key; } blood=b[0]*100+b[1]*10+b[2]*1; lcd_clear(); lcd_print("ENTER HEART BEAT"); Delay(200); lcd_clear(); for(i=0;i<3;i++) { Delay(100); www.final-yearproject.com | www.finalyearthesis.com
  • 64. RFID Based System For Healthcare Service key=keypad(); lcd_char(key); h[i]=key; } heart=h[0]*100+h[1]*10+h[2]*1; } } } void database(void) { unsigned char i,k,id[5],key; lcd_clear(); lcd_print("PLACE THE TAG"); lcd_pos(0xc0); lcd_print("BEFORE READER"); Delay(500); Delay(500); for(k=0;k<12;k++) { while(!RI); rf[k] = SBUF; RI=0; } www.final-yearproject.com | www.finalyearthesis.com
  • 65. RFID Based System For Healthcare Service rf[12]='0'; if(!strcmp(rf,"2600709EE62E")) { lcd_clear(); lcd_print(rf); Delay(200); Delay(200); lcd_clear(); lcd_print("ENTER 3 DIGIT ID"); Delay(200); Delay(200); lcd_clear(); for(i=0;i<3;i++) { Delay(100); key=keypad(); lcd_char(key); id[i]=key; } id[i]='0'; Delay(200); if(!strcmp(id,"123")) { www.final-yearproject.com | www.finalyearthesis.com