Beruflich Dokumente
Kultur Dokumente
CHAPTER 1
INTRODUCTION
According to the World Health Organization, there are 45 million blind people in the world,
which amounts to an estimated 1h to 2h of the population in industrialized countries. This figure
cannot be neglected, and the problems encountered by blind people in their everyday life need to be
addressed. In particular, these people are faced with huge difficulties moving in cities, where
streets, public transportation systems and shopping malls represent hostile ever-changing
environments. As a result, blind people are in danger while moving on their own, and their
autonomy is limited. Indeed, if blind people can generally remember their way to some places, they
cannot know in advance what obstacles they will stumble upon. In consequence, the fear of the
unknown often leads them to restrict their universe to a small set of known places. They do not dare
going anywhere else, thus experiencing limited travel freedom. This is the reason why numerous
electronic locomotion assistance systems have been developed.Electronic devices are significantly
cheaper
It is a novel project that is aimed to develop a device with which the blind would be able to
autonomously detect important information for safely negotiating pedestrian crossing in traffic
areas. We design and develop a micro controller based solution for the blind which can bring him
confidence and can be a accident preventive mechanism in the real time world.
In this project we use the RF transmitter kept ion the traffic signals and this is controlled by
the micro controller as shown in the block diagram above, as the traffic signals keeps on changing ,
the micro controller will transmit the status through the RF TX continuously. The main aim of the
project is to design and develop an intelligent device for the blind such that it can help them in the
places like the traffic signals.When the blind person comes close to the traffic signal, he will have
an Receiver which will pick up the traffic signal status and then it will tell the same using the
speech processing unit . It can tell him that its read now and later it will tell him its about to change
to green and green now and now its again changing to red and in the same way it will be in the loop
continuously. The project is developed using the ARM micro controller and the 8051 micro
controller together.
CHAPTER 2
SYSTEM DEVELOPMENT
Now we are coming to know what are the hardware parts used in our projects and what are
the activities of each part and their features. The figure 2.1 shows the block diagram of our project.
Our project employs a ARM micro-controller based design. We use the RF transmitter kept
in the traffic signals and this is controlled by the micro controller as shown in the block diagram
below, as the traffic signals keeps on changing, the micro controller will transmit the status
through the RF transmitter continuously.
When blind person comes close to the traffic signal, he will have an receiver which will pick
up the traffic status and then it will tell the same using the speech processing unit. It can tell him
that its red now and later it will tell him its about to change to green and green now and now its
again changing to red and in the same way it will be in loop continuously.
We have used two sensors and depending on the sensor activation, it can detect any obstacle
either towards right or towards left which is again conveyed using a speech processing unit.
Thus this device can be life saving and very helpful for the blind people throughout the world.
2.1BLOCK DIAGRAM:
TRANSMITTER SIDE
○ RED
MICROCONTROLL DRIVER UNIT
○ ORANG
ER
E
○ GREEN
RF Tx
RECEIVER SIDE
RIGHT
SENSOR
The ARM is a 32-bit reduced instruction (RISC) instruction set architecture (ISA) developed
by ARM Holdings. It was known as the Advanced RISC Machine, and before that as the Acorn
RISC Machine. The ARM architecture is the most widely used 32-bit ISA in terms of numbers
produced. They were originally conceived as a processor for desktop personal computers
by Computers, market now dominated by the x86 family used by IBM PC compatible
and Apple Macintosh computers. The relative simplicity of ARM processors made them suitable for
low power applications. This has made them dominant in the mobile and embedded electronics
market, as relatively low cost, and small microprocessors and microcontrollers.
The ARM7TDMI is a member of the Advanced RISC Machines (ARM) family of general
purpose 32-bit microprocessors, which offer high performance for very low power consumption
and price. The ARM architecture is based on Reduced Instruction Set Computer (RISC)
principles, and the instruction set and related decode mechanism are much simpler than those of
micro programmed Complex Instruction Set Computers. This simplicity results in a high
instruction throughput and impressive real-time interrupt response from a small and cost-effective
chip. Pipelining is employed so that all parts of the processing and memory systems can operate
continuously. Typically, while one instruction is being executed, its successor is being decoded,
and a third instruction is being fetched from memory.
The ARM memory interface has been designed to allow the performance potential to be
realised without incurring high costs in the memory system. Speed-critical control signals are
pipelined to allow system control functions to be implemented in standard low-power logic, and
these control signals facilitate the exploitation of the fast local access modes offered by industry
standard dynamic RAMs.
core has a built-in JTAG debug port and on-chip “embedded ICE” that allows programs to be
downloaded and fully debugged in-system. In order to keep the ARM 7 both simple and cost-
effective, the code and data regions are accessed via a single data bus. Thus while the ARM 7 is
capable of single-cycle execution of all data processing instructions, data transfer instructions may
take several cycles since they will require at least two accesses onto the bus (one for the instruction
one for the data). In order to improve performance, a three stage pipeline is used that allows
multiple instructions to be processed simultaneously. The pipeline has three stages; FETCH,
DECODE and EXECUTE. The hardware of each stage is designed to be independent so up to three
instructions can be processed simultaneously. The pipeline is most effective in speeding up
sequential code. However a branch instruction will cause the pipeline to be flushed marring its
performance.
RANGEOUT0
RANGEOUT1
ICEBreaker
EXTERN1
EXTERN0
nOPC
nRW
MAS[1:0]
All
nTRANS Core Other
nMREQ
A[31:0] Signals
•
Scan Chain
1
D[31:0]
DIN[31:0] Splitter
•
DOUT[31:0] Bus
TAP controller
Switching State
Entering THUMB state
Entry into THUMB state can be achieved by executing a BX instruction with the state bit
(bit 0) set in the operand register. Transition to THUMB state will also occur automatically on
return from an exception (IRQ, FIQ, UNDEF, ABORT, SWI etc.), if the exception was entered with
the processor in THUMB state.
4 5 6 7 4
0 1 2 3 0
Lower Address • Most significant byte is at lowest address
• Word is addressed by byte address of most significant byte
Figure 2.1.5(a): Big endian addresses of bytes within words
In Little Endian format, the lowest numbered byte in a word is considered the word’s least
significant byte, and the highest numbered byte the most significant. Byte 0 of the memory system
is therefore connected to data lines 7 through 0.
7 6 5 4 4
3 2 1 0 0
Lower Address • Least significant byte is at lowest address
• Word is addressed by byte address of least significant byte
Figure2.1.5(b): Little endian addresses of bytes within words
Fig 2.1.6
ARM7 INTERNALS
Fig 2.1.7
DEPT OF ECE,RYMEC Page 10
Intelligent device for blinds in traffic areas
The ARM7TDMI contains a Current Program Status Register (CPSR), plus five Saved
Program Status Registers (SPSRs) for use by exception handlers. These registers
• hold information about the most recently performed ALU operation
• control the enabling and disabling of interrupts
• set the processor operating mode
The arrangement of bits is shown in Figure 2.1.7: Program status register format
2.1.8THUMB EXTENSION
Features:
Complete RF Transmitter Module no
microcontrollers
2.2.1Specification
2.3.1Introduction:
This is the Radio Frequency Receiver Module, which can facilitate the designers to design
their remote control applications in the quickest way. The circuit is designed with SMD components
and the module size is small enough to fit in to any application. This Receiver Module is Super-
Regenerative Version Without Decoder using Amplitude Modulation or in other words ON-OFF
Keyed Modulation (OOK)
Application Note:
Pin 1 : Gnd
Pin 2 : Data
Pin 3 : Linear Output
Pin 4 : Vcc
Pin 5 : Vcc
Pin 6 : Gnd
Pin 7 : Gnd
Pin 8 : Antenna (About 30 – 35 cm)
Modulation: AM
Supply Voltage: 5V DC
Specifications of RX1:
Model SR Mode Power Data Rate (bps) Sensitivity (dbm) Power Consumption Modulation Channel Width
Notes:
SR: Super-Regenerative; AM: Amplitude Modulation
2.3.2Application Details:
Above RF module does not include the decoder IC, thus you have to either add the
decoder IC in your circuit or implement the decoder software in micro controller by yourself.
Our Rolling Code Decoder choices are available for your design. For Rolling Code
application, you may use Microchip’s Keeloq Encoder IC – HCS 301/P (8 Pin DIP) on the
transmitter side and HCS 512/P Keeloq Decoder IC on the Receiver side. However, we can
provide you software implemented Decoder on PIC16F628A-I/P that will provide the same
functionality like HCS512/P.
On the PCB layout of your control board, be very careful in the following point so that
no data loss can happen: During PCB layout stage, be sure that the ground of the Micro
controller and the Receiver Module are not looped. Draw out separate PCB tracks from the
Ground to the MCU ground and the Receiver Ground. Keep the ground line as short as
possible to the receiver. Also ensure that the MCU is located at about an inch away from the
Receiver Module. This is to avoid any data loss due to frequency interference.
Check with our Sales People for your requirements of programmed Rolling Code
Encoder / Decoder ICs Low Cost RF two button Remote Control with Decoder PCB, 12
output decoder, RF Relay Switch unit and Antenna. We can supply these to you as ready to
use OE sub-assemblies for integrating into your designs.
This RF receiver is sensitive to RF noise in the pass band because the desired transmitter
signals are at very low power levels. Some common noise sources are microprocessors, brush-type
motors and high-speed logic circuits. If the rise time and fall time of the clock in a microprocessor
are fast enough to produce harmonics in the frequency range of the receiver input and the
harmonics fall within the pass band of the receiver, then special care must be taken to reduce the
level of the harmonic at the antenna port of the receiver.
Features
• Operating voltage :2.4V~5V for the HT12A Ę 2.4V~12V for the HT12E
• Low power and high noise immunity CMOS technology
• Low standby current: 0.1 A (typ.) at VDD=5V
• HT12A with a 38kHz carrier for infrared transmission medium
• Minimum transmission word
• Four words for the HT12E .One word for the HT12A
• Built-in oscillator needs only 5% resistor Data code has positive polarity
• Minimal external components
PIN ASSINGMENT
Pin Description
Internal
Pin Name I/O Description
Connection
CMOS IN
Pull-high
(HT12A)
NMOS Input pins for address A0~A7 setting
A0~A7 I
TRANSMISSION These pins can be externally set to VSS or left open
GATE
PROTECTION
DIODE
(HT12E)
NMOS
TRANSMISSION
GATE Input pins for address/data AD8~AD11 setting
AD8~AD11 I
PROTECTION These pins can be externally set to VSS or left open
DIODE
(HT12E)
Input pins for data D8~D11 setting and transmission en-
CMOS IN able, active low
D8~D11 I
Pull-high These pins should be externally set to VSS or left open
(see Note)
DOUT O CMOS OUT Encoder data serial transmission output
Latch/Momentary transmission format selection pin:
CMOS IN
L/MB I Latch: Floating or VDD
Pull-high
Momentary: VSS
2.5HT12D/HT12F Series of Decoders:
The 212 decoders are a series of CMOS LSIs for remote control system applications. They
are paired with HoltekŦs 212 series of encoders (refer to the encoder/de-coder cross reference table).
For proper operation, a pair of encoder/decoder with the same number of ad-dresses and data format
should be chosen. The decoders receive serial addresses and data from a programmed 2 12 series of
encoders that are transmitted by a carrier using an RF or an IR transmission medium. They compare
the serial input data three times continu-ously with their local addresses. If no error or un-matched
codes are found, the input data codes are decoded and then transferred to the output pins. The VT
pin also goes high to indicate a valid transmission.
The 212 series of decoders are capable of decoding information that consist of N bits of
address and 12ĘN bits of data. Of this series, the HT12D is arranged to pro-vide 8 address bits and
4 data bits, and HT12F is used to decode 12 bits of address information
Features
• Operating voltage: 2.4V~12V
• Low power and high noise immunity CMOS technology
• Low standby current
• Capable of decoding 12 bits of information Binary address setting
• Received codes are checked 3 times
• Address/Data number combination Ę HT12D: 8 address bits and 4 data bits Ę HT12F: 12
address bits only
• Built-in oscillator needs only 5% resistor Valid transmission indicator
• Easy interface with an RF or an infrared transmission medium
• Minimal external components
• Pair with HoltekŦs 212 series of encoders 18-pin DIP, 20-pin SOP package
Applications
• Burglar alarm system
• Smoke and fire alarm system Garage door controllers
• Car door controllers
• Car alarm system Security system
• Cordless telephones
• Other remote control systems
The LPC2148 microcontrollers are based on a 16-bit/32-bit ARM7TDMI-S CPU with real
time emulation and embedded trace support, that combine microcontroller with embedded high
speed flash memory ranging from 32 kB to 512 kB. A 128-bit wide memory interface and a unique
accelerator architecture enable 32-bit code execution at the maximum clock rate. For critical code
size applications, the alternative 16-bit Thumb mode reduces code by more than 30 % with
minimal performance penalty.
Due to their tiny size and low power consumption, LPC2148 are ideal for applications
where miniaturization is a key requirement, such as access control and point-of-sale. Serial
communications interfaces ranging from a USB 2.0 Full-speed device, multiple UARTs, SPI, SSP
to I2C-bus and on-chip SRAM of 8 kB up to 40 kB, make these devices very well suited for
communication gateways and protocol converters, soft modems, voice recognition and low end
imaging, providing both large buffer size and high processing power. Various 32-bit timers, single
or dual 10-bit ADC(s), 10-bit DAC, PWM channels and 45 fast GPIO lines with up to nine edge or
level sensitive external interrupt pins make these microcontrollers suitable for industrial control
and medical systems.
FEATURES:
• 16-bit/32-bit ARM7TDMI-S microcontroller in a tiny LQFP64 package.
• 8 kB to 40 kB of on-chip static RAM and 32 kB to 512 kB of on-chip flash memory. 128-bit
wide interface/accelerator enables high-speed 60 MHz operation.
• In-System Programming/In-Application Programming (ISP/IAP) via on-chip boot loader
software. Single flash sector or full chip erase in 400 ms and programming of 256 bytes in
1ms.
• EmbeddedICE RT and Embedded Trace interfaces offer real-time debugging with the on-
chip RealMonitor software and high-speed tracing of instruction execution.
• USB 2.0 Full-speed compliant device controller with 2 kB of endpoint RAM.
• In addition, the LPC2146/48 provides 8 kB of on-chip RAM accessible to USB by DMA.
• One or two (LPC2141/42 vs. LPC2144/46/48) 10-bit ADCs provide a total of 6/14 analog
inputs, with conversion times as low as 2.44 s per channel.
BLOCK DIAGRAM:
Device pins that are not connected to a specific peripheral function are controlled by the
GPIO registers. Pins may be dynamically configured as inputs or outputs. Separate registers allow
setting or clearing any number of outputs simultaneously. The value of the output register may be
read back, as well as the current state of the port pins.
Features
• Bit-level set and clear registers allow a single instruction set or clear of any number of bits
in one port.
• Direction control of individual bits.
• Separate control of output set and clear.
• All I/O default to inputs after reset.
10-bit ADC
The LPC2141/42 contain one and the LPC2144/46/48 contain two analog to digital
converters. These converters are single 10-bit successive approximation analog to digital
converters. While ADC0 has six channels, ADC1 has eight channels. Therefore, total number of
available ADC inputs for LPC2141/42 is 6 and for LPC2144/46/48 is 14.
Features
• 10 bit successive approximation analog to digital converter.
• Measurement range of 0 V to VREF (2.0 V ≤ VREF ≤ VDDA).
• Each converter capable of performing more than 400,000 10-bit samples per second.
• Every analog input has a dedicated result register to reduce interrupt overhead.
• Burst conversion mode for single or multiple inputs.
• Optional conversion on transition on input pin or timer match signal.
• Global Start command for both converters (LPC2142/44/46/48 only).
2.8UARTs :
The LPC2141/42/44/46/48 each contain two UARTs. In addition to standard transmit and
receive data lines, the LPC2144/46/48 UART1 also provide a full modem control handshake
interface.
Compared to previous LPC2000 microcontrollers, UARTs in LPC2141/42/44/46/48
introduce a fractional baud rate generator for both UARTs, enabling these microcontrollers to
achieve standard baud rates such as 115200 with any crystal frequency above 2 MHz. In addition,
auto-CTS/RTS flow-control functions are fully implemented in hardware (UART1 in
LPC2144/46/48 only
Features:
• 16 byte Receive and Transmit FIFOs.
• Register locations conform to ‘550 industry standard.
• Receiver FIFO trigger points at 1, 4, 8, and 14 bytes
• Built-in fractional baud rate generator covering wide range of baud rates without a need for
external crystals of particular values.
• Transmission FIFO control enables implementation of software (XON/XOFF) flow control
on both UARTs.
• LPC2144/46/48 UART1 equipped with standard modem interface signals. This module also
provides full support for hardware flow control (auto-CTS/RTS).
CHAPTER 3
8051 MICROCONTROLLER
A microcontroller is an economical computer-on-a-chip built for dealing with specific tasks, such as
displaying or receiving information through LEDs or remote controlled devices. The most
commonly used set of microcontrollers belong to to 8051 Family. 8051 Microcontrollers continue
to remain a preferred choice for a vast community of hobbyists and professionals. Through 8051,
the world became witness to the most revolutionary set of microcontrollers.
3.18051 FAMILY
Intel fabricated the original 8051 which is known as MCS-51. The other two members of the 8051
family are:
i. 8052 – This microcontroller has 256 bytes of RAM and 3 timers. In addition to the standard
features of 8051, this microcontroller has an added 128 bytes of RAM and timer. It has 8K bytes of
on chip program ROM. The programs written for projects using 8051 microcontroller can be used
to run on the projects using 8052 microcontroller as 8051 is a subset of 8052.
ii. 8031 – This microcontroller has all the features of 8051 except for it to be ROM-less. An
external ROM that can be as large as 64 K bytes should be programmed and added to this chip for
execution. The disadvantage of adding external ROM is that 2 ports (out of the 4 ports) are used.
Hence, only 2 ports are left for I/O operations which can also be added externally if required for
execution.
ii ) AT89C51 from Atmel Corporation – Atmel fabricated the flash ROM version of 8051
which is popularly known as AT89C51 (‘C’ in the part number indicates CMOS). The flash
memory can erase the contents within seconds which is best for fast growth. Therefore, 8751 is
replaced by AT89C51 to eradicate the waiting time required to erase the contents and hence
expedite the development time. To build up a microcontroller based system using AT89C51, it is
essential to have ROM burner that supports flash memory. Note that in Flash memory, entire
contents must be erased to program it again. The contents are erased by the ROM burner. Atmel is
working on a newer version of AT89C51 that can be programmed using the serial COM port of
IBM PC in order to get rid of the ROM burner.
Number
AT89C51 4K 128 32 2 6 5V 40
AT89C52 8K 128 32 3 8 5V 40
AT89C1051 1K 64 15 1 3 3V 20
AT89C2051 2K 128 32 3 8 3V 20
AT89LV51 4K 128 32 2 6 3V 40
AT89LV52 8K 128 32 3 8 3V 40
Table – Versions of 8951 from Atmel (All ROM Flash)
There are different versions of packaging and various speed of the products mentioned in the above
table.
Part Number Speed Pins Packaging Use
AT89C51-12PC 12MHz 40 DIP Plastic Commercial
AT89C51-16PC 16MHz 40 DIP Plastic Commercial
AT89C51-20PC 20MHz 40 DIP Plastic Commercial
Table – Various Speeds of 8051 from Atmel
Note: The part number AT89C51-16PC where AT – Atmel, C - CMOS (consumes less
power), 12 - Speed as 12 MHz, P – Plastic DIP packaging, C - Commercial use. AT89C51-
12PC is favourably used by students for their projects.
iii) DS5000 from Dallas Semiconductor – Dallas Semiconductor fabricated the NV-RAM version
of the 8051 which is known as DS5000. The PC serial port is utilized to load the program onto the
in-built ROM. The advantage of NV-RAM memory is the facility to erase the contents one byte at a
time.
v.
Part RAM ROM Timers I/O pins Interrupts Vcc Packaging
Number
DS5000-8 128 8K 2 32 6 5V 40
DS5000- 128 32K 2 32 6 5V 40
32
DS5000T- 128 8K 2 32 6 5V 40
8
DS5000T- 128 32K 2 32 6 5V 40
8
Table – Versions of 8051 from Dallas Semiconductor
Note: ‘T’ signifies the real time clock (RTC) which is different from the timer. Even though
the power is turned off, the real – time clock generates and displays the date and the time of
day.
The variety range of speed and packaging versions of DS5000 which is shown in the Table 1.5
Part Number NV-RAM Speed
DS5000-8-8 8K 8MHz
DS5000-8-12 8K 12MHz
DS5000-32-8 32K 8MHz
DS5000-32-12 32K 12MHz
DS5000T-8-12 8K 12MHz
DS5000T-32-8 32K 8MHz
Table – Versions of 8051 Dallas Semiconductor
v) One - Time - Programmable (OTP) versions of the 8051 – This version of microcontroller is
cheaper and available from various manufacturers. The manufacturers use OTP microcontroller for
mass production because the price per unit is very cheap.
FEATURES OF 8051
The main features of 8051 microcontroller are:
• RAM – 128 Bytes (Data memory)
• ROM – 4Kbytes (ROM signify the on – chip program space)
• Serial Port – Using UART makes it simpler to interface for serial communication.
• Two 16 bit Timer/ Counter
• Input/output Pins – 4 Ports of 8 bits each on a single chip.
• 6 Interrupt Sources
• 8 – bit ALU (Arithmetic Logic Unit)
• Harvard Memory Architecture – It has 16 bit Address bus (each of RAM and ROM) and 8
bit Data Bus.
• 8051 can execute 1 million one-cycle instructions per second with a clock frequency of
12MHz.
• This microcontroller is also called as “System on a chip” because it has all the features on a
single chip. The Block Diagram of 8051 Microcontroller is as shown in Figure
Intel permitted other manufacturers to fabricate different versions of 8051 but with the limitation
that code compatibility should be maintained. This has added advantage that if the program is
written then it can be used for any version of 8051 despite of manufacturer.
As years passed by, the quality of technology surpassed the expectation of the greatest minds, with
gadgets becoming smaller, sleeker and more efficient. Microcontrollers were seen as the answer to
the requirements raised in advanced electronics. This is the reason why manufacturers have now
focused their production around the following main developmental aspects:
i) Ease-of-use
ii)Market availability
iii) Less power usage
iv) Smaller processing power
v) More integrated features like RF and USB
vi) Smaller form factors
3.1.4 APPLICATIONS
The 8051 has been in use in a wide number of devices, mainly because it is easy to integrate into a
project or build a device around. The following are the main areas of focus:
i)Energy Management:Efficient metering systems help in controlling energy usage in homes and
industrial applications. These metering systems are made capable by incorporating microcontrollers.
iii)Automobiles: The 8051 finds wide acceptance in providing automobile solutions. They are
widely used in hybrid vehicles to manage engine variants. Additionally, functions such as cruise
control and anti-brake system have been made more efficient with the use of microcontrollers.
iv)Medical Devices:Portable medical devices such as blood pressure and glucose monitors use
microcontrollers will to display data, thus providing higher reliability in providing medical results.
The 8051 provides a total of four ports for I/O operations. 8051 has 40 pins, of which 32
pins are set aside for the four ports. PO, P1, P2, and P3 each have 8 pins and can be used for either
input or output. The remaining pins are designated as Vrt, GND, XTAL1, XTAL2, RST, EA,
ALE/PROG and PSEN.
8051 allows you to manipulate one or all of the bits of a port, thus providing programmers
with a unique and powerful feature. 8051 provides the programmer with the ability to read, write
and modify each port to customize applications as much as possible.
All 8051 microcontrollers have 4 I/O ports each comprising 8 bits which can be configured
as inputs or outputs. Accordingly, in total of 32 input/output pins enabling the microcontroller to be
connected to peripheral devices are available for use.
Pin configuration, i.e. whether it is to be configured as an input (1) or an output (0), depends
on its logic state. In order to configure a microcontroller pin as an input, it is necessary to apply a
logic zero (0) to appropriate I/O port bit. In this case, voltage level on appropriate pin will be 0.
INPUT/OUTPUT PIN
Figure above illustrates a simplified schematic of all circuits within the microcontroller connected
to one of its pins. It refers to all the pins except those of the P0 port which do not have pull-up
resistors built-in.
OUTPUT PIN
A logic zero (0) is applied to a bit of the P register. The output FE transistor is turned on, thus
connecting the appropriate pin to ground.
INPUT PIN
A logic one (1) is applied to a bit of the P register. The output FE transistor is turned off and
the appropriate pin remains connected to the power supply voltage over a pull-up resistor of high
resistance.
Port 0
The P0 port is characterized by two functions. If external memory is used then the lower
address byte (addresses A0-A7) is applied on it. Otherwise, all bits of this port are configured as
inputs/outputs.
The other function is expressed when it is configured as an output. Unlike other ports consisting of
pins with built-in pull-up resistor connected by its end to 5 V power supply, pins of this port have
this resistor left out. This apparently small difference has its consequences:
If any pin of this port is configured as an input then it acts as if it “floats”. Such an input has
unlimited input resistance and indetermined potential.
When the pin is configured as an output, it acts as an “open drain”. By applying logic 0 to a port bit,
the appropriate pin will be connected to ground (0V). By applying logic 1, the external output will
keep on “floating”. In order to apply logic 1 (5V) on this output pin, it is necessary to built in an
external pull-up resistor.
Port 1
P1 is a true I/O port, because it doesn't have any alternative functions as is the case with P0,
but can be configured as general I/O only. It has a pull-up resistor built-in and is completely
compatible with TTL circuits.
Port 2
P2 acts similarly to P0 when external memory is used. Pins of this port occupy addresses
intended for external memory chip. This time it is about the higher address byte with addresses A8-
A15. When no memory is added, this port can be used as a general input/output port showing
features similar to P1.
Port 3
All port pins can be used as general I/O, but they also have an alternative function. In order
to use these alternative functions, a logic one (1) must be applied to appropriate bit of the P3
register. In terms of hardware, this port is similar to P0, with the difference that its pins have a pull-
up resistor built-in.
When configured as outputs (logic zero (0)), single port pins can receive a current of 10mA.
If all 8 bits of a port are active, a total current must be limited to 15mA (port P0: 26mA). If all ports
(32 bits) are active, total maximum current must be limited to 71mA. When these pins are
configured as inputs (logic 1), built-in pull-up resistors provide very weak current, but strong
enough to activate up to 4 TTL inputs of LS series.
The 8051 has two types of memory and these are Program Memory and Data Memory.
Program Memory (ROM) is used to permanently save the program being executed, while Data
Memory (RAM) is used for temporarily storing data and intermediate results created and used
during the operation of the microcontroller. Depending on the model in use most a few Kb of ROM
and 128 or 256 bytes of RAM is used.
All 8051 microcontrollers have a 16-bit addressing bus and are capable of addressing 64 kb
memory. It is neither a mistake nor a big ambition of engineers who were working on basic core
development. It is a matter of smart memory organization which makes these microcontrollers a
real “programmers’ goody“.
The first models of the 8051 microcontroller family did not have internal program memory.
It was added as an external separate chip. These models are recognizable by their label beginning
with 803 (for example 8031 or 8032). All later models have a few Kbyte ROM embedded. Even
though such an amount of memory is sufficient for writing most of the programs, there are
situations when it is necessary to use additional memory as well. A typical example is so called
lookup tables. They are used in cases when equations describing some processes are too
complicated or when there is no time or solving them.
E
A=0 In this case, the microcontroller completely ignores internal program memory and executes
only the program stored in external memory.
EA=1 In this case, the microcontroller executes first the program from built-in ROM, then the
program stored in external memory.
In both cases, P0 and P2 are not available for use since being used for data and address
transmission. Besides, the ALE and PSEN pins are also used.
As already mentioned, Data Memory is used for temporarily storing data and intermediate results
created and used during the operation of the microcontroller. Besides, RAM memory built in the
8051 family includes many registers such as hardware counters and timers, input/output ports, serial
data buffers etc. The previous models had 256 RAM locations, while for the later models this
number was incremented by additional 128 registers. However, the first 256 memory locations
(addresses 0-FFh) are the heart of memory common to all the models belonging to the 8051 family.
Locations available to the user occupy memory space with addresses 0-7Fh, i.e. first 128 registers.
This part of RAM is divided in several blocks.
The first block consists of 4 banks each including 8 registers denoted by R0-R7. Prior to accessing
any of these registers, it is necessary to select the bank containing it. The next memory block
(address 20h-2Fh) is bit- addressable, which means that each bit has its own address (0-7Fh). Since
there are 16 such registers, this block contains in total of 128 bits with separate addresses (address
of bit 0 of the 20h byte is 0, while address of bit 7 of the 2Fh byte is 7Fh). The third group of
registers occupy addresses 2Fh-7Fh, i.e. 80 locations, and does not have any special functions or
features.
In order to satisfy the programmers’ constant hunger for Data Memory, the manufacturers decided
to embed an additional memory block of 128 locations into the latest versions of the 8051
microcontrollers. However, it’s not as simple as it seems to be… The problem is that electronics
performing addressing has 1 byte (8 bits) on disposal and is capable of reaching only the first 256
locations, therefore. In order to keep already existing 8-bit architecture and compatibility with other
existing models a small trick was done.
What does it mean? It means that additional memory block shares the same addresses with locations
intended for the SFRs (80h- FFh). In order to differentiate between these two physically separated
memory spaces, different ways of addressing are used. The SFRs memory locations are accessed by
direct addressing, while additional RAM memory locations are accessed by indirect addressing.
3.2INTERRUPT PRIORITIES
It is not possible to forseen when an interrupt request will arrive. If several interrupts are enabled, it
may happen that while one of them is in progress, another one is requested. In order that the
microcontroller knows whether to continue operation or meet a new interrupt request, there is a
priority list instructing it what to do.
1. Reset! The absolute master. When a reset request arrives, everything is stopped and the
microcontroller restarts.
2. Interrupt priority 1 can be disabled by Reset only.
3. Interrupt priority 0 can be disabled by both Reset and interrupt priority 1.
The IP Register (Interrupt Priority Register) specifies which one of existing interrupt sources have
higher and which one has lower priority. Interrupt priority is usually specified at the beginning of
the program. According to that, there are several possibilities:
The IP register bits specify the priority level of each interrupt (high or low priority).
○ Priority 0
○ Priority 1
• PT1 - Timer 1 interrupt priority
○ Priority 0
○ Priority 1
• PX1 - External Interrupt INT1 priority
○ Priority 0
○ Priority 1
• PT0 - Timer 0 Interrupt Priority
○ Priority 0
○ Priority 1
• PX0 - External Interrupt INT0 Priority
○ Priority 0
○ Priority 1
The APR9600 devi ce offers true single-chip voice recording, non-volatile storage, and
playback capability for 40 to 60 sec-onds. The device supports both random and sequential access
of multiple messages. Sample rates are user-select-siable, allowing designers to customize their
design for unique quality and storage time needs. Integrated output amplifier, microphone amplifier,
and AGC circuits greatly mplify sys-tem design. the device is ideal for use in portable voice
recorders, toys, and many other consumer and industrial applications.
APLUS integrated achieves these high levels of storage capa-bility by using its proprietary
analog/multilevel storage tech-nology implemented in an advanced Flash non-volatile memory
process, where each memory cell can store 256 volt-age levels. This technology enables the
APR9600 device to reproduce voice signals in their natural form. It eliminates the need for
encoding and compression, which often introduce distortion.
Features
• Single-chip, high-quality voice recording & playback solution
CHAPTER 5
APPLICATIONS
DEPT OF ECE,RYMEC Page 44
Intelligent device for blinds in traffic areas
CHAPTER 6
FUTURE ENHANCEMENT
This device can be further used in various simple objects carried by the blind people .This device
can be further enhanced to detect obstacles in all areas. This device can be used in R&D to further
enhance the device. With the available time and the facilities provided we could complete the
project as suggested by the guide. We have done the project for traffic and obstacle but the same
can also be done for other facilities like identification of the objects at home or the work place ,
which can increase the confidence and can be more user friendly. We have used the ARM7 . The
ARM Cortex M3 is the latest and can have many features built into them for more applications to
be developed.
CHAPTER 7
CONCLUSION
We live in era of rapid change moving towards the society of machines that has the information and
knowledge. We require seamless, easy to use, high quality machines anywhere and anytime. The
design of individual device has been long cherished desired to help the blind people to walk in
traffic areas.
BIBLIOGRAPHY
[1] Ager, D. V., 1981, The Nature of the Stratigraphic Record [2nd ed.]: London, Macmillan Press, 122
p.
[2] Albritton, C. C., 1963, The Fabric of Geology: Reading, Mass., Addison-Wesley Publishing Co.,
372 p.
[4] Dowben, R. M., 1971, Cell Biology: New York, Harper & Row.
[5] Drake, E. T., 1968, Evolution and environment: New Haven, Connecticut, Yale University Press,
478 p
[6] Hunt, J. M., 1979, Petroleum Geochemistry and Geology: San Francisco, W.H. Freeman & Co.,
617 p.
[7.]Jacobs, J. A., 1963, The Earth's Core and Geomagnetism: New York, Pergamon Press, the
Macmillan Company, 137 p.
[9] MacMahon, T. A., 1984, Muscles, Reflexes and Locomotion: Princeton, Princeton University
Press.
[10] Mader, S. S., 1976, Inquiry into Life: Dubuque, Iowa, Wm. C. Brown Co.
[11] Strickberger, M. W., 1990, Evolution: Boston, Mass., Jones and Bartlett Publishers, Inc., 575 p.
[12] Tarling, D. H., and Tarling, M. P., 1977, Continental Drift: A Study of the Earth's Moving Surface
[2nd ed.]: London, Bell.