Upload
janardhan-chennu
View
34
Download
2
Tags:
Embed Size (px)
Citation preview
1
CHAPTER 1
1.1 Introduction:
Micro controller based speaking system for deaf and dumb is designed to give the signs,
which are preloaded in the device. It is a micro controller based device, which gives the alert sounds
just by pressing the control buttons by proper potentiometer value, which are given some redefined
messages like asking for water, washroom etc., here the person can just press the control button which
indicates the sign of water (example) then the device sounds the same with some output volume.
Micro controller is the heart of the device. It stores the data of the needs of the
person. So that it can make use of the data stored whenever the person uses the device. This
device helps the deaf and dumb people to announce their requirements. By this the person who
is near can understand their need and help them. This saves the time to understand each other
and ease in communication.
This device is designed to provide with a greater advantage producing voice based
announcement for the user i.e. the user gets the voice which pronounces his need as and when
it is required. The main aim of the project is to provide a user-friendly interaction with the
deaf and dumb people. It is highly sensitive and reliable for the dumb people and it is also
very easy to operate. The basic firmware for the microcontroller is written in Embedded C
language and compiled using PIC complier. The compiler generates the Hex code for the
microcontroller and the Hex code is stored /programmed in flash memory of micro controller.
1.2 Project Overview:
An embedded system is a combination of software and hardware to perform a
dedicated task. Some of the main devices used in embedded products are Microprocessors and
Microcontroller Microprocessors are commonly referred to as general purpose processors as
they simply accept the inputs, process it and give the output. In contrast, a microcontroller not
only accepts the data as inputs but also manipulates it, interfaces the data with various devices,
controls the data and thus finally gives the result.
2
The “Speaking Micro Controller for Deaf and Dumb” using PIC16F72 microcontroller is an
exclusive project which is used to help the deaf and dumb people to announce their
requirements using voice module APR9600. The main aim of the project is to provide a user-
friendly interaction for the deaf and dumb people with other persons.
1.3 Thesis:
The thesis explains the implementation of “Speaking Micro Controller for Deaf and
Dumb” using PIC16F72 microcontroller. The organization of the thesis is explained here with:
Chapter 1 Presents introduction to the overall thesis and the overview of the project. In the
project overview, a brief introduction of APR9600 voice module and its applications are
discussed.
Chapter 2 Presents the topic embedded systems. It explains the about what is embedded
systems, need for embedded systems, explanation of it along with its applications.
Chapter 3 Presents the hardware description. It deals with the block diagram of the project
and explains the purpose of each block. In the same chapter the explanation of
microcontroller, APR9600 voice module, power supplies and LED‘s are considered.
Chapter 4 Presents the software description. It explains the implementation of the project
using PIC C Compiler software.
Chapter 5 presents the project description along with APR9600 module interfacing to
microcontroller.
Chapter 6 presents the advantages, disadvantages and applications of the project.
Chapter 7 presents the results, conclusion and future scope of the project.
3
CHAPTER 2
EMBEDDED SYSTEMS:
2.1 Embedded Systems:
An embedded system is a computer system designed to perform one or a few
dedicated functions often with real-time computing constraints. It is embedded as part of a
complete device often including hardware and mechanical parts. By contrast, a general-
purpose computer, such as a personal computer (PC), is designed to be flexible and to meet a
wide range of end-user needs. Embedded systems control many devices in common use today.
Embedded systems are controlled by one or more main processing cores that
are typically either microcontrollers or digital signal processors (DSP). The key characteristic,
however, is being dedicated to handle a particular task, which may require very powerful
processors. For example, air traffic control systems may usefully be viewed as embedded,
even though they involve mainframe computers and dedicated regional and national networks
between airports and radar sites. (Each radar probably includes one or more embedded
systems of its own.)
Since the embedded system is dedicated to specific tasks, design engineers can
optimize it to reduce the size and cost of the product and increase the reliability and
performance. Some embedded systems are mass-produced, 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. Complexity varies from low, with a single
microcontroller chip, to very high with multiple units, peripherals and networks mounted
inside a large chassis or enclosure.
4
In general, "embedded system" is not a strictly definable term, as most systems have
some element of extensibility or programmability. For example, handheld computers share
some elements with embedded systems such as the operating systems and microprocessors
which power them, but they allow different applications to be loaded and peripherals to be
connected. Moreover, even systems which don't expose programmability as a primary feature
generally need to support software updates. On a continuum from "general purpose" to
"embedded", large application systems will have subcomponents at most points even if the
system as a whole is "designed to perform one or a few dedicated functions", and is thus
appropriate to call "embedded". A modern example of embedded system is shown in fig: 2.1.
Fig 2.1:A modern example of embedded system
Labeled parts include microprocessor (4), RAM (6), flash memory (7).Embedded systems
programming is not like normal PC programming. In many ways, programming for an
embedded system is like programming PC 15 years ago. The hardware for the system is
usually chosen to make the device as cheap as possible. Spending an extra dollar a unit in
order to make things easier to program can cost millions. Hiring a programmer for an extra
month is cheap in comparison. This means the programmer must make do with slow
5
processors and low memory, while at the same time battling a need for efficiency not seen in
most PC applications. Below is a list of issues specific to the embedded field.
2.1.1 History:
In the earliest years of computers in the 1930–40s, computers were sometimes
dedicated to a single task, but were far too large and expensive for most kinds of tasks
performed by embedded computers of today. Over time however, the concept
of programmable controllers evolved from traditional electromechanical sequencers, via solid
state devices, to the use of computer technology.
One of the first recognizably modern embedded systems was the Apollo Guidance
Computer, developed by Charles Stark Draper at the MIT Instrumentation Laboratory. At the
project's inception, the Apollo guidance computer was considered the riskiest item in the
Apollo project as it employed the then newly developed monolithic integrated circuits to
reduce the size and weight. An early mass-produced embedded system was the Autonetics D-
17 guidance computer for the Minuteman missile, released in 1961. It was built
from transistor logic and had a hard disk for main memory. When the Minuteman II went into
production in 1966, the D-17 was replaced with a new computer that was the first high-
volume use of integrated circuits.
2.1.2 Tools:
Embedded development makes up a small fraction of total programming. There's also a
large number of embedded architectures, unlike the PC world where 1 instruction set rules,
and the Unix world where there's only 3 or 4 major ones. This means that the tools are more
expensive. It also means that they're lower featured, and less developed. On a major embedded
project, at some point you will almost always find a compiler bug of some sort.
Debugging tools are another issue. Since you can't always run general programs on
your embedded processor, you can't always run a debugger on it. This makes fixing your
program difficult. Special hardware such as JTAG ports can overcome this issue in part.
6
However, if you stop on a breakpoint when your system is controlling real world hardware
(such as a motor), permanent equipment damage can occur. As a result, people doing
embedded programming quickly become masters at using serial IO channels and error
message style debugging.
2.1.3 Resources:
To save costs, embedded systems frequently have the cheapest processors that
can do the job. This means your programs need to be written as efficiently as possible. When
dealing with large data sets, issues like memory cache misses that never matter in PC
programming can hurt you. Luckily, this won't happen too often- use reasonably efficient
algorithms to start, and optimize only when necessary. Of course, normal profilers won't work
well, due to the same reason debuggers don't work well.
Memory is also an issue. For the same cost savings reasons, embedded systems
usually have the least memory they can get away with. That means their algorithms must be
memory efficient (unlike in PC programs, you will frequently sacrifice processor time for
memory, rather than the reverse). It also means you can't afford to leak memory. Embedded
applications generally use deterministic memory techniques and avoid the default "new" and
"malloc" functions, so that leaks can be found and eliminated more easily. Other resources
programmers expect may not even exist. For example, most embedded processors do not have
hardware FPUs (Floating-Point Processing Unit). These resources either need to be emulated
in software, or avoided altogether.
2.1.4 Real Time Issues:
Embedded systems frequently control hardware, and must be able to respond to
them in real time. Failure to do so could cause inaccuracy in measurements, or even damage
hardware such as motors. This is made even more difficult by the lack of resources available.
Almost all embedded systems need to be able to prioritize some tasks over others, and to be
7
able to put off/skip low priority tasks such as UI in favor of high priority tasks like hardware
control.
2.2 Need For Embedded Systems:
The uses of embedded systems are virtually limitless, because every day new products
are introduced to the market that utilizes embedded computers in novel ways. In recent years,
hardware such as microprocessors, microcontrollers, and FPGA chips have become much
cheaper. So when implementing a new form of control, it's wiser to just buy the generic chip
and write your own custom software for it. Producing a custom-made chip to handle a
particular task or set of tasks costs far more time and money. Many embedded computers even
come with extensive libraries, so that "writing your own software" becomes a very trivial task
indeed. From an implementation viewpoint, there is a major difference between a computer
and an embedded system. Embedded systems are often required to provide Real-Time
response. The main elements that make embedded systems unique are its reliability and ease
in debugging.
2.2.1 Debugging:
Embedded debugging may be performed at different levels, depending on the facilities
available. From simplest to most sophisticate they can be roughly grouped into the following
areas:
Interactive resident debugging, using the simple shell provided by the embedded
operating system (e.g. Forth and Basic)
External debugging using logging or serial port output to trace operation using either a
monitor in flash or using a debug server like the Remedy Debugger which even works for
heterogeneous multi core systems.
An in-circuit debugger (ICD), a hardware device that connects to the microprocessor
via a JTAG or Nexus interface. This allows the operation of the microprocessor to be
8
controlled externally, but is typically restricted to specific debugging capabilities in the
processor.
An in-circuit emulator replaces the microprocessor with a simulated equivalent,
providing full control over all aspects of the microprocessor.
A complete emulator provides a simulation of all aspects of the hardware, allowing all
of it to be controlled and modified and allowing debugging on a normal PC.
Unless restricted to external debugging, the programmer can typically load and run
software through the tools, view the code running in the processor, and start or stop its
operation. The view of the code may be as assembly code or source-code.
Because an embedded system is often composed of a wide variety of elements,
the debugging strategy may vary. For instance, debugging a software(and microprocessor)
centric embedded system is different from debugging an embedded system where most of the
processing is performed by peripherals (DSP, FPGA, co-processor). An increasing number of
embedded systems today use more than one single processor core. A common problem with
multi-core development is the proper synchronization of software execution. In such a case,
the embedded system design may wish to check the data traffic on the busses between the
processor cores, which requires very low-level debugging, at signal/bus level, with a logic
analyzer, for instance.
2.2.2 Reliability:
Embedded systems often reside in machines that are expected to run
continuously for years without errors and in some cases recover by themselves if an error
occurs. Therefore the software is usually developed and tested more carefully than that for
personal computers, and unreliable mechanical moving parts such as disk drives, switches or
buttons are avoided.
Specific reliability issues may include:
9
The system cannot safely be shut down for repair, or it is too inaccessible to repair.
Examples include space systems, undersea cables, navigational beacons, bore-hole systems,
and automobiles.
The system must be kept running for safety reasons. "Limp modes" are less tolerable.
Often backups are selected by an operator. Examples include aircraft navigation, reactor
control systems, safety-critical chemical factory controls, train signals, engines on single-
engine aircraft.
The system will lose large amounts of money when shut down: Telephone switches,
factory controls, bridge and elevator controls, funds transfer and market making, automated
sales and service.
A variety of techniques are used, sometimes in combination, to recover from
errors—both software bugs such as memory leaks, and also soft errors in the hardware:
Watchdog timer that resets the computer unless the software periodically notifies the
watchdog
Subsystems with redundant spares that can be switched over to
software "limp modes" that provide partial function
Designing with a Trusted Computing Base (TCB) architecture[6] ensures a highly
secure & reliable system environment
An Embedded Hypervisor is able to provide secure encapsulation for any subsystem
component, so that a compromised software component cannot interfere with other
subsystems, or privileged-level system software. This encapsulation keeps faults from
propagating from one subsystem to another, improving reliability. This may also allow a
subsystem to be automatically shut down and restarted on fault detection.
Immunity Aware Programming
10
2.3 Explanation of Embedded Systems:
2.3.1 Software Architecture:
There are several different types of software architecture in common use.
Simple Control Loop:
In this design, the software simply has a loop. The loop calls subroutines, each of
which manages a part of the hardware or software.
Interrupt Controlled System:
Some embedded systems are predominantly interrupt controlled. This means that tasks
performed by the system are triggered by different kinds of events. An interrupt could be
generated for example by a timer in a predefined frequency, or by a serial port controller
receiving a byte. These kinds of systems are used if event handlers need low latency and the
event handlers are short and simple.
Usually these kinds of systems run a simple task in a main loop also, but this task is
not very sensitive to unexpected delays. Sometimes the interrupt handler will add longer tasks
to a queue structure. Later, after the interrupt handler has finished, these tasks are executed by
the main loop. This method brings the system close to a multitasking kernel with discrete
processes.
Cooperative Multitasking:
A non-preemptive multitasking system is very similar to the simple control loop
scheme, except that the loop is hidden in an API. The programmer defines a series of tasks,
and each task gets its own environment to “run” in. When a task is idle, it calls an idle routine,
usually called “pause”, “wait”, “yield”, “nop” (stands for no operation), etc.The advantages
and disadvantages are very similar to the control loop, except that adding new software is
easier, by simply writing a new task, or adding to the queue-interpreter.
11
Primitive Multitasking:
In this type of system, a low-level piece of code switches between tasks or threads
based on a timer (connected to an interrupt). This is the level at which the system is generally
considered to have an "operating system" kernel. Depending on how much functionality is
required, it introduces more or less of the complexities of managing multiple tasks running
conceptually in parallel.
As any code can potentially damage the data of another task (except in larger systems
using an MMU) programs must be carefully designed and tested, and access to shared data
must be controlled by some synchronization strategy, such as message queues, semaphores or
a non-blocking synchronization scheme.
Because of these complexities, it is common for organizations to buy a real-time
operating system, allowing the application programmers to concentrate on device functionality
rather than operating system services, at least for large systems; smaller systems often cannot
afford the overhead associated with a generic real time system, due to limitations regarding
memory size, performance, and/or battery life.
Microkernel’s And Exokernels:
A microkernel is a logical step up from a real-time OS. The usual arrangement is that
the operating system kernel allocates memory and switches the CPU to different threads of
execution. User mode processes implement major functions such as file systems, network
interfaces, etc.
In general, microkernel’s succeed when the task switching and inter task
communication is fast, and fail when they are slow. Exokernels communicate efficiently by
normal subroutine calls. The hardware and all the software in the system are available to, and
extensible by application programmers. Based on performance, functionality, requirement the
embedded systems are divided into three categories:
12
2.3.2 Stand Alone Embedded System:
These systems takes the input in the form of electrical signals from transducers or commands
from human beings such as pressing of a button etc.., process them and produces desired
output. This entire process of taking input, processing it and giving output is done in
standalone mode. Such embedded systems comes under stand alone embedded systems
Eg: microwave oven, air conditioner etc..
2.3.3 Real-time embedded systems:
Embedded systems which are used to perform a specific task or operation in a specific
time period those systems are called as real-time embedded systems. There are two types of
real-time embedded systems.
Hard Real-time embedded systems:
These embedded systems follow an absolute dead line time period i.e.., if the
tasking is not done in a particular time period then there is a cause of damage to the entire
equipment.
Eg: consider a system in which we have to open a valve within 30 milliseconds. If this
valve is not opened in 30 ms this may cause damage to the entire equipment. So in such cases
we use embedded systems for doing automatic operations.
Soft Real Time embedded systems:
These embedded systems follow a relative dead line time period i.e.., if the task is not
done in a particular time that will not cause damage to the equipment.
Eg: Consider a TV remote control system ,if the remote control takes a few milliseconds
delay it will not cause damage either to the TV or to the remote control. These systems which will not
cause damage when they are not operated at considerable time period those systems comes under soft
real-time embedded systems.
13
2.3.4 Network communication embedded systems:
A wide range network interfacing communication is provided by using embedded
systems.
Consider a web camera that is connected to the computer with internet can be used to
spread communication like sending pictures, images, videos etc.., to another computer with
internet connection throughout anywhere in the world.
Consider a web camera that is connected at the door lock.
Whenever a person comes near the door, it captures the image of a person and
sends to the desktop of your computer which is connected to internet. This gives an alerting
message with image on to the desktop of your computer, and then you can open the door lock
just by clicking the mouse. Fig: 2.2 show the network communications in embedded systems.
14
Fig 2.2: Network communication embedded systems
2.3.5 Different types of processing units:
The central processing unit (CPU) can be any one of the following microprocessor,
microcontroller, digital signal processing.
Among these Microcontroller is of low cost processor and one of the main advantage
of microcontrollers is, the components such as memory, serial communication interfaces,
analog to digital converters etc.., all these are built on a single chip. The numbers of external
components that are connected to it are very less according to the application.
Microprocessors are more powerful than microcontrollers. They are used in major
applications with a number of tasking requirements. But the microprocessor requires many
external components like memory, serial communication, hard disk, input output ports etc.., so
the power consumption is also very high when compared to microcontrollers.
Digital signal processing is used mainly for the applications that particularly involved
with processing of signals
2.4 APPLICATIONS OF EMBEDDED SYSTEMS:
2.4.1 Consumer applications:
At home we use a number of embedded systems which include microwave
oven, remote control, VCD players, DVD players, camera etc….
15
Fig2.3: Automatic coffee makes equipment
2.4.2 Office automation:
We use systems like fax machine, modem, printer etc…
Fig2.4: Fax machine Fig2.5: Printing machine
2.4.3. Industrial automation:
16
Today a lot of industries are using embedded systems for process control. In
industries we design the embedded systems to perform a specific operation like monitoring
temperature, pressure, humidity ,voltage, current etc.., and basing on these monitored levels
we do control other devices, we can send information to a centralized monitoring station.
Fig2.6: Robot
In critical industries where human presence is avoided there we can use robots
which are programmed to do a specific operation.
2.4.5 Computer networking:
Embedded systems are used as bridges routers etc..
17
Fig2.7: Computer networking
2.4.6 Tele communications:
Cell phones, web cameras etc.
18
Fig2.8: Cell Phone Fig2.9: Web camera
CHAPTER 3: HARDWARE DESCRIPTION
3.1 Introduction:
In this chapter the block diagram of the project and design aspect of
independent modules are considered. Block diagram is shown in fig: 3.1.1:
19
FIG 3.1.1: Block diagram of speaking microcontroller for deaf and dumb
The main blocks of this project are:
1. Micro controller (16F72).
20
2. Reset button.
3. Crystal oscillator.
4. Regulated power supply (RPS).
5. LED indicator.
6. APR9600 voice module.
7. Potentiometer (POT).
3.1.2 Micro controller:
Fig: 3.2 Microcontrollers
21
3.2.1 Introduction to Microcontrollers:
Circumstances that we find ourselves in today in the field of microcontrollers
had their beginnings in the development of technology of integrated circuits. This
development has made it possible to store hundreds of thousands of transistors into one chip.
That was a prerequisite for production of microprocessors, and the first computers were made
by adding external peripherals such as memory, input-output lines, timers and other. Further
increasing of the volume of the package resulted in creation of integrated circuits. These
integrated circuits contained both processor and peripherals. That is how the first chip
containing a microcomputer, or what would later be known as a microcontroller came about.
Microprocessors and microcontrollers are widely used in embedded systems products.
Microcontroller is a programmable device. A microcontroller has a CPU in addition to a fixed
amount of RAM, ROM, I/O ports and a timer embedded all on a single chip. The fixed
amount of on-chip ROM, RAM and number of I/O ports in microcontrollers makes them ideal
for many applications in which cost and space are critical.
The microcontroller used in this project is PIC16F72. The PIC families of microcontrollers are
developed by Microchip Technology Inc. Currently they are some of the most popular
microcontrollers, selling over 120 million devices each year. There are basically four families
of PIC microcontrollers:
PIC12CXXX 12/14-bit program word
PIC 16C5X 12-bit program word
PIC16CXXX and PIC16FXXX 14-bit program word
22
PIC17CXXX and PIC18CXXX 16-bit program word
The features, pin description of the microcontroller used are discussed in the following
sections.
3.2.2 Description:
Introduction to PIC Microcontrollers:
PIC stands for Peripheral Interface Controller given by Microchip Technology to
identify its single-chip microcontrollers. These devices have been very successful in 8-bit
microcontrollers. The main reason is that Microchip Technology has continuously upgraded
the device architecture and added needed peripherals to the microcontroller to suit customers'
requirements. The development tools such as assembler and simulator are freely available on
the internet at www.microchip.com.
Low - end PIC Architectures:
Microchip PIC microcontrollers are available in various types. When PIC
microcontroller MCU was first available from General Instruments in early 1980's, the
microcontroller consisted of a simple processor executing 12-bit wide instructions with basic
I/O functions. These devices are known as low-end architectures. They have limited program
memory and are meant for applications requiring simple interface functions and small
program & data memories. Some of the low-end device numbers are
12C5XX
16C5X
16C505
Mid range PIC Architectures:
23
Mid range PIC architectures are built by upgrading low-end architectures with
more number of peripherals, more number of registers and more data/program memory. Some
of the mid-range devices are
16C6X
16C7X
16F87X
Program memory type is indicated by an alphabet.
C = EPROM, F = Flash, RC = Mask ROM
Popularity of the PIC microcontrollers is due to the following factors.
1. Speed: Harvard Architecture, RISC architecture, 1 instruction cycle = 4 clock cycles.
2. Instruction set simplicity: The instruction set consists of just 35 instructions (as
opposed to 111 instructions for 8051).
3. Power-on-reset and brown-out reset. Brown-out-reset means when the power supply
goes below a specified voltage (say 4V), it causes PIC to reset; hence malfunction is avoided.
A watch dog timer (user programmable) resets the processor if the software/program ever
malfunctions and deviates from its normal operation.
4. PIC microcontroller has four optional clock sources.
Low power crystal
Mid range crystal
High range crystal
RC oscillator (low cost).
5. Programmable timers and on-chip ADC.
24
6. Up to 12 independent interrupt sources.
7. Powerful output pin control (25 mA (max.) current sourcing capability per pin.)
8. EPROM/OTP/ROM/Flash memory option.
9. I/O port expansion capability.
CPU Architecture:
The CPU uses Harvard architecture with separate Program and Variable (data)
memory interface. This facilitates instruction fetch and the operation on data/accessing of
variables simultaneously. Architecture of PIC microcontroller
Fig.3.3.Architecture of PIC microcontroller
Basically, all PIC microcontrollers offer the following features:
RISC instruction set with around 35 instructions _9 Digital I/O ports
On-chip timer with 8-bit prescaler.
Power-on reset
Watchdog timer
Power saving SLEEP mode
Direct, indirect, and relative addressing modes
External clock interface
25
RAM data memory
EPROM (or OTP) program memory
Peripheral features:
High sink/source current 25mA
Timer0: 8-bit timer/counter with 8-bit prescaler can be incremented during sleep via
external crystal/clock
Timer2:8-bit timer/counter with 8-bit period register prescaler and post scalar.
Capture, Compare, PWM (CCP) module
Capture is 16-bit, max resolution is 12.5ns
Compare is 16-bit, max resolution is 200 ns
PWM max, resolution is 10-bit
8-bit 5 channel analog-to-digital converter
Synchronous serial port (SSP) with SPI (Master/Slave) and (Slave)
Some devices offer the following additional features:
Analogue input channels
Analogue comparators
Additional timer circuits
EEPROM data memory
Flash EEPROM program memory
26
External and timer interrupts
In-circuit programming
Internal oscillator
USART serial interface
3.2.3 Pin diagram:
Pin description:
PIC16F72 has a total of 28 pins. It is most frequently found in a DIP28 type of
case but can also be found in SMD case which is smaller from a DIP. DIP is an abbreviation
for Dual In Package. SMD is an abbreviation for Surface Mount Devices suggesting that holes
for pins to go through when mounting aren't necessary in soldering this type of a component.
27
Pins on PIC16F72 microcontroller have the following meaning:
There are 28 pins on PIC16F72. Most of them can be used as an IO pin. Others are already for
specific functions. These are the pin functions.
1. MCLR – to reset the PIC
2. RA0 – port A pin 0
3. RA1 – port A pin 1
4. RA2 – port A pin 2
5. RA3 – port A pin 3
6. RA4 – port A pin 4
7. RA5 – port A pin 5
8. VSS – ground
9. OSC1 – connect to oscillator
10. OSC2 – connect to oscillator
11. RC0 – port C pin 0 VDD – power supply
12. RC1 – port C pin 1
13. RC2 – port C pin 2
14. RC3 – port C pin 3
15. RC4 - port C pin 4
16. RC5 - port C pin 5
17. RC6 - port C pin 6
18. RC7 - port C pin 7
19. VSS - ground
20. VDD – power supply
21. RB0 - port B pin 0
22. RB1 - port B pin 1
23. RB2 - port B pin 2
24. RB3 - port B pin 3
28
25. RB4 - port B pin 4
26. RB5 - port B pin 5
27. RB6 - port B pin 6
28. RB7 - port B pin 7
By utilizing all of this pin so many application can be done such as:
1. LCD – connect to Port B pin.
2. LED – connect to any pin declared as output.
3. Relay and Motor - connect to any pin declared as output.
4. External EEPROM – connect to I2C interface pin – RC3 and RC4 (SCL and SDA)
5. LDR, Potentiometer and sensor – connect to analogue input pin such as RA0.
6. GSM modem dial up modem – connect to RC6 and RC7 – the serial communication
interface using RS232 protocol.
For more detail function for each specific pin please refer to the device datasheet from
Microchip.
Ports
Term "port" refers to a group of pins on a microcontroller which can be accessed
simultaneously, or on which we can set the desired combination of zeros and ones, or read
from them an existing status. Physically, port is a register inside a microcontroller which is
connected by wires to the pins of a microcontroller. Ports represent physical connection of
Central Processing Unit with an outside world. Microcontroller uses them in order to monitor
or control other components or devices. Due to functionality, some pins have twofold roles
like PA4/TOCKI for instance, which is in the same time the fourth bit of port A and an
external input for free-run counter. Selection of one of these two pin functions is done in one
of the configuration registers. An illustration of this is the fifth bit T0CS in OPTION register.
By selecting one of the functions the other one is disabled.
All port pins can be designated as input or output, according to the needs of a device that's
being developed. In order to define a pin as input or output pin, the right combination of zeros
29
and ones must be written in TRIS register. If the appropriate bit of TRIS register contains
logical "1", then that pin is an input pin, and if the opposite is true, it's an output pin. Every
port has its proper TRIS register. Thus, port A has TRISA, and port B has TRISB. Pin
direction can be changed during the course of work which is particularly fitting for one-line
communication where data flow constantly changes direction. PORTA and PORTB state
registers are located in bank 0, while TRISA and TRISB pin direction registers are located in
bank 1.
PORTB and TRISB:
PORTB have adjoined 8 pins. The appropriate register for data direction is TRISB. Setting a
bit in TRISB register defines the corresponding port pin as input, and resetting a bit in TRISB
register defines the corresponding port pin as output.
Each PORTB pin has a weak internal pull-up resistor (resistor which defines a line to logic
one) which can be activated by resetting the seventh bit RBPU in OPTION register. These
30
'pull-up' resistors are automatically being turned off when port pin is configured as an output.
When a microcontroller is started, pull-ups are disabled.
Four pins PORTB, RB7:RB4 can cause an interrupt which occurs when their status changes
from logical one into logical zero and opposite. Only pins configured as input can cause this
interrupt to occur (if any RB7:RB4 pin is configured as an output, an interrupt won't be
generated at the change of status.) This interrupt option along with internal pull-up resistors
makes it easier to solve common problems we find in practice like for instance that of matrix
keyboard. If rows on the keyboard are connected to these pins, each push on a key will then
cause an interrupt. A microcontroller will determine which key is at hand while processing an
interrupt It is not recommended to refer to port B at the same time that interrupt is being
processed.
PORTA and TRISA:
PORTA have 5 adjoining pins. The corresponding register for data direction is TRISA at
address 85h. Like with port B, setting a bit in TRISA register defines also the corresponding
port pin as input, and clearing a bit in TRISA register defines the corresponding port pin as
output.
It is important to note that PORTA pin RA4 can be input only. On that pin is also situated an
external input for timer TMR0. Whether RA4 will be a standard input or an input for a counter
depends on T0CS bit (TMR0 Clock Source Select bit). This pin enables the timer TMR0 to
increment either from internal oscillator or via external impulses on RA4/T0CKI pin.
Example shows how pins 0, 1, 2, 3, and 4 are designated input, and pins 5, 6, and 7 output.
After this, it is possible to read the pins RA2, RA3, RA4, and to set logical zero or one to pins
RA0 and RA1.
31
Memory organization:
PIC16F72 has two separate memory blocks, one for data and the other for program. EEPROM
memory with GPR and SFR registers in RAM memory make up the data block, while FLASH
memory makes up the program block.
Program memory:
Program memory has been carried out in FLASH technology which makes it possible to
program a microcontroller many times before it's installed into a device, and even after its
installment if eventual changes in program or process parameters should occur. The size of
32
program memory is 1024 locations with 14 bits width where locations zero and four are
reserved for reset and interrupt vector.
Data memory:
Data memory consists of EEPROM and RAM memories. EEPROM memory consists of 256
eight bit locations whose contents are not lost during loosing of power supply. EEPROM is
not directly addressable, but is accessed indirectly through EEADR and EEDATA registers.
As EEPROM memory usually serves for storing important parameters (for example, of a
given temperature in temperature regulators) , there is a strict procedure for writing in
EEPROM which must be followed in order to avoid accidental writing. RAM memory for data
occupies space on a memory map from location 0x0C to 0x4F which comes to 68 locations.
Locations of RAM memory are also called GPR registers which is an abbreviation for General
Purpose Registers. GPR registers can be accessed regardless of which bank is selected at the
moment.
3.3 REGULATED POWER SUPPLY
3.3.1 Introduction:
Power supply is a supply of electrical power. A device or system that
supplies electrical or other types of energy to an output load or group of loads is called a power
33
supply unit or PSU. The term is most commonly applied to electrical energy supplies, less
often to mechanical ones, and rarely to others.
A power supply may include a power distribution system as well as primary or
secondary sources of energy such as
Conversion of one form of electrical power to another desired form and voltage,
typically involving converting AC line voltage to a well-regulated lower-voltage DC for
electronic devices. Low voltage, low power DC power supply units are commonly integrated
with the devices they supply, such as computers and household electronics.
Batteries.
Chemical fuel cells and other forms of energy storage systems.
Solar power.
Generators or alternators.
3.3.2 Block Diagram:
34
Fig 3.3.2 Regulated Power Supply
The basic circuit diagram of a regulated power supply (DC O/P) with led
connected as load is shown in fig: 3.3.3.
35
Fig 3.3.3 Circuit diagram of Regulated Power Supply with Led connection
The components mainly used in above figure are
230V AC mains.
Transformer.
Bridge rectifier (diodes).
Capacitor.
Voltage regulator(IC 7805).
Resistor.
LED (light emitting diode).
The detailed explanation of each and every component mentioned above is as follows:
Transformation: The process of transforming energy from one device to another is called
transformation. For transforming energy we use transformers.
Transformers:
A transformer is a device that transfers electrical energy from one circuit to
another through inductively coupled conductors without changing its frequency. A
varying current in the first or primary winding creates a varying magnetic flux in the
transformer's core, and thus a varying magnetic field through the secondary winding. This
varying magnetic field induces a varying electromotive force (EMF) or "voltage" in the
secondary winding. This effect is called mutual induction.
If a load is connected to the secondary, an electric current will flow in the
secondary winding and electrical energy will be transferred from the primary circuit through
36
the transformer to the load. This field is made up from lines of force and has the same shape as
a bar magnet.
If the current is increased, the lines of force move outwards from the coil. If the
current is reduced, the lines of force move inwards.
If another coil is placed adjacent to the first coil then, as the field moves out or
in, the moving lines of force will "cut" the turns of the second coil. As it does this, a voltage is
induced in the second coil. With the 50 Hz AC mains supply, this will happen 50 times a
second. This is called MUTUAL INDUCTION and forms the basis of the transformer.
The input coil is called the PRIMARY WINDING; the output coil is the
SECONDARY WINDING. Fig: 3.3.4 shows step-down transformer.
Fig 3.3.4: Step-Down Transformer
The voltage induced in the secondary is determined by the TURNS RATIO.
For example, if the secondary has half the primary turns; the secondary will
have half the primary voltage.
Another example is if the primary has 5000 turns and the secondary has 500 turns, then
the turn’s ratio is 10:1.
37
If the primary voltage is 240 volts then the secondary voltage will be x 10 smaller = 24
volts. Assuming a perfect transformer, the power provided by the primary must equal the
power taken by a load on the secondary. If a 24-watt lamp is connected across a 24 volt
secondary, then the primary must supply 24 watts.
To aid magnetic coupling between primary and secondary, the coils are wound on a
metal CORE. Since the primary would induce power, called EDDY CURRENTS, into this
core, the core is LAMINATED. This means that it is made up from metal sheets insulated
from each other. Transformers to work at higher frequencies have an iron dust core or no core
at all.
Note that the transformer only works on AC, which has a constantly changing current
and moving field. DC has a steady current and therefore a steady field and there would be no
induction.
Some transformers have an electrostatic screen between primary and secondary. This
is to prevent some types of interference being fed from the equipment down into the mains
supply, or in the other direction. Transformers are sometimes used for IMPEDANCE
MATCHING.
We can use the transformers as step up or step down.
Step Up transformer:
In case of step up transformer, primary windings are every less compared to
secondary winding.
Because of having more turns secondary winding accepts more energy, and it
releases more voltage at the output side.
Step down transformer:
38
Incase of step down transformer, Primary winding induces more flux than the
secondary winding, and secondary winding is having less number of turns because of that it
accepts less number of flux, and releases less amount of voltage.
Battery power supply:
A battery is a type of linear power supply that offers benefits that traditional
line-operated power supplies lack: mobility, portability and reliability. A battery consists of
multiple electrochemical cells connected to provide the voltage desired. Fig: 3.3.5 shows Hi-
Watt 9V battery
Fig 3.3.5: Hi-Watt 9V Battery
The most commonly used dry-cell battery is the carbon-zinc dry cell
battery. Dry-cell batteries are made by stacking a carbon plate, a layer of electrolyte paste, and
a zinc plate alternately until the desired total voltage is achieved. The most common dry-cell
batteries have one of the following voltages: 1.5, 3, 6, 9, 22.5, 45, and 90. During the
discharge of a carbon-zinc battery, the zinc metal is converted to a zinc salt in the electrolyte,
and magnesium dioxide is reduced at the carbon electrode. These actions establish a voltage of
approximately 1.5 V.
The lead-acid storage battery may be used. This battery is rechargeable; it
consists of lead and lead/dioxide electrodes which are immersed in sulfuric acid. When fully
charged, this type of battery has a 2.06-2.14 V potential (A 12 volt car battery uses 6 cells in
series). During discharge, the lead is converted to lead sulfate and the sulfuric acid is
39
converted to water. When the battery is charging, the lead sulfate is converted back to lead and
lead dioxide A nickel-cadmium battery has become more popular in recent years. This battery
cell is completely sealed and rechargeable. The electrolyte is not involved in the electrode
reaction, making the voltage constant over the span of the batteries long service life. During
the charging process, nickel oxide is oxidized to its higher oxidation state and cadmium oxide
is reduced. The nickel-cadmium batteries have many benefits. They can be stored both
charged and uncharged. They have a long service life, high current availabilities, constant
voltage, and the ability to be recharged. Fig: 3.3.6 shows pencil battery of 1.5V.
Fig 3.3.6: Pencil Battery of 1.5V
Rectification:
The process of converting an alternating current to a pulsating direct current is
called as rectification. For rectification purpose we use rectifiers.
Rectifiers:
A rectifier is an electrical device that converts alternating current (AC) to direct
current (DC), a process known as rectification. Rectifiers have many uses including as
components of power supplies and as detectors of radio signals. Rectifiers may be made of
solid-state diodes, vacuum tube diodes, mercury arc valves, and other components.
A device that it can perform the opposite function (converting DC to AC) is
known as an inverter.
40
When only one diode is used to rectify AC (by blocking the negative or
positive portion of the waveform), the difference between the term diode and the term rectifier
is merely one of usage, i.e., the term rectifier describes a diode that is being used to convert
AC to DC. Almost all rectifiers comprise a number of diodes in a specific arrangement for
more efficiently converting AC to DC than is possible with only one diode. Before the
development of silicon semiconductor rectifiers, vacuum tube diodes and copper (I) oxide or
selenium rectifier stacks were used.
Bridge full wave rectifier:
The Bridge rectifier circuit is shown in fig: 3.3.7, which converts an ac voltage
to dc voltage using both half cycles of the input ac voltage. The Bridge rectifier circuit is
shown in the figure. The circuit has four diodes connected to form a bridge. The ac input
voltage is applied to the diagonally opposite ends of the bridge. The load resistance is
connected between the other two ends of the bridge.
For the positive half cycle of the input ac voltage, diodes D1 and D3 conduct,
whereas diodes D2 and D4 remain in the OFF state. The conducting diodes will be in series
with the load resistance RL and hence the load current flows through RL.
For the negative half cycle of the input ac voltage, diodes D2 and D4 conduct
whereas, D1 and D3 remain OFF. The conducting diodes D2 and D4 will be in series with the
load resistance RL and hence the current flows through RL in the same direction as in the
previous half cycle. Thus a bi-directional wave is converted into a unidirectional wave.
Input Output
41
Fig 3.3.7: Bridge rectifier: a full-wave rectifier using 4 diodes
DB107:
Now -a -days Bridge rectifier is available in IC with a number of DB107. In
our project we are using an IC in place of bridge rectifier. The picture of DB 107 is shown in
fig: 3.3.8.
Features:
Good for automation insertion.
Surge overload rating - 30 amperes peak.
Ideal for printed circuit board.
Reliable low cost construction utilizing molded.
Glass passivated device.
Polarity symbols molded on body.
42
Mounting position: Any.
Weight: 1.0 gram.
Fig 3.3.8: DB107
Filtration:
The process of converting a pulsating direct current to a pure direct current
using filters is called as filtration.
Filters:
Electronic filters are electronic circuits, which perform signal-processing functions,
specifically to remove unwanted frequency components from the signal, to enhance wanted
ones.
Introduction to Capacitors:
The Capacitor or sometimes referred to as a Condenser is a passive device, and one
which stores energy in the form of an electrostatic field which produces a potential (static
voltage) across its plates. In its basic form a capacitor consists of two parallel conductive
plates that are not connected but are electrically separated either by air or by an insulating
43
material called the Dielectric. When a voltage is applied to these plates, a current flows
charging up the plates with electrons giving one plate a positive charge and the other plate an
equal and opposite negative charge. This flow of electrons to the plates is known as
the Charging Current and continues to flow until the voltage across the plates (and hence the
capacitor) is equal to the applied voltage Vcc. At this point the capacitor is said to be fully
charged and this is illustrated below. The construction of capacitor and an electrolytic
capacitor are shown in figures 3.3.9 and 3.3.10 respectively.
Fig 3.3.9:Construction Of a Capacitor Fig 3.3.10:Electrolytic
Capaticor
44
Units of Capacitance:
Microfarad (μF) 1μF = 1/1,000,000 = 0.000001 = 10-6 F
Nanofarad (nF) 1nF = 1/1,000,000,000 = 0.000000001 = 10-9 F
Pico farad (pF) 1pF = 1/1,000,000,000,000 = 0.000000000001 = 10-12 F
Operation of Capacitor:
Think of water flowing through a pipe. If we imagine a capacitor as being a storage
tank with an inlet and an outlet pipe, it is possible to show approximately how an electronic
capacitor works.
First, let's consider the case of a "coupling capacitor" where the capacitor is used to
connect a signal from one part of a circuit to another but without allowing any direct current to
flow.
If the current flow is alternating between zero and a
maximum, our "storage tank" capacitor will allow the
current waves to pass through.
However, if there is a steady current, only the initial short
burst will flow until the "floating ball valve" closes and
stops further flow.
45
So a coupling capacitor allows "alternating current" to pass through because the
ball valve doesn't get a chance to close as the waves go up and down. However, a steady
current quickly fills the tank so that all flow stops.
A capacitor will pass alternating current but (apart from an initial surge) it will
not pass d.c.
Where a capacitor is used to decouple a circuit, the effect
is to "smooth out ripples". Any ripples, waves or pulses of
current are passed to ground while d.c. Flows smoothly.
Regulation:
The process of converting a varying voltage to a constant regulated voltage is
called as regulation. For the process of regulation we use voltage regulators.
Voltage Regulator:
A voltage regulator (also called a ‘regulator’) with only three terminals appears
to be a simple device, but it is in fact a very complex integrated circuit. It converts a varying
input voltage into a constant ‘regulated’ output voltage. Voltage Regulators are available in a
variety of outputs like 5V, 6V, 9V, 12V and 15V. The LM78XX series of voltage regulators
are designed for positive input. For applications requiring negative input, the LM79XX series
is used. Using a pair of ‘voltage-divider’ resistors can increase the output voltage of a
regulator circuit.
46
It is not possible to obtain a voltage lower than the stated rating. You cannot use a 12V
regulator to make a 5V power supply. Voltage regulators are very robust. These can withstand
over-current draw due to short circuits and also over-heating. In both cases, the regulator will
cut off before any damage occurs. The only way to destroy a regulator is to apply reverse
voltage to its input. Reverse polarity destroys the regulator almost instantly. Fig: 3.3.11 shows
voltage regulator.
Fig 3.3.11: Voltage Regulator
Resistors:
A resistor is a two-terminal electronic component that produces a voltage across its terminals
that is proportional to the electric current passing through it in accordance with Ohm's law:
V = IR
Resistors are elements of electrical networks and electronic circuits and are ubiquitous in most
electronic equipment. Practical resistors can be made of various compounds and films, as well
as resistance wire (wire made of a high-resistivity alloy, such as nickel/chrome).
The primary characteristics of a resistor are the resistance, the tolerance, maximum working
voltage and the power rating. Other characteristics include temperature coefficient, noise, and
inductance. Less well-known is critical resistance, the value below which power dissipation
limits the maximum permitted current flow, and above which the limit is applied voltage.
Critical resistance is determined by the design, materials and dimensions of the resistor.
47
Resistors can be made to control the flow of current, to workas Voltage
dividers, to dissipate power and it can shape electrical waves when used in combination of
other components. Basic unit is ohms.
Theory of operation:
Ohm's law:
The behavior of an ideal resistor is dictated by the relationship specified in
Ohm's law:
V = IR
Ohm's law states that the voltage (V) across a resistor is proportional to the
current (I) through it where the constant of proportionality is the resistance (R).
Power dissipation:
The power dissipated by a resistor (or the equivalent resistance of a resistor
network) is calculated using the following:
48
Fig 3.3.12: Resistor Fig 3.3.13: Color Bands In Resistor
3.4. LED:
A light-emitting diode (LED) is a semiconductor light source. LEDs are used as
indicator lamps in many devices, and are increasingly used for lighting. Introduced as a
practical electronic component in 1962, early LEDs emitted low-intensity red light, but
modern versions are available across the visible, ultraviolet and infrared wavelengths, with
very high brightness. The internal structure and parts of a led are shown in figures 3.4.1 and
3.4.2 respectively.
49
Fig 3.4.1: Inside a LED Fig 3.4.2: Parts of a LED
Working:
he structure of the LED light is completely different than that of the light bulb.
Amazingly, the LED has a simple and strong structure. The light-emiTtting semiconductor
material is what determines the LED's color. The LED is based on the semiconductor diode.
When a diode is forward biased (switched on), electrons are able to recombine
with holes within the device, releasing energy in the form of photons. This effect is called
electroluminescence and the color of the light (corresponding to the energy of the photon) is
determined by the energy gap of the semiconductor. An LED is usually small in area (less than
1 mm2), and integrated optical components are used to shape its radiation pattern and assist in
reflection. LEDs present many advantages over incandescent light sources including lower
energy consumption, longer lifetime, improved robustness, smaller size, faster switching, and
greater durability and reliability. However, they are relatively expensive and require more
precise current and heat management than traditional light sources. Current LED products for
general lighting are more expensive to buy than fluorescent lamp sources of comparable
output. They also enjoy use in applications as diverse as replacements for traditional light
50
sources in automotive lighting (particularly indicators) and in traffic signals. The compact size
of LEDs has allowed new text and video displays and sensors to be developed, while their
high switching rates are useful in advanced communications technology. The electrical
symbol and polarities of led are shown in fig: 3.4.3.
Fig 3.4.3: Electrical Symbol & Polarities of LED
LED lights have a variety of advantages over other light sources:
High-levels of brightness and intensity
High-efficiency
Low-voltage and current requirements
Low radiated heat
High reliability (resistant to shock and vibration)
No UV Rays
Long source life
Can be easily controlled and programmed
Applications of LED fall into three major categories:
51
Visual signal application where the light goes more or less directly from the LED to
the human eye, to convey a message or meaning.
Illumination where LED light is reflected from object to give visual response of these
objects.
Generate light for measuring and interacting with processes that do not involve the
human visual system.
3.5: APR9600 voice Module:
3.5.1. Description: APR9600 multi-section sound recorder/replay IC and
experimental board:
APR9600 is a low-cost high performance sound record/replay IC incorporating flash analogue
storage technique. Recorded sound is retained even after power supply is removed from the
module. The replayed sound exhibits high quality with a low noise level. Sampling rate for a
60 second recording period is 4.2 kHz that gives a sound record/replay bandwidth of 20Hz to
2.1 kHz.
However, by changing an oscillation resistor, a sampling rate as high as 8.0 kHz can be
achieved. This shortens the total length of sound recording to 32 seconds. Total sound
recording time can be varied from 32 seconds to 60 seconds by changing the value of a single
resistor. The IC can operate in one of two modes: serial mode and parallel mode. In serial
access mode, sound can be recorded in 256 sections. In parallel access mode, sound can be
recorded in 2, 4 or 8 sections. The IC can be controlled simply using push button keys. It is
52
also possible to control the IC using external digital circuitry such as micro-controllers and
computers.
The APR9600 has a 28 pin DIP package. Supply voltage is between 4.5V to 6.5V. During
recording and replaying, current consumption is 25 mA. In idle mode, the current drops to 1
A. The APR9600 experimental board is an assembled PCB board consisting of an APR9600
IC, an electret microphone, support components and necessary switches to allow users to
explore all functions of the APR9600 chip. The oscillation resistor is chosen so that the total
recording period is 60 seconds with a sampling rate of 4.2 kHz. The board measures 80mm by
55mm.
3.5.2. APR9600 Experimental board:
1. APR9600:
53
Pin-out of the APR9600 is given in Figure 1. A typical connection of the chip is given in
Figure 2 (This is the circuit diagram of the module). Pin functions of the IC are given in Table
1. During sound recording, sound is picked up by the microphone. A microphone pre-
amplifier amplifies the voltage signal from the microphone. An AGC circuit is included in the
pre-amplifier, the extent of which is controlled by an external capacitor and resistor. If the
voltage level of a sound signal is around 100 mV peak to- peak, the signal can be fed directly
into the IC through ANA IN pin (pin 20). The sound signal passes through a filter and a
sampling and hold circuit. The analogue voltage is then written into non-volatile flash
analogue RAMs. It has a 28 pin DIP package. Supply voltage is between 4.5V to 6.5V. During
recording and replaying, current consumption is 25 mA. In idle mode, the current drops to 1
A.
3.5.3. APR9600 circuit diagram:
54
2. APR9600 module:
The circuit diagram of the module is shown in Figure 2. The module consists of an APR9600
chip, an electrets microphone, support components, a mode selection switch (-RE,MSEL1,
MSEL2 and – M8) and 9 keys (-M1 to –M8 and CE). The oscillation resistor is chosen so that
the total recording period is 60 seconds with a sampling rate of 4.2 kHz. Users can change the
value of the ROSC to obtain other sampling frequencies. It should be noted that if the
sampling rate is increased, the length of recording time is decreased. Table 3 gives the details.
55
An 8-16 Ohm speaker is to be used with the module. Users can select different modes using
the mode selection switch. The module is measured 80mm55mm. Connection points (0-8, C
and B) can connect to other switches or external digital circuits. In this cased, on-board keys
M1 to M8 and CE are by-passed.
3. Using the APR9600 module
3.5.4. Parallel mode recording and replaying:
Record sound tracks:
This is an example of recording 8 sound tracks. The mode switch should have the following
pattern: MSEL1=1(switched to left-hand side of the mode selection switch), MSEL2=1 (left-
hand side). –M8=1 (left-hand side). RE=0 (right-hand side). The maximum length of the 8
tracks is 7.5 seconds. Press –M1 continuously and you will see BUZY LED illuminates. You
can now speak to the microphone. Recording will terminate if –M1 is released or if the
recording time exceeds 7.5 seconds. Similarly, press –M2 to -M8 to record other sound tracks.
INTEC DATA SHEETS APR9600 sound recording module Intec Associates Ltd.
Replay sound tracks:
Now make RE=1 (switched to Left-hand side of the mode selection switch) while keep other
switches at the same location. Toggle –M1 to –M8 (press key and release) causes a particular
sound track to replay once. While the sound is playing, press the same key again or press CE
key will terminate the current sound track. Press other key while a sound is being played
causes a new sound track to be played. If a key from –M1 to -M8 is pressed continuously, the
particular sound track will be played continuously. Press CE to stop playing the sound track.
56
3.5.5. Serial mode recording and replaying
Record sound tracks sequentially:
This is an example of recording sequential sound tracks. The mode switch should have the
following pattern: MSEL1=0(switched to right-hand side of the mode selection switch),
MSEL2=0 (right-hand side). –M8=1 (left-hand side). RE=0 (right-hand side). Press CE first to
reset the sound track counter to zero. Press and hold –M1 down and you will see BUZY LED
illuminates. You can now speak to the microphone. Recording will terminate if –M1 is
released or if the recording time exceeds 60 seconds (in this case you will run out the memory
for your next sound track). Press –M1 again and again to record 2nd, 3rd, 4th and other
consecutive sound tracks. Each sound track may have different lengths, but the accumulated
length of all sound tracks will not exceed 60 seconds.
Replay sound tracks sequentially:
Now make RE=1 (switched to Left-hand side of the mode selection switch) while keep other
switches at the same location. Toggle –M1 (press key and release) causes the 1st sound track
to be played once. Toggle –M1 again and again will play the 2nd, 3rd, 4th and other
consecutive sound tracks. Press CE to reset the sound track counter to zero.
Record sound tracks with forward control:
This is an example of recording sound tracks with forward control. The mode switch should
have the following pattern: MSEL1=0(switched to right-hand side of the mode selection
switch), MSEL2=0 (right-hand side). –M8=0 (right-hand side). RE=0 (right-hand side). Press
CE first to reset the sound track counter to zero. This mode is rather similar to the above
sequential sound recording. The only difference is that after –M1 is pressed and released; the
sound track counter does not increment itself to the next sound track location. To move to the
57
next sound track, –M2 should be toggled. So if –M1 is not toggled again and again without
toggling –M2, sound will be recorded at the same sound track location.
Replay sound tracks with forward control:
Now make RE=1 (switched to Left-hand side of the mode selection switch) while keep other
switches at the same location. Toggle –M1 (press key and release) causes the 1st sound track
to be played once. Toggle –M1 again and again will still play the 1st sound track. Once –M2
is toggled, the sound track counter is incremented and the next sound can be played. Press CE
to reset the sound track counter to zero.
INTEC DATA SHEETS APR9600 sound recording module Intec Associates Ltd.
4. Sampling rates
The sampling rate is determined by the value of the OSC resistor (R8 in the circuit diagram).
It can be adjusted by users to suit their specific requirements.
5. Application tips
Tips for better sound replay quality:
1. Use a good quality 8 Ohm speaker with a cavity such as speakers for computer sound
systems. Do not use a bare speaker which gives you degraded sound.
2. For better sound replay quality, speak with a distance to the on-board microphone and speak
clearly. Also keep the background noise as low as possible.
3. For even better sound replay quality, use microphone input or Audio Line In input. If
Audio Line In is used, the amplitude of input signal should be < 100 mV p-p.
58
3.5.6. Speaker:
Fig 3.5.6.speaker
The speaker is an inexpensive, low fidelity 3½-inch speaker, typically found in
small radios.
A loudspeaker (or "speaker") is an electro acoustic transducer that converts an electrical
signal into sound. The speaker moves in accordance with the variations of an electrical signal
and causes sound waves to propagate through a medium such as air or water.
After the acoustics of the listening space, loudspeakers (and other electro acoustic transducers)
are the most variable elements in a modern audio system and are usually responsible for most
distortion and audible differences when comparing sound systems.
3.5.7. Terminology description:
The term "loudspeaker" may refer to individual transducers (known as "drivers") or to
complete speaker systems consisting of an enclosure including one or more drivers. To
59
adequately reproduce a wide range of frequencies, most loudspeaker systems employ more
than one driver, particularly for higher sound pressure level or maximum accuracy. Individual
drivers are used to reproduce different frequency ranges. The drivers are named subwoofers
(for very low frequencies); woofers (low frequencies); mid-range speakers (middle
frequencies); tweeters (high frequencies); and sometimes super tweeters, optimized for the
highest audible frequencies. The terms for different speaker drivers differ, depending on the
application. In two-way systems there is no mid-range driver, so the task of reproducing the
mid-range sounds falls upon the woofer and tweeter. Home stereos use the designation
"tweeter" for the high frequency driver, while professional concert systems may designate
them as "HF" or "highs". When multiple drivers are used in a system, a "filter network", called
a crossover, separates the incoming signal into different frequency ranges and routes them to
the appropriate driver. A loudspeaker system with n separate frequency bands is described as
"n-way speakers": a two-way system will have a woofer and a tweeter; a three-way system
employs a woofer, a mid-range, and a tweeter.
3.5.8. Speaker driver design:
60
Cut away view of a dynamic loudspeaker.
Potentiometer:
A potentiometer (colloquially known as a "pot") is a three-terminal resistor with a sliding
contact that forms an adjustable voltage divider.[1] If only two terminals are used (one side and
the wiper), it acts as a variable resistor or rheostat. Potentiometers are commonly used to
control electrical devices such as volume controls on audio equipment. Potentiometers
operated by a mechanism can be used as position transducers, for example, in a joystick.
Potentiometers are rarely used to directly control significant power (more than a watt). Instead
they are used to adjust the level of analog signals (e.g. volume controls on audio equipment),
and as control inputs for electronic circuits. For example, a light dimmer uses a potentiometer
to control the switching of a TRIAC and so indirectly control the brightness of lamps.
Fig: Diagram of potentiometer
61
Theory of operation:
The potentiometer can be used as a voltage divider to obtain a manually adjustable output
voltage at the slider (wiper) from a fixed input voltage applied across the two ends of the pot.
This is the most common use of pots.
The voltage across RL can be calculated by:
If RL is large compared to the other resistances (like the input to an operational amplifier), the
output voltage can be approximated by the simpler equation:
As an example, assume
62
, , , and
Since the load resistance is large compared to the other resistances, the output voltage VL will
be approximately:
Due to the load resistance, however, it will actually be slightly lower: ≈ 6.623 V.
One of the advantages of the potential divider compared to a variable resistor in series with the
source is that, while variable resistors have a maximum resistance where some current will
always flow, dividers are able to vary the output voltage from maximum (VS) to ground (zero
volts) as the wiper moves from one end of the pot to the other. There is, however, always a
small amount of contact resistance.
In addition, the load resistance is often not known and therefore simply placing a variable
resistor in series with the load could have a negligible effect or an excessive effect, depending
on the load.
Potentiometer construction:
63
Fig: Diagram of internal construction of potentiometer
Construction of a wire-wound circular potentiometer:
The resistive element (1) of the shown device is trapezoidal, giving a non-linear relationship
between resistance and turn angle. The wiper (3) rotates with the axis (4), providing the
changeable resistance between the wiper contact (6) and the fixed contacts (5) and (9). The
vertical position of the axis is fixed in the body (2) with the ring (7) (below) and the bolt (8)
(above).
A potentiometer is constructed with a resistive element formed into an arc of a circle, and a
sliding contact (wiper) traveling over that arc. The resistive element, with a terminal at one or
both ends, is flat or angled, and is commonly made of graphite, although other materials may
be used. The wiper is connected through another sliding contact to another terminal. On panel
pots, the wiper is usually the center terminal of three. For single-turn pots, this wiper typically
travels just under one revolution around the contact. "Multi turn" potentiometers also exist,
where the resistor element may be helical and the wiper may move 10, 20, or more complete
revolutions, though multi turn pots are usually constructed of a conventional resistive element
wiped via a worm gear. Besides graphite, materials used to make the resistive element include
resistance wire, carbon particles in plastic, and a ceramic/metal mixture called cermets.
One form of rotary potentiometer is called a String potentiometer. It is a multi-turn
potentiometer operated by an attached reel of wire turning against a spring. It is used as a
position transducer.
In a linear slider pot, a sliding control is provided instead of a dial control. The resistive
element is a rectangular strip, not semi-circular as in a rotary potentiometer. Due to the large
opening slot or the wiper, this type of pot has a greater potential for getting contaminated.
64
Potentiometers can be obtained with either linear or logarithmic relations between the slider
position and the resistance (potentiometer laws or "tapers"). A letter code ("A" taper, "B"
taper, etc.) may be used to identify which taper is intended, but the letter code definitions are
variable over time and between manufacturers.
Manufacturers of conductive track potentiometers use conductive polymer resistor pastes that
contain hard wearing resins and polymers, solvents, lubricant and carbon – the constituent that
provides the conductive/resistive properties. The tracks are made by screen printing the paste
onto a paper based phenolic substrate and then curing it in an oven. The curing process
removes all solvents and allows the conductive polymer to polymerize and cross link. This
produces a durable track with stable electrical resistance throughout its working life.
Types of potentiometers:
PCB mount trimmer potentiometers, or "trim pots", intended for infrequent
adjustment.
1. Linear taper potentiometer:
A linear taper potentiometer has a resistive element of constant cross-section, resulting in a
device where the resistance between the contact (wiper) and one end terminal is proportional
65
to the distance between them. Linear taper describes the electrical characteristic of the device,
not the geometry of the resistive element. Linear taper potentiometers are used when an
approximately proportional relation is desired between shaft rotation and the division ratio of
the potentiometer; for example, controls used for adjusting the centering of (an analog)
cathode-ray oscilloscope.
2. Logarithmic potentiometer:
A logarithmic taper potentiometer has a resistive element that either 'tapers' in from one end to
the other, or is made from a material whose resistivity varies from one end to the other. This
results in a device where output voltage is a logarithmic function of the mechanical angle of
the pot.
Most (cheaper) "log" pots are actually not logarithmic, but use two regions of different
resistance (but constant resistivity) to approximate a logarithmic law. A log pot can also be
simulated with a linear pot and an external resistor. True log pots are significantly more
expensive.
Logarithmic taper potentiometers are often used in connection with audio amplifiers.
A high power wire wound potentiometer. Any potentiometer may be connected as a rheostat.
66
3. Rheostat:
The most common way to vary the resistance in a circuit is to use a variable resistor or a
rheostat. A rheostat is a two-terminal variable resistor. Often these are designed to handle
much higher voltage and current. Typically these are constructed as a resistive wire wrapped
to form a toroid coil with the wiper moving over the upper surface of the toroid, sliding from
one turn of the wire to the next. Sometimes a rheostat is made from resistance wire wound on
a heat-resisting cylinder with the slider made from a number of metal fingers that grip lightly
onto a small portion of the turns of resistance wire. The "fingers" can be moved along the coil
of resistance wire by a sliding knob thus changing the "tapping" point. They are usually used
as variable resistors rather than variable potential dividers.
Any three-terminal potentiometer can be used as a two-terminal variable resistor by not
connecting to the third terminal. It is common practice to connect the wiper terminal to the
unused end of the resistance track to reduce the amount of resistance variation caused by dirt
on the track.
4. Digital potentiometer:
A digital potentiometer is an electronic component that mimics the functions of analog
potentiometers. Through digital input signals, the resistance between two terminals can be
adjusted, just as in an analog potentiometer.
5. Membrane Potentiometer:
A membrane potentiometer uses a conductive membrane that is deformed by a sliding element
to contact a resistor voltage divider. Linearity can range from 0.5% to 5% depending on the
material, design and manufacturing process. The repeat accuracy is typically between 0.1mm
and 1.0mm with a theoretically infinite resolution. The service life of these types of
potentiometers is typically 1 million to 20 million cycles depending on the materials used
during manufacturing and the actuation method; contact and contactless (magnetic) methods
are available. Many different material variations are available such as PET(foil), FR4, and
67
Kapton. Membrane potentiometer manuafacturers offer linear, rotary, and application-specific
variations. The linear versions can range from 9mm to 1000mm in length and the rotary
versions range from 0° to 360°(multi-turn), with each having a height of 0.5mm. Membrane
potentiometers can be used for position sensing.
Applications of Potentiometer:
Potentiometers are widely used as user controls, and may control a very wide variety of
equipment functions. The widespread use of potentiometers in consumer electronics has
declined in the 1990s, with digital controls now more common. However they remain in many
applications, such as volume controls and as position sensors.
1. Audio control:
Linear potentiometers ("faders")
One of the most common uses for modern low-power potentiometers is as audio control
devices. Both linear pots (also known as "faders") and rotary potentiometers (commonly
called knobs) are regularly used to adjust loudness, frequency attenuation and other
characteristics of audio signals.
The 'log pot' is used as the volume control in audio amplifiers, where it is also called an "audio
taper pot", because the amplitude response of the human ear is also logarithmic. It ensures
that, on a volume control marked 0 to 10, for example, a setting of 5 sounds half as loud as a
68
setting of 10. There is also an anti-log pot or reverse audio taper which is simply the reverse of
a log pot. It is almost always used in a ganged configuration with a log pot, for instance, in an
audio balance control.
Potentiometers used in combination with filter networks act as tone controls or equalizers.
2. Television
Potentiometers were formerly used to control picture brightness, contrast, and color response.
A potentiometer was often used to adjust "vertical hold", which affected the synchronization
between the receiver's internal sweep circuit (sometimes a multi vibrator) and the received
picture signal.
3. Transducers
Potentiometers are also very widely used as a part of displacement transducers because of the
simplicity of construction and because they can give a large output signal.
4. Computation
In analog computers, high precision potentiometers are used to scale intermediate results by
desired constant factors, or to set initial conditions for a calculation. A motor-driven
potentiometer may be used as a function generator, using a non-linear resistance card to
supply approximations to trigonometric functions. For example, the shaft rotation might
represent an angle, and the voltage division ratio can be made proportional to the cosine of the
angle.
69
CHAPTER 4: PROJECT DESCRIPTION
4.1 schematic diagram of PIC16F72 microcontroller:
In this chapter, schematic diagram and interfacing of PIC16F72 microcontroller with
each module is considered.
70
Fig 4.1: schematic diagram of speaking microcontroller for deaf and dumb.
The above schematic diagram speaking microcontroller for deaf and dumb explains the
interfacing section of each component with micro controller and APR9600 voice module.
Crystal oscillator connected to 9th and 10th pins of micro controller, regulated power supply is
connected to micro controller and also the LED’s connecting to micro controller through
resistors.
The detailed explanation of each module interfacing with microcontroller is as follows:
4.2 Interfacing crystal oscillator and reset button with micro controller:
71
Fig:4.2 explains crystal oscillator and reset button which are connected to micro
controller. The two pins of oscillator are connected to the 9th and 10th pins of micro controller;
the purpose of external crystal oscillator is to speed up the execution part of instructions per
cycle and here the crystal oscillator having 20 MHz frequency. The 1st pin of the
microcontroller is referred as MCLR i.e., master clear pin or reset input pin is connected to
reset button or power-on-reset.
Fig 4.2: Crystal and reset button interfacing with PIC microcontroller
72
4.3 Interfacing APR 9600 voice module with micro controller
73
Fig 4.3: Diagram of APR9600 voice module interfacing with PIC microcontroller
74
4.4 LED interfacing with PIC16F72
LED stands for Light Emitting Diode and these are connected to micro controller through
resistors.
75
Fig 4.4: LED interfacing with PIC microcontroller
76
CHAPTER 5: SOFTWARE DESCRIPTION
This project is implemented using following software’s:
Express PCB – for designing circuit
PIC C compiler - for compilation part
Proteus 7 (Embedded C) – for simulation part
5.1 Express PCB:
Breadboards are great for prototyping equipment as it allows great flexibility to
modify a design when needed; however the final product of a project, ideally should have a
neat PCB, few cables, and survive a shake test. Not only is a proper PCB neater but it is also
more durable as there are no cables which can yank loose.
Express PCB is a software tool to design PCBs specifically for manufacture by
the company Express PCB (no other PCB maker accepts Express PCB files). It is very easy to
use, but it does have several limitations.
It can be likened to more of a toy then a professional CAD program.
It has a poor part library (which we can work around)
It cannot import or export files in different formats
77
It cannot be used to make prepare boards for DIY production
Express PCB has been used to design many PCBs (some layered and with
surface-mount parts. Print out PCB patterns and use the toner transfer method with an Etch
Resistant Pen to make boards. However, Express PCB does not have a nice print layout. Here
is the procedure to design in Express PCB and clean up the patterns so they print nicely.
5.1.1 Preparing Express PCB for First Use:
Express PCB comes with a less then exciting list of parts. So before any project
is started head over to Audio logic and grab the additional parts by morsel, ppl, and tangent,
and extract them into your Express PCB directory. At this point start the program and get
ready to setup the workspace to suit your style.
Click View -> Options. In this menu, setup the units for “mm” or “in” depending on
how you think, and click “see through the top copper layer” at the bottom. The standard color
scheme of red and green is generally used but it is not as pleasing as red and blue.
5.1.2 The Interface:
When a project is first started you will be greeted with a yellow outline. This yellow
outline is the dimension of the PCB. Typically after positioning of parts and traces, move them
to their final position and then crop the PCB to the correct size. However, in designing a board
with a certain size constraint, crop the PCB to the correct size before starting.
Fig: 4.1 show the toolbar in which the each button has the following functions:
Fig 5.1: Tool bar necessary for the interface
78
The select tool: It is fairly obvious what this does. It allows you to move and
manipulate parts. When this tool is selected the top toolbar will show buttons to move traces to
the top / bottom copper layer, and rotate buttons.
The zoom to selection tool: does just that.
The place pad: button allows you to place small soldier pads which are useful for board
connections or if a part is not in the part library but the part dimensions are available. When
this tool is selected the top toolbar will give you a large selection of round holes, square holes
and surface mount pads.
The place component: tool allows you to select a component from the top toolbar and
then by clicking in the workspace places that component in the orientation chosen using the
buttons next to the component list. The components can always be rotated afterwards with the
select tool if the orientation is wrong.
The place trace: tool allows you to place a solid trace on the board of varying
thicknesses. The top toolbar allows you to select the top or bottom layer to place the trace on.
The Insert Corner in trace: button does exactly what it says. When this tool is selected,
clicking on a trace will insert a corner which can be moved to route around components and
other traces.
The remove a trace button is not very important since the delete key will achieve the
same result.
5.1.3 Design Considerations:
Before starting a project there are several ways to design a PCB and one must
be chosen to suit the project’s needs.
Single sided, or double sided:
79
When making a PCB you have the option of making a single sided board, or a
double sided board. Single sided boards are cheaper to produce and easier to etch, but much
harder to design for large projects. If a lot of parts are being used in a small space it may be
difficult to make a single sided board without jumpiring over traces with a cable. While
there’s technically nothing wrong with this, it should be avoided if the signal travelling over
the traces is sensitive (e.g. audio signals).
A double sided board is more expensive to produce professionally, more
difficult to etch on a DIY board, but makes the layout of components a lot smaller and easier.
It should be noted that if a trace is running on the top layer, check with the components to
make sure you can get to its pins with a soldering iron. Large capacitors, relays, and similar
parts which don’t have axial leads can NOT have traces on top unless boards are plated
professionally.
Ground-plane or other special purposes for one side:
When using a double sided board you must consider which traces should be on
what side of the board. Generally, put power traces on the top of the board, jumping only to
the bottom if a part cannot be soldiered onto the top plane (like a relay), and vice- versa.
Some projects like power supplies or amps can benefit from having a solid
plane to use for ground. In power supplies this can reduce noise, and in amps it minimizes the
distance between parts and their ground connections, and keeps the ground signal as simple as
possible. However, care must be taken with stubborn chips such as the TPA6120 amplifier
from TI. The TPA6120 datasheet specifies not to run a ground plane under the pins or signal
traces of this chip as the capacitance generated could effect performance negatively.
5.2 PIC Compiler:
PIC compiler is software used where the machine language code is written and
compiled. After compilation, the machine source code is converted into hex code which is to
80
be dumped into the microcontroller for further processing. PIC compiler also supports C
language code.
It’s important that you know C language for microcontroller which is
commonly known as Embedded C. As we are going to use PIC Compiler, hence we also call it
PIC C. The PCB, PCM, and PCH are separate compilers. PCB is for 12-bit opcodes, PCM is
for 14-bitopcodes, and PCH is for 16-bit opcode PIC microcontrollers. Due to many
similarities, all three compilers are covered in this reference manual. Features and limitations
that apply to only specific microcontrollers are indicated within. These compilers are
specifically designed to meet the unique needs of the PIC microcontroller. This allows
developers to quickly design applications software in a more readable, high-level language.
When compared to a more traditional C compiler, PCB, PCM, and PCH have some
limitations. As an example of the limitations, function recursion is not allowed.
This is due to the fact that the PIC has no stack to push variables onto, and also
because of the way the compilers optimize the code. The compilers can efficiently implement
normal C constructs, input/output operations, and bit twiddling operations. All normal C data
types are supported along with pointers to constant arrays, fixed point decimal, and arrays of
bits.
PIC C is not much different from a normal C program. If you know assembly,
writing a C program is not a crisis. In PIC, we will have a main function, in which all your
application specific work will be defined. In case of embedded C, you do not have any
operating system running in there. So you have to make sure that your program or main file
should never exit. This can be done with the help of simple while (1) or for (;;) loop as they
are going to run infinitely.
We have to add header file for controller you are using, otherwise you will not
be able to access registers related to #include <16F72.h> // header file for PIC 16F72//
81
5.3 Program Code:
The program code which is dumped in the microcontroller of our project is shown below.
#include <16f72.h>
#include <APR9600.h>
#use delay (clock=20M)
void main()
{
int final;
output_high(PIN_C2);
delay_ms(1000);
82
output_low(PIN_C2);
delay_ms(1000);
output_high(PIN_C2);
delay_ms(1000);
output_low(PIN_C2);
delay_ms(1000);
play_voice(1); //Play Intro voice message
while(1)
{
final = Read_ADC(); //read POT setting
83
final = final/55; //devide ADC value into 4 equal parts (Max ADC value is 255 for 8bit
ADC)
if (final == 0)
{
output_high(pin_C2);
if(!input(pin_C0))
{
play_voice(2);
}
}
else if (final == 1)
{
output_high(pin_C3);
if(!input(pin_C0))
{
play_voice(3);
}
84
}
else if (final == 2)
{
output_high(pin_C4);
if(!input(pin_C0))
{
play_voice(4);
}
}
else if (final == 3)
{
output_high(pin_C5);
if(!input(pin_C0))
{
play_voice(5);
}
}
85
else if (final == 4)
{
output_high(pin_C6);
if(!input(pin_C0))
{
play_voice(6);
}
}
delay_ms(500);
output_low(pin_C3);
output_low(pin_C4);
output_low(pin_C5);
output_low(pin_C6);
output_low(pin_C2);
}
}
86
CHAPTER 6: ADVANTAGES AND DISADVANTAGES
Advantages:
1. Can store upto eight alerts in voice circuit.
2. Dynamic user input.
3. Storage of alerts in non volatile memory.
4. Efficient and low cost design.
5. Low power consumption.
Disadvantages:
Recording of alert messages should be done in noise free environment.
87
Applications:
This system can be practically implemented in real time to express the basic
needs of deaf and dumb people.
CHAPTER 7: RESULTS
7.1 Result:
88
The project “speaking microcontroller for deaf and dumb” is designed such
that the It provides help for the deaf and dumb people to announce their requirements using
voice module APR9600.
7.2 Conclusion:
Integrating features of all the hardware components used have been developed
in it. Presence of every module has been reasoned out and placed carefully, thus contributing
to the best working of the unit. Secondly, using highly advanced IC’s with the help of
growing technology, the project has been successfully implemented. Thus the project has been
successfully designed and tested.
7.3 Future Scope:
Our project “Speaking Micro Controller for deaf and dumb” is mainly intended
to help the deaf and dumb people in expressing their basic needs through voice message
system. This project uses a voice circuit in which the alert messages for basic needs will be
stored, which is interfaced to the micro controller. The micro controller is programmed in such
a way that when the person presses a button the alert message specified for that button will be
announced.
This project can be extended using high efficient voice circuit, which comes
with option of recording more alert messages. We can record the voices in the mobile phone
and can fulfill their needs and requirements and make a user-friendly interaction with other
people using a mobile phone. This device helps the deaf and dumb people to announce their
requirements. It is highly sensitive and reliable for the dumb people and it is also very easy to
operate it. This saves the time to understand each other and ease in communication.
REFERENCES:
89
The sites which were used while doing this project:
1. www.wikipedia.com
2. www.allaboutcircuits.com
3. www.microchip.com
4. www.howstuffworks.com
Books referred:
1. Raj kamal –Microcontrollers Architecture, Programming, Interfacing and System
Design.
2. Mazidi and Mazidi –Embedded Systems.
3. PCB Design Tutorial –David.L.Jones.
4. PIC Microcontroller Manual – Microchip.
5. APR9600 VoiceModule- Murata.
6. Embedded C –Michael.J.Pont.
90