You are on page 1of 77

MOBILE SNIFFER CUM JAMMER

WITH ALERTING SYSTEM

A Dissertation Submitted to
P.E.S COLLEGE OF ENGINEERING, MANDYA
(An Autonomous Institution under Visvesvaraya Technological University, Belgaum)

In partial fulfillment of the requirement


for the award of the Degree

BACHELOR OF ENGINEERING
IN ELECTRONICS AND COMMUNICATION ENGINEERING

Submitted by
V. LALROTLUANGA [USN 4PS05EC055]
LALTANPUIA [USN 4PS07EC024]
L.T.L. FELA KHIANGTE [USN 4PS08EC027]
LALSAWMLIANI [USN 4PS08EC028]

Under the guidance of


Dr. K.N.MURALIDHARA B.E, M.E, Ph.D
Professor and Head of Department

Dept of Electronics and Communication Engineering


P.E.S College of Engineering, Mandya-571401,KARNATAKA.

2011-2012
P.E.S COLLEGE OF ENGINEERING
MANDYA-571401
(An Autonomous Institution Affiliated to VTU,
Belgaum)
DEPARTMENT OF ELECTRONICS AND
COMMUNICATION ENGINEERING

CERTIFICATE
This is to certify that

V. LALROTLUANGA 4PS05EC055
LALTANPUIA 4PS07EC024
L.T.L. FELA KHIANGTE 4PS08EC027
LALSAWMLIANI FANCHUN 4PS08EC028
have satisfactorily completed the dissertation work entitled Mobile Sniffer cum Jammer
with alerting system in partial fulfillment for the award of degree of Bachelor of
Engineering in Electronics and Communication Engineering of P.E.S. College of
Engineering, Mandya, Visvesvaraya Technological University, Belgaum during the year
2011-2012.It is certified that all corrections/suggestions indicated in internal assessment have
been incorporated in the report deposited in the Library. The Project has been approved as it
satisfies the academic requirements in respect of project work prescribed for the degree in
Bachelor of Engineering.

Dr. K.N. Muralidhara Dr.V.SRIDHAR


Guide, Professor and Head Principal
Department of E & C Engineering P.E.S College of Engineering
P.E.S College of Engineering Mandya
Mandya

Project Work Viva Voce Examination


Sl.No. Examiners Date
Name Signature
1.
2.
ACKNOWLEDGEMENT

It gives immense satisfaction and great pride to present our project report on Mobile
Sniffer cum Jammer with alerting system. At this point of time, we would like to
express our heartfelt gratitude to the person who helped make this a success.

First and foremost, we would like to thank God our Father, for the strength and guide
He bestowed upon us.

We sincerely thank our guide, Dr K.N. Muralidhara, Head of the Department of


the Electronics and Communication Engineering, Department, PESCE, for providing
us assistance, continued support and valuable information during the course.

We express sincere thanks to Dr. V. Sridhar, Principal P.E.S. College of Engineering,


Mandya for providing excellent and technically sound environment.

We also would like to thank our parents and friends for their support and motivation.

V. Lalrotluanga
Laltanpuia
L.T.L. Fela Khiangte
Lalsawmliani Fanchun

I
SYNOPSIS

Mobile jammer is used to prevent mobile phones from receiving or transmitting signals
with the base stations. Mobile jammers effectively disable mobile phones within the
defined regulated zones without causing any interference to other communication means.
Mobile jammers can be used in practically any location, but are used in places where a
phone call would be particularly disruptive like Temples, Libraries, Hospitals, Cinema
halls, schools and colleges etc.

As with other radio jamming, mobile jammers block mobile phone use by sending out
radio waves along the same frequencies that mobile phones use. This causes enough
interference with the communication between mobile phones and communicating towers
to render the phones unusable. Upon activating mobile jammers, all mobile phones will
indicate "NO NETWORK". Incoming calls are blocked as if the mobile phone were off.
When the mobile jammers are turned off, all mobile phones will automatically re-
establish communications and provide full service.

Mobile Jammers were originally developed for law enforcement and the military to
interrupt communications by criminals and terrorists to foil the use of certain remotely
detonated explosives. The civilian applications were apparent with growing public
resentment over usage of mobile phones in public areas on the rise & reckless invasion of
privacy. Over time many companies originally contracted to design mobile jammers for
government switched over to sell these devices to private entities.

In this project, we are controlling this mobile jammer by means of a microcontroller. The
activation and deactivation time schedules can be programmed with microcontroller. This
project uses regulated 5V, 500mA power supply. Unregulated 12V DC is used for relay.
7805 three terminal voltage regulator is used for voltage regulation. Bridge type full wave
rectifier is used to rectify the ac output of secondary of 230/12V step down transformer.

II
Contents page no.

Chapter 1 Introduction 1

1.1 Introduction 1
1.2 Introduction to Project 1
1.3 Organization of the report 2

Chapter 2 Mobile Sniffer 5


2.1 Introduction to Mobile Sniffer 5
2.2 RF level from mobile phones 5
2.3 Mobile Detector circuit 6
2.4 Conclusions 8

Chapter 3 GSM Modem 9

3.1 Introduction to GSM 9


3.2 Product concept 11
3.3 Conclusions 12

Chapter 4 Microcontroller and LCD 13

4.1 Introduction to Microcontroller 13


4.1.1 Description 13
4.1.2 Block diagram of Microcontroller 17
4.1.3 Pin details 18
4.1.4 Basic Registers 21
4.1.5 Central Processing Unit 23
4.1.6 Timers/Counters 23
4.1.7 Serial Ports 24
4.2 Introduction to LCD 25
4.2.1 Handling the EN control line 25
4.2.2 Checking the busy status of the LCD 26
4.2.3 Initializing the LCD 27
4.2.4 Clearing the display 27
4.2.5 Writing text to the LCD 28
4.2.6 Cursor positioning 28
4.3 Conclusions 29

III
Chapter 5 Relay and Switch 30

5.1 Introduction to Relay 30


5.1.1 Construction for Relay 30
5.1.2 Applications of Relay 31
5.2 Switch 32
5.3 Conclusions 33

Chapter 6 Cell phone jamming device 34

6.1 Introduction to Jamming device 34


6.2 Mini portable jammer 35
6.3 Cell phone jamming basics 35
6.4 Cell phone jamming device 36
6.5 Inside the Cell phone jammer 37
6.5.1 Antenna 37
6.5.2 Circuitry 37
6.5.3 Power Supply 37
6.6 Applications of Cell phone jammer 38
6.7 Design Features 39
6.8 Conclusions 39

Chapter 7 Keil and Flash Magic Software 40

7.1 Introduction to Keil Software 40


7.2 Programs 41
7.2.1 LCD code 41
7.2.2 Main code 45
7.2.3 Serial Communication code 54
7.3 Evaluation of Keil Software 57
7.4 Introduction to Flash Magic 60
7.5 Features 62
7.6 Applications 63

Chapter 8 Results 64

Bibliography 65

Appendix 66
IV
Mobile Sniffer cum Jammer with alerting system

Chapter 1
INTRODUCTION

1.1 Introduction
Cell phones are everywhere these days. According to the Cellular Telecommunications
and Internet Association, almost 195 million people in the United States had cell-phone
service in October 2005. And cell phones are even more ubiquitous in Europe.

It's great to be able to call anyone at any time. Unfortunately, restaurants, movie theaters,
concerts, shopping malls and churches all suffer from the spread of cell phones because
not all cell-phone users know when to stop talking. Who hasn't seethed through one side
of a conversation about an incredibly personal situation as the talker shares intimate
details with his friend as well as everyone else in the area.

While most of the people just grumble and move on, some people are actually going to
extremes to retaliate. Cell phones are basically handheld two-way radios. And like any
radio, the signal can be disrupted, or jammed.

1.2 Introduction to Project

In this project the mobile signal which is existing in the covered area of the antenna, is
caught by the mobile sniffer and the mobile jammer than jams the signal after the mobile
sniffer sends high signal to the GSM modem and then to the jammer. The process will be
explain in details in the following chapters.

The rapid proliferation of cell phones at the beginning of the 21st century to near
ubiquitous status eventually raised problems, such as their potential use to invade privacy
or contribute to academic cheating. While older analog cell phones often suffered from
poor reception and could even be disconnected by simple interference such as high
frequency noise, increasingly sophisticated digital phones have led to more elaborate
counters. Cell phone jamming devices are an alternative to more expensive measures
against cell phones, such as Faraday cages. They were originally developed for law
enforcement and the military to interrupt communications by criminals and terrorists.
Some were also designed to foil the use of certain remotely detonated explosives. The
civilian applications were apparent, so over time many companies originally contracted to
design jammers for government use switched over to sell these devices to private entities.

E&C Dept. P.E.S.C.E. 1


Mobile Sniffer cum Jammer with alerting system

Since then, there has been a slow but steady increase in their purchase and use, especially
in major metropolitan areas.
The whole working process will be explained in brief in this part of the report. First
consider the block diagram of the whole process as given below.

Fig. 1.1: Block diagram of Mobile Sniffer cum Jammer

1.3 Organization of the report

Chapter 2 describes about the Sniffer or the mobile detector is crucial part of the whole
system, without which the project is useless. The Sniffer detects the mobile signal
appearing inside its range, and sends a signal to the Microcontroller on detecting it,
through port p1.0 of the microcontroller. The Sniffer consists of,

i. An antenna to detect the signal, which is connected with two 22F ceramic
capacitors which makes it act like an inductor.
ii. When signal is detected than a small current is send through the 0.22F capacitor
which is used for charging and discharging process. Than this capacitor on
discharging sends the small signal current to the CA3130 operational amplifier,
where the low signal is converted a high current signal.
iii. The output from the CA3130 op-amp is than again pass through the BC 547
transistor which is interconnected with resistance to make the signal much
stronger, than after making a much higher current signal than it pass the signal to
the microcontroller.

E&C Dept. P.E.S.C.E. 2


Mobile Sniffer cum Jammer with alerting system

Chapter 3 provides the description for the GSM Modem. Upon receiving the signal from
the mobile sniffer the microcontroller automatically sends signal to the GSM modem
which is connected through port P3.0 and port P3.1 which are the RxD and TxD ports
respectively. The GSM than sends sms message to the master cell phone which is
registered in the flash memory of the microcontroller alerting that the sniffer has detected
a cell phone signal inside its range. The GSM modem is itself a cell phone and consist of
all the part that is contained in an ordinary cell phone.

Chapter 4 describes the Microcontroller and the LCD. The Microcontroller is the heart
of the whole system. The microcontroller used here is AT89S52. All the parts and
components of the circuit are interconnected with the microcontroller. It is in the
microcontroller where the coding is stored. A programmer writes a program to run the
system in Keil Software using some assembly language or some other language, in this
project C-programming is used due to its universality and versatility. After the program is
done it is converted to a hexadecimal file by Flash Magic software, which is then burned
to the Microcontroller. The microcontroller is also connected to a tank circuit, which
generates 12 MHz frequency which is needed by the microcontroller.

The LCD is connected from the power supply through the reset button and a capacitor to
control the functions of the LCD. The LCD displays the state of the circuit, in which state
it is, whether it is performing a task etc. For example while the starting it displays
Connecting System.

Chapter 5 is about the Relay. After the GSM modem alerts the master cell phone, the
microcontroller than turns on the Relay which is connected to port P2.0 of the
microcontroller. A relay is an electrically operated switch which allows switching from
one circuit to another circuit leaving the first circuit. As mentioned earlier the Relay
operates on 12v current because the coil of the relay passes relatively large current. Than
at this project the relay switch the process from the above mentioned processes to the
Jammer circuit. In other words the Relay is used to turn on the Jammer. The Relay
consist of,

i. From the microcontroller port two or three resistors are connected which is
interconnected to the LED lamp, to display the flow of the current.
ii. Than it is connected to two BC 547 transistors which are connected in Darlington
connections to get high collector gain.

E&C Dept. P.E.S.C.E. 3


Mobile Sniffer cum Jammer with alerting system

iii. The 12v current is then made to pass through the coil of the relay through its pin 1
and the other side of the coil i.e. pin 2 is grounded. Across these two pins a diode
is connected.
iv. At pin 3 lies the jockey of the relay and pin 5 is normally closed. When current is
passed through the relay the normally closed pin 5 is open and the normally open
pin 4 is than closed, thus switching the process to the Jammer.

Chapter 6 explains the Jammer in details. The Jammer is another crucial part of the
project at the end part of the process of the project. The Jammer as its name suggest jams
the signal of the detected signal and other signals appearing in its range. The circuit of
such devices are predefined and manufactured by some designated companies and makes
it impossible for common man to explain or work with the circuit definitions.

Chapter 7 is of the Result and Conclusions. The Result gives the working results of the
whole project and the Conclusions briefs the what the system working and applications.

After these chapters, the Reference, Appendix and Datasheets follows the reports.

E&C Dept. P.E.S.C.E. 4


Mobile Sniffer cum Jammer with alerting system

Chapter 2
MOBILE SNIFFER

2.1 Introduction to Mobile Sniffer


The soul purpose of the circuit/sniffer/detector is to detect unauthorized use of Mobile
phones in restricted areas such as examination halls, confidential rooms, Mobile banned
areas etc. The circuit can detect the RF radiation from the Mobile phone (even in the
silent mode) which is used to detect the phone use. It detects incoming. Outgoing calls,
SMS, Video, Snapping etc. There is RF radiations in the atmosphere due the operation of
many electronic devices, Radio and Telecommunication devices. The RF level may
change if a communication system generates very high frequency RF signals during its
operation. The circuit can compare the normal RF in the room as well as the strong RF
emitted by the Mobile phone.

2.2 RF level from Mobile phone


Mobile phone uses 2.5 GHz RF signals in the Microwave range for two way
communications. The GHz signals are very strong which can go through the air without
any disturbance. If GHz signals come in the air, it will supersede all other low frequency
RF available. So it is easy to detect the variation in the RF levels in the room in the
normal state as well as during mobile activation.
Mobile phone uses RF with a wavelength of 30cm at 872 to 2170 MHz. That is the signal
is high frequency with huge energy. When the mobile phone is active, it transmits the
signal in the form of sine wave which passes through the space. The encoded audio/video
signal contains electromagnetic radiation which is picked up by the receiver in the base
station. Mobile phone system is referred to as Cellular Telephone system because the
coverage area is divided into cells each of which has a base station. The transmitter
power of the modern 2G antenna in the base station is 20-100 watts.

When a GSM (Global System of Mobile communication) digital phone is transmitting,


the signal is time shared with 7 other users. That is at any one second, each of the 8 users
on the same frequency is allotted 1/8 of the time and the signal is reconstituted by the
receiver to form the speech. Peak power output of a mobile phone corresponds to 2 watts
with an average of 250 milli watts of continuous power. Each handset with in a cell is

E&C Dept. P.E.S.C.E. 5


Mobile Sniffer cum Jammer with alerting system

allotted a particular frequency for its use. The mobile phone transmits short signals at
regular intervals to register its availability to the nearest base station. The network data
base stores the information transmitted by the mobile phone. If the mobile phone moves
from one cell to another, it will keep the connection with the base station having strongest
transmission. Mobile phone always tries to make connection with the available base
station. That is why, the back light of the phone turns on intermittently while traveling.
This will cause severe battery drain. So in long journeys, battery will flat with in a few
hours.

AM Radio uses frequencies between 180 kHz and 1.6 MHz .FM radio uses 88 to 180
MHz .TV uses 470 to 854 MHz .Waves at higher frequencies but within the RF region is
called Micro waves.

2.3 Mobile Detector Circuit

Fig. 2.1: Mobile detector


This small mobile transmission detector can sense the presence of an activated mobile
phone from a distance of one meter. So it can be used to prevent use of mobile phones in
examination halls, confidential rooms, etc. It is also useful for detecting the use of mobile
phone for spying and unauthorised video transmission. The circuit can detect both the
incoming and outgoing calls, SMS and video transmission even if the mobile phone is
kept in the silent mode. The moment the bug detects RF transmission signal from an
activated mobile phone, it starts sounding a beep alarm and the LED blinks. The alarm
continues until the signal transmission ceases. An ordinary RF detector using tuned LC
circuits is not suitable for detecting signals in the GHz frequency band used in mobile

E&C Dept. P.E.S.C.E. 6


Mobile Sniffer cum Jammer with alerting system

phones. The transmission frequency of mobile phones ranges from 0.9 to 3 GHz with a
wavelength of 3.3 to 10 cm. So a circuit detecting gigahertz signals is required for a
mobile bug. Here the circuit uses a 0.22F disk capacitor (C3) to capture the RF signals
from the mobile phone. The lead length of the capacitor is fixed as 18 mm with a spacing
of 8 mm between the leads to get the desired frequency. The disk capacitor along with the
leads acts as a small gigahertz loop antenna to collect the RF signals from the mobile
phone. Op-amp IC CA3130 (IC1) is used in the circuit as a current-to-voltage converter
with capacitor C3 connected between its inverting and non-inverting inputs. It is a CMOS
version using gate-protected p-channel MOSFET transistors in the input to provide very
high input impedance, very low input current and very high speed of performance. The
output CMOS transistor is capable of swinging the output voltage to within 10 mV of
either supply voltage terminal. Capacitor C3 in conjunction with the lead inductance acts
as a transmission line that intercepts the signals from the mobile phone. This capacitor
creates a field, stores energy and transfers the stored energy in the form of minute current
to the inputs of IC1. This will upset the balanced input of IC1 and convert the current into
the corresponding output voltage. Capacitor C4 along with high-value resistor R1 keeps
the non-inverting input stable for easy swing of the output to high state. Resistor R2
provides the discharge path for capacitor C4. Feedback resistor R3 makes the inverting
input high when the output becomes high. Capacitor C5 (47pF) is connected across
strobe (pin 8) and null inputs (pin 1) of IC1 for phase compensation and gain control
to optimise the frequency response. When the mobile phone signal is detected by C3, the
output of IC1 becomes high and low alternately according to the frequency of the signal
as indicated by LED1. This triggers monostable timer IC2 through capacitor C7.
Capacitor C6 maintains the base bias of transistor T1 for fast switching action. The low-
value timing components R6 and C9 produce very short time delay to avoid audio
nuisance. Assemble the circuit on a general purpose PCB as compact as possible and
enclose in a small box like junk mobile case. As mentioned earlier, capacitor C3 should
have a lead length of 18 mm with lead spacing of 8 mm. carefully solder the capacitor in
standing position with equal spacing of the leads. The response can be optimised by
trimming the lead length of C3 for the desired frequency. You may use a short telescopic
type antenna. Use the miniature 12V battery of a remote control and a small buzzer to
make the gadget pocket-size. The unit will give the warning indication if someone uses
mobile phone within a radius of 1.5 metres.

E&C Dept. P.E.S.C.E. 7


Mobile Sniffer cum Jammer with alerting system

2.4 Conclusions
In this chapter we have discussed about how the mobile detector detects the mobile signal
which exists around its range. The working of the Mobile Sniffer has been explained in
details along with the detector circuit diagrams and necessary information. In the next
chapter we will be discussing about the GSM Modem, how it works and send message to
the master cell phone after the mobile sniffer detects mobile signals.

E&C Dept. P.E.S.C.E. 8


Mobile Sniffer cum Jammer with alerting system

Chapter 3
GSM MODEM

3.1 Introduction to GSM


A GSM modem is a specialized type of modem which accepts a SIM card, and operates
over a subscription to a mobile operator, just like a mobile phone. From the mobile
operator perspective, a GSM modem looks just like a mobile phone.
When a GSM modem is connected to a computer, this allows the computer to use the
GSM modem to communicate over the mobile network. While these GSM modems are
most frequently used to provide mobile internet connectivity, many of them can also be
used for sending and receiving SMS and MMS messages.

A GSM modem can be a dedicated modem device with a serial, USB or Bluetooth
connection, or it can be a mobile phone that provides GSM modem capabilities.
A GSM modem exposes an interface that allows applications such as Now SMS to send
and receive messages over the modem interface. The mobile operator charges for this
message sending and receiving as if it was performed directly on a mobile phone. To
perform these tasks, a GSM modem must support an extended AT command set for
sending/receiving SMS messages, as defined in the ETSI GSM 07.05 and and 3GPP TS
27.005 specifications. A GSM modem can be a dedicated modem device with a serial,
USB or Bluetooth connection, such as the Falcom Samba 75 used in this document.
(Other manufacturers of dedicated GSM modem devices include Wavecom, Multitech
and iTegno.) To begin, insert a GSM SIM card into the modem and connect it to an
available USB port on your computer. A GSM modem could also be a standard GSM
mobile phone with the appropriate cable and software driver to connect to a serial port or
USB port on your computer. Any phone that supports the extended AT command set
for sending/receiving SMS messages, as defined in ETSI GSM 07.05 and/or 3GPP TS
27.005, can be supported by the Now SMS & MMS Gateway. Note that not all mobile
phones support this modem interface.

E&C Dept. P.E.S.C.E. 9


Mobile Sniffer cum Jammer with alerting system

Fig. 3.1: GSM modem

Due to some compatibility issues that can exist with mobile phones, using a dedicated
GSM modem is usually preferable to a GSM mobile phone. This is more of an issue with
MMS messaging, where if you wish to be able to receive inbound MMS messages with
the gateway, the modem interface on most GSM phones will only allow you to send
MMS messages. This is because the mobile phone automatically processes received
MMS message notifications without forwarding them via the modem interface.
It should also be noted that not all phones support the modem interface for sending and
receiving SMS messages. In particular, most smart phones, including Blackberries,
iPhone, and Windows Mobile devices, do not support this GSM modem interface for
sending and receiving SMS messages at all at all. Additionally, Nokia phones that use the
S60 (Series 60) interface, which is Symbian based, only support sending SMS messages
via the modem interface, and do not support receiving SMS via the modem interface.

This document describes the hardware interface of the SIMCOM SIM300 module that
connects to the specific application and the air interface. As SIM300 can be integrated
with a wide range of applications, all functional components of SIM300 are described in
great detail.
This document can help you quickly understand SIM300 interface specifications,
electrical and mechanical details. With the help of this document and other SIM300
application notes, user guide, you can use SIM300 module to design and set-up mobile
applications quickly.

E&C Dept. P.E.S.C.E. 10


Mobile Sniffer cum Jammer with alerting system

3.2 Product concept


Designed for global market, SIM300 is a Tri-band GSM/GPRS engine that works on
frequencies EGSM 900 MHz, DCS 1800 MHz and PCS1900 MHz SIM300 provides
GPRS multi-slot class 10 capabilities and support the GPRS coding schemes CS-1, CS-2,
CS-3 and CS-4.
With a tiny configuration of 40mm x 33mm x 2.85 mm, SIM300 can fit almost all the
space requirement in your application, such as Smart phone, PDA phone and other
mobile device.
The physical interface to the mobile application is made through a 60 pins board-to-board
connector, which provides all hardware interfaces between the module and customers
boards except the RF antenna interface.

i. The keypad and SPI LCD interface will give you the flexibility to develop
customized applications.
ii. Two serial ports can help you easily develop your applications.
iii. Two audio channels include two microphones inputs and two speaker outputs.
This can be easily configured by AT command.

SIM300 provide RF antenna interface with two alternatives: antenna connector and
antenna pad. The antenna connector is MURATA MM9329-2700. And customers
antenna can be soldered to the antenna pad.
The SIM300 is designed with power saving technique, the current consumption to as low
as 2.5mA in SLEEP mode.
The SIM300 is integrated with the TCP/IP protocolExtended TCP/IP AT commands
are developed for customers to use the TCP/IP protocol easily, which is very useful for
those data transfer applications.

E&C Dept. P.E.S.C.E. 11


Mobile Sniffer cum Jammer with alerting system

3.3 Conclusions
We have progressed to the working of the GSM Modem and roughly completed the
working and functions of it. How it works as a modem and that it is actually a mobile
phone itself and has all the components posses by the mobile phone. In the coming up
chapter we will be discussing how this chapter and the former chapter are interfaced with
the microcontroller, thus the next chapter deals with the Microcontroller and the LCD.

E&C Dept. P.E.S.C.E. 12


Mobile Sniffer cum Jammer with alerting system

Chapter 4

MICROCONTROLLER AND LCD


4.1 Introduction to Microcontroller

Microcontroller utilize in this project is Microcontroller AT89S52. A microcontroller is a


general purpose device that is mean to read data perform limited calculations on that data
and control its environment based on those calculations. The prime use of a
microcontroller is to control the operation of a machine using a fixed program that is
stored in ROM and that does not change over the life time of the system.

The design of a microcontroller incorporates all the features found in a


microprocessor CPU: ALU, PC, SP and registers. It also has added the other features
needed to make a computer: ROM, RAM, parallel I/O, serial I/O, counters and a clock
circuit.

4.1.1 Description:

The Philips microcontrollers described in this data sheet are high-performance static
80C51 designs. They are manufactured in an advanced CMOS process and contain a non-
volatile Flash program memory. They support both 12-clock and 6-clock operation. The
P89C51X2 and P89C52X2/54X2/58X2 contain 128 byte RAM and 256 byte RAM
respectively, 32 I/O lines, three 16-bit counter/timers, a six-source, four-priority level
nested interrupt structure, a serial I/O port for either multi-processor communications, I/O
expansion or full duplex UART, and on-chip oscillator and clock circuits. In addition, the
devices are static designs which offer a wide range of operating frequencies down to
zero. Two software selectable modes of power reduction idle mode and power-down
mode are available. The idle mode freezes the CPU while allowing the RAM, timers,
serial port, and interrupt system to continue functioning. The power-down mode saves the
RAM contents but freezes the oscillator, causing all other chip functions to be in
operative. Since the design is static, the clock can be stopped without loss of user data.
Then the execution can be resumed from the point the clock was stopped.

E&C Dept. P.E.S.C.E. 13


Mobile Sniffer cum Jammer with alerting system

Fig. 4.1: Microcontroller circuit diagram

The P89C51 is an 80C51 microcontroller with 64 kB Flash and 1024 bytes of data RAM.
A key feature of the P89C51 is its X2 mode option. The design engineer can choose to
run the application with the conventional 80C51 clock rate (12 clocks per machine cycle)
or select the X2 mode (6 clocks per machine cycle) to achieve twice the throughput at the
same clock frequency. Another way to benefit from this feature is to keep the same
performance by reducing the clock frequency by half, thus dramatically reducing the
EMI.

The Flash program memory supports both parallel programming and in serial In-
System Programming (ISP). Parallel programming mode offers gang-programming at

E&C Dept. P.E.S.C.E. 14


Mobile Sniffer cum Jammer with alerting system

high speed, reducing programming costs and time to market. ISP allows a device to be
reprogrammed in the end product under software control. The capability to field/update
the application

FEATURES

i. P89C51 Central Processing Unit

4 Kbytes Flash (P89C51X2)

8 Kbytes Flash (P89C52X2)

16 Kbytes Flash (P89C54X2)

32 Kbytes Flash (P89C58X2)

128 byte RAM (P89C51X2)

256 byte RAM (P89C52/54X2/58X2)

Boolean processor

ii. Memory addressing capability - Up to 64 Kbytes ROM and 64 Kbytes


RAM
iii. Power control modes
Clock can be stopped and resumed
Idle mode
Power-down mode
iv. Two speed ranges
0 to 20 MHz with 6-clock operation
0 to 33 MHz with 12-clock operation
v. LQFP, PLCC or DIP package
vi. Extended temperature ranges
vii. Dual Data Pointers
viii. Three security bits
ix. Four interrupt priority levels
x. Six interrupt sources
xi. Four 8-bit I/O ports

E&C Dept. P.E.S.C.E. 15


Mobile Sniffer cum Jammer with alerting system

xii. Full-duplex enhanced UART


xiii. Framing error detection
xiv. Automatic address recognition
xv. Three 16-bit timers/counters T0, T1 (standard 80C51) and additional T2
(capture and compare)
xvi. Programmable clock-out pin
xvii. Asynchronous port reset
xviii. Low EMI (inhibit ALE, slew rate controlled outputs, and 6- clock mode
xix. Wake-up from Power Down by an external interrupt

E&C Dept. P.E.S.C.E. 16


Mobile Sniffer cum Jammer with alerting system

4.1.2 Block diagram of the Microcontroller AT89S52

Fig. 4.2: Block diagram of a microcontroller AT89S52

E&C Dept. P.E.S.C.E. 17


Mobile Sniffer cum Jammer with alerting system

4.1.3 Pin Details

Fig. 4.3: Pin diagram

The pin diagram shown in fig 4.3 it consists of the following pins.

ALE / PROG: Address Latch Enable output pulse for latching the low byte of the
address during accesses to external memory. ALE is emitted at a constant rate of 1/6 of
the oscillator frequency, for external timing or clocking purposes, even when there are no
accesses to external memory. (However, one ALE pulse is skipped during each access to
external Data Memory.) This pin is also the program pulse input (PROG) during EPROM
programming.

PSEN : Program Store Enable is the read strobe to external Program Memory. When
the device is executing out of external Program Memory, PSEN is activated twice each
machine cycle (except that two PSEN activations are skipped during accesses to external
Data Memory). PSEN is not activated when the device is executing out of internal
Program Memory.

E&C Dept. P.E.S.C.E. 18


Mobile Sniffer cum Jammer with alerting system

EA/VPP: When EA is held high the CPU executes out of internal Program Memory
(unless the Program Counter exceeds 0FFFH in the 80C51). Holding EA low forces the
CPU to execute out of external memory regardless of the Program Counter value. In the
80C31, EA must be externally wired low. In the EPROM devices, this pin also receives
the programming supply voltage (VPP) during EPROM programming.

XTAL1: Input to the inverting oscillator amplifier.

XTAL2: Output from the inverting oscillator amplifier.

The 8051s I/O port structure is extremely versatile and flexible. The device has 32 I/O
pins configured as four eight bit parallel ports (P0, P1, P2 and P3). Each pin can be used
as an input or as an output under the software control. These I/O pins can be accessed
directly by memory instructions during program execution to get required flexibility.

Port 0: Port 0 is an 8-bit open drain bidirectional port. As an open drain output port, it
can sink eight LS TTL loads. Port 0 pins that have 1s written to them float, and in that
state will function as high impedance inputs. Port 0 is also the multiplexed low-order
address and data bus during accesses to external memory.

Port 1: Port 1 is an 8-bit bidirectional I/O port with internal pullups. Port 1 pins that have
1s written to them are pulled high by the internal pullups, and in that state can be used as
inputs. As inputs, port 1 pins that are externally being pulled low will source current
because of the internal pullups.

Port 2: Port 2 is an 8-bit bidirectional I/O port with internal pullups. Port 2 emits the
high-order address byte during accesses to external memory that use 16-bit addresses.

Port 3: Port 3 is an 8-bit bidirectional I/O port with internal pull-ups. It also serves the
functions of various special features of the 80C51 Family as follows:

Port Pin Alternate Function

P3.0- RxD (serial input port)

P3.1 -TxD (serial output port)

P3.2 -INT0 (external interrupt 0)

E&C Dept. P.E.S.C.E. 19


Mobile Sniffer cum Jammer with alerting system

P3.3- INT1 (external interrupt 1)

P3.4 -T0 (timer 0 external input)

P3.5 -T1 (timer 1 external input)

P3.6 -WR (external data memory write strobe)

P3.7 -RD (external data memory read strobe)

VCC: -Supply voltage

VSS: -Circuit ground potential

All four ports in the 80C51 are bidirectional. Each consists of a latch (Special Function
Registers P0 through P3), an output driver, and an input buffer. All the Port 3 pins are
multifunctional. They are not only port pins, but also serve the functions of various
special features as listed below:

Port Pin Alternate Function

P3.0 RxD (serial input port)

P3.1 TxD (serial output port)

P3.2 INT0 (external interrupt)

P3.3 INT1 (external interrupt)

P3.4 T0 (Timer/Counter 0 external input)

P3.5 T1 (Timer/Counter 1 external input)

P3.6 WR (external Data Memory write strobe)

P3.7 RD (external Data Memory read strobe)

MEMORY ORGANISATION

The alternate functions can only be activated if the corresponding bit latch in the port
SFR contains a 1. Otherwise the port pin remains at 0.All 80C51 devices have separate
address spaces for program and data memory, as shown in Figures 1 and 2. The logical

E&C Dept. P.E.S.C.E. 20


Mobile Sniffer cum Jammer with alerting system

separation of program and data memory allows the data memory to be accessed by 8-bit
addresses, which can be quickly stored and manipulated by an 8-bit CPU. Nevertheless,
16-bit data memory addresses can also be generated through the DPTR register.

Program memory (ROM, EPROM) can only be read, not written to. There can be up to
64k bytes of program memory. In the 80C51, the lowest 4k bytes of program are on-chip.
In the ROM less versions, all program memory is external. The read strobe for external
program memory is the PSEN (program store enable). Data Memory (RAM) occupies a
separate address space from Program Memory. In the 80C51, the lowest 128 bytes of data
memory are on-chip. Up to 64k bytes of external RAM can be addressed in the external
Data Memory space. In the ROMless version, the lowest 128 bytes are on-chip. The CPU
generates read and write signals, RD and WR, as needed during external Data Memory
accesses.

External Program Memory and external Data Memory may be combined if desired by
applying the RD and PSEN signals to the inputs of an AND gate and using the output of
the gate as the read strobe to the external Program/Data memory.

4.1.4 Basic Registers

A number of P89C51 registers can be considered "basic." Very little can be done without
them and a detailed explanation of each one is warranted to make sure the reader
understands these registers before getting into more complicated areas of development.

The Accumulator if you've worked with any other assembly language you will be
familiar with the concept of an accumulator register.

The Accumulator, as its name suggests, is used as a general register to accumulate the
results of a large number of instructions. It can hold an 8-bit (1-byte) value and is the
most versatile register the 8051 has due to the sheer number of instructions that make use
of the accumulator. More than half of the 8051's 255 instructions manipulate or use the
Accumulator in some way. For example, if you want to add the number 10 and 20, the
resulting 30 will be stored in the Accumulator. Once you have a value in the Accumulator
you may continue processing the value or you may store it in another register or in
memory.

E&C Dept. P.E.S.C.E. 21


Mobile Sniffer cum Jammer with alerting system

The "R" Registers are sets of eight registers that are named R0, R1, through R7. These
registers are used as auxiliary registers in many operations. To continue with the above
example, perhaps you are adding 10 and 20. The original number 10 may be stored in the
Accumulator whereas the value 20 may be stored in, say, register R4.

The "B" register is very similar to the Accumulator in the sense that it may hold an 8-bit
(1-byte) value. The "B" register is only used implicitly by two 8052 instructions: MUL
AB and DIV AB. Thus, if you want to quickly and easily multiply or divide A by another
number, you may store the other number in "B" and make use of these two instructions.

The Program Counter is special in that there is no way to directly modify its value. That
is to say, you can't do something like PC=2430h. On the other hand, if you execute LJMP
2430h you've effectively accomplished the same thing.

The Data Pointer (DPTR) is the 8052s only user-accessible 16-bit (2-byte) register. The
Accumulator, "R" registers, and "B" register are all 1-byte values. The PC just described
is a 16-bit value but isn't directly user-accessible as a working register.

DPTR, as the name suggests, is used to point to data. It is used by a number of commands
that allow the 8051 to access external memory. When the 8051 accesses external memory
it accesses the memory at the address indicated by DPTR.

While DPTR is most often used to point to data in external memory or code memory,
many developers take advantage of the fact that it's the only true 16-bit register available.
It is often used to store 2-byte values that have nothing to do with memory locations.

The Stack Pointer, like all registers except DPTR and PC, may hold an 8-bit (1-byte)
value. The Stack Pointer is used to indicate where the next value to be removed from the
stack should be taken from.

This order of operation is important. When the 8051 is initialized SP will be initialized to
07h. If you immediately push a value onto the stack, the value will be stored in Internal
RAM address 08h. This makes sense taking into account what was mentioned two
paragraphs above: First the 8051 will increment the value of SP (from 07h to 08h) and
then will store the pushed value at that memory address (08h).

E&C Dept. P.E.S.C.E. 22


Mobile Sniffer cum Jammer with alerting system

4.1.5 Central Processing Unit

The CPU is the brain of the microcontrollers reading users programs and executing the
expected task as per instructions stored there in. Its primary elements are an 8 bit
Arithmetic Logic Unit (ALU ) , Accumulator (Acc ) , few more 8 bit registers , B
register, Stack Pointer (SP ) , Program Status Word (PSW) and 16 bit registers, Program
Counter (PC) and Data Pointer Register (DPTR).

The ALU (Acc) performs arithmetic and logic functions on 8 bit input variables.
Arithmetic operations include basic addition, subtraction, and multiplication and division.
Logical operations are AND, OR, Exclusive OR as well as rotate, clear, complement and
etc. Apart from all the above, ALU is responsible in conditional branching decisions, and
provides a temporary place in data transfer operations within the device.

B-register is mainly used in multiply and divides operations. During execution, B register
either keeps one of the two inputs or then retains a portion of the result. For other
instructions, it can be used as another general purpose register.

Program Status Word (PSW) keeps the current status of the ALU in different bits. Stack
Pointer (SP) is an 8 bit register. This pointer keeps track of memory space where the
important register information is stored when the program flow gets into executing a
subroutine. The stack portion may be placed in anywhere in the on-chip RAM. But
normally SP is initialized to 07H after a device reset and grows up from the location 08H.
The Stack Pointer is automatically incremented or decremented for all PUSH or POP
instructions and for all subroutine calls and returns.

Program Counter (PC) is the 16 bit register giving address of next instruction to be
executed during program execution and it always points to the Program Memory space.
Data Pointer (DPTR) is another 16 bit addressing register that can be used to fetch any 8
bit data from the data memory space. When it is not being used for this purpose, it can be
used as two eight bit registers.

4.1.6 Timers/Counters

P89C51 has two 16 bit Timers/Counters capable of working in different modes. Each
consists of a High byte and a Low byte which can be accessed under software. There

E&C Dept. P.E.S.C.E. 23


Mobile Sniffer cum Jammer with alerting system

is a mode control register and a control register to configure these timers/counters in


number of ways.

These timers can be used to measure time intervals, determine pulse widths or initiate
events with one microsecond resolution up to a maximum of 65 millisecond
(corresponding to 65, 536 counts). Use software to get longer delays. Working as
counter, they can accumulate occurrences of external events (from DC to 500 KHz) with
16 bit precision.

4.1.7 Serial Ports

Each 8051 microcontroller contains a high speed full duplex (means you can
simultaneously use the same port for both transmitting and receiving purposes) serial port
which is software configurable in 4 basic modes: 8 bit UART; 9 bit UART; Inter
processor Communications link or as shift register I/O expander.

For the standard serial communication facility, AT89S52 can be programmed for UART
operations and can be connected with regular personal computers, teletype writers,
modem at data rates between 122 bauds and 31 kilo bauds. Getting this facility is made
very simple using simple routines with option to elect even or odd parity. You can also
establish a kind of Inter processor communication facility among many microcomputers
in a distributed environment with automatic recognition of address/data. Apart from all
above, you can also get super fast I/O lines using low cost simple TTL or CMOS shift
registers.

E&C Dept. P.E.S.C.E. 24


Mobile Sniffer cum Jammer with alerting system

4.2 Introduction to LCD

A liquid crystal display (LCD) is a flat


panel display, electronic visual display,
or video display that uses the light
modulating properties of liquid
crystals (LCs). LCs do not emit light
directly.

LCDs are used in a wide range of


applications, including computer
monitors, television, instrument
panels, aircraft cockpit displays, signage,
etc. They are common in consumer devices
such as video players, gaming
devices, clocks, watches, calculators,
and telephones. LCDs have
replaced cathode ray tube (CRT) displays Fig. 4.4: LCD pin details
in most applications. They are available in a
wider range of screen sizes than CRT and plasma displays, and since they do not use
phosphors, they cannot suffer image burn-in. LCDs are, however, susceptible to image
persistence.

The LCD is more energy efficient and offers safer disposal than a CRT. Its low electrical
power consumption enables it to be used in battery-powered electronic equipment. It is
an electronically modulated optical device made up of any number of segments filled
with liquid crystals and arrayed in front of a light source (backlight) or reflector to
produce images in color or monochrome. The most flexible ones use an array of
small pixels. The earliest discovery leading to the development of LCD technology, the
discovery of liquid crystals, dates from 1888. By 2008, worldwide sales of televisions
with LCD screens had surpassed the sale of CRT units.

4.2.1 Handling the EN Control Line

As we mentioned above, the EN line is used to tell the LCD that you are ready for it to
execute an instruction that you've prepared on the data bus and on the other control lines.

E&C Dept. P.E.S.C.E. 25


Mobile Sniffer cum Jammer with alerting system

Note that the EN line must be raised/lowered before/after each instruction sent to the
LCD regardless of whether that instruction is read or write, text or instruction. In short,
you must always manipulate EN when communicating with the LCD. EN is the LCD's
way of knowing that you are talking to it. If you don't raise/lower EN, the LCD doesn't
know you're talking to it on the other lines.

Thus, before we interact in any way with the LCD we will always bring the EN line low
and once we've finished setting up our instruction with the other control lines and data
bus lines, we'll always bring this line high:

The line must be left high for the amount of time required by the LCD as specified in its
datasheet. This is normally on the order of about 250 nanoseconds, but check the
datasheet. In the case of a typical 8051 running at 12 MHz, an instruction requires 1.08
microseconds to execute so the EN line can be brought low the very next instruction.
However, faster microcontrollers (such as the DS89C420 which executes an instruction
in 90 nanoseconds given an 11.0592 MHz crystal) will require a number of NOPs to
create a delay while EN is held high. The number of NOPs that must be inserted depends
on the microcontroller you are using and the crystal you have selected. .

4.2.2 Checking the busy status of the LCD

As previously mentioned, it takes a certain amount of time for each instruction to be


executed by the LCD. The delay varies depending on the frequency of the crystal
attached to the oscillator input of the 44780 as well as the instruction which is being
executed.

While it is possible to write code that waits for a specific amount of time to allow the
LCD to execute instructions, this method of "waiting" is not very flexible. If the crystal
frequency is changed, the software will need to be modified. Additionally, if the LCD
itself is changed for another LCD which, although 44780 compatible, requires more time
to perform its operations, the program will not work until it is properly modified.

A more robust method of programming is to use the "Get LCD Status" command to
determine whether the LCD is still busy executing the last instruction received.

The "Get LCD Status" command will return to us two tidbits of information; the
information that is useful to us right now is found in DB7. In summary, when we issue

E&C Dept. P.E.S.C.E. 26


Mobile Sniffer cum Jammer with alerting system

the "Get LCD Status" command the LCD will immediately raise DB7 if it's still busy
executing a command or lower DB7 to indicate that the LCD is no longer occupied. Thus
our program can query the LCD until DB7 goes low, indicating the LCD is no longer
busy. At that point we are free to continue and send the next command.

Since we will use this code every time we send an instruction to the LCD, it is useful to
make it a subroutine. Let's write the code:

Thus, our standard practice will be to send an instruction to the LCD and then call our
WAIT_LCD routine to wait until the instruction is completely executed by the LCD. This
will assure that our program gives the LCD the time it needs to execute instructions and
also makes our program compatible with any LCD, regardless of how fast or slow it is.

4.2.3 Initializing the LCD

Before you may really use the LCD, you must initialize and configure it. This is
accomplished by sending a number of initialization instructions to the LCD.

The first instruction we send must tell the LCD whether we'll be communicating with it
with an 8-bit or 4-bit data bus. We also select a 5x8 dot character font. These two options
are selected by sending the command 38h to the LCD as a command. As you will recall
from the last section, we mentioned that the RS line must be low if we are sending a
command to the LCD. Thus, to send this 38h command to the LCD we must execute the
following 8051 instructions:

We've now sent the first byte of the initialization sequence. The second byte of the
initialization sequence is the instruction 0Eh. Thus we must repeat the initialization code
from above, but now with the instruction.

The last byte we need to send is used to configure additional operational parameters of
the LCD. We must send the value 06h.Having executed this code the LCD will be fully
initialized and ready for us to send display data to it.

4.2.4 Clearing the Display

When the LCD is first initialized, the screen should automatically be cleared by the
44780 controller. However, it's always a good idea to do things yourself so that you can

E&C Dept. P.E.S.C.E. 27


Mobile Sniffer cum Jammer with alerting system

be completely sure that the display is the way you want it. Thus, it's not a bad idea to
clear the screen as the very first operation after the LCD has been initialized.

An LCD command exists to accomplish this function. Not surprisingly, it is the command
01h. Since clearing the screen is a function we very likely will wish to call more than
once, it's a good idea to make it a subroutine:

4.2.5 Writing text to the LCD

The WRITE_TEXT routine that we just wrote will send the character in the accumulator
to the LCD which will, in turn, display it. Thus to display text on the LCD all we need to
do is load the accumulator with the byte to display and make a call to this routine.

4.2.6 Cursor positioning

The above "Hello World" program is simplistic in the sense that it prints its text in the
upper left-hand corner of the screen. However, what if we wanted to display the word
"Hello" in the upper left-hand corner but wanted to display the word "World" on the
second line at the tenth character? This sounds simple--and actually, it is simple.
However, it requires a little more understanding of the design of the LCD.

The 44780 contains a certain amount of memory which is assigned to the display. All the
text we write to the 44780 is stored in this memory, and the 44780 subsequently reads
this memory to display the text on the LCD itself. This memory can be represented with
the following "memory map":

Fig. 4.5: Cursor positioning


In the above memory map, the area shaded in blue is the visible display. As you can see,
it measures 16 characters per line by 2 lines. The numbers in each box is the memory
address that corresponds to that screen position.

Thus, the first character in the upper left-hand corner is at address 00h. The following
character position (character #2 on the first line) is address 01h, etc. This continues until
we reach the 16th character of the first line which is at address 0Fh.

E&C Dept. P.E.S.C.E. 28


Mobile Sniffer cum Jammer with alerting system

However, the first character of line 2, as shown in the memory map, is at address 40h.
This means if we write a character to the last position of the first line and then write a
second character, the second character will not appear on the second line. That is because
the second character will effectively be written to address 10h--but the second line begins
at address 40h.

The LCD display Module is built in a LSI controller, the controller has two 8-bit
registers, an instruction register (IR) and a data register (DR).

The IR stores instruction codes, such as display clear and cursor shift, and address
information for display data RAM (DDRAM) and character generator (CGRAM). The IR
can only be written from the MPU. The DR temporarily stores data to be written or read
from DDRAM or CGRAM. When address information is written into the IR, then data is
stored into the DR from DDRAM or CGRAM. By the register selector (RS) signal, these
two registers can be selected.

Busy Flag (BF) : When the busy flag is 1, the controller LSI is in the internal operation
mode and the next instruction will not be accepted. When RS=0 and R/W=1, the busy
flag is output to DB7. The next instruction must be written after ensuring that the busy
flag is 0.

Address Counter (AC)

The address counter (AC) assigns addresses to both DDRAM and CGRAM

Display Data RAM (DDRAM)

This DDRAM is used to store the display data represented in 8-bit character codes.

4.3 Conclusions
The interfacing of the Microcontroller and the functions of the LCD have been well
covered in this chapter along with all the block diagrams, pin details and definitions and
tables. The port connections for all the components have also been mentioned and
explained. In the next chapter we will continue to explain the Relay and Switches how
they function in turning on the circuit or some other components of the circuits.

E&C Dept. P.E.S.C.E. 29


Mobile Sniffer cum Jammer with alerting system

Chapter 5
RELAYS AND SWITCH

5.1 Introduction to Relays


A relay is a simple electromechanical switch made up of an electromagnet and a set of
contacts. Relays are found hidden in all sorts of devices. In fact, some of the first
computers ever built used relays to implement Boolean gates.

In this article, we will look at how relays work and a few of their applications.

5.1.1 Construction of Relay

Fig. 5.1: Relay circuit diagram

Relays are amazingly simple devices. There are four parts in every relay:

i. Electromagnet

ii. Armature that can be attracted by the electromagnet

iii. Spring

iv. Set of electrical contacts

E&C Dept. P.E.S.C.E. 30


Mobile Sniffer cum Jammer with alerting system

The following figure shows these four parts in action:

In this fig 5.1, you can see that a relay consists of two separate and completely
independent circuits. The first is at the bottom and drives the electromagnet. In this
circuit, a switch is controlling power to the electromagnet. When the switch is on, the
electromagnet is on, and it attracts the armature (blue). The armature is acting as a switch
in the second circuit. When the electromagnet is energized, the armature completes the
second circuit and the light is on. When the electromagnet is not energized, the spring
pulls the armature away and the circuit is not complete. In that case, the light is dark.

When you purchase relays, you generally have control over several variables:

i. The voltage and current that is needed to activate the armature

ii. The maximum voltage and current that can run through the armature and the
armature contacts

iii. The number of armatures (generally one or two)

iv. The number of contacts for the armature (generally one or two -- the relay shown
here has two, one of which is unused)

v. Whether the contact (if only one contact is provided) is normally open (NO)
or normally closed (NC)

5.1.2 Applications of Relay

In general, the point of a relay is to use a small amount of power in the electromagnet --
coming, say, from a small dashboard switch or a low-power electronic circuit -- to move
an armature that is able to switch a much larger amount of power. For example, you
might want the electromagnet to energize using 5 volts and 50 milliamps (250 milli
watts), while the armature can support 120V AC at 2 amps (240 watts).

Relays are quite common in home appliances where there is an electronic control turning
on something like a motor or a light. They are also common in cars, where the 12V
supply voltage means that just about everything needs a large amount of current. In later
model cars, manufacturers have started combining relay panels into the fuse box to make
maintenance easier. For example, the six gray boxes in this photo of a Ford Windstar fuse
box are all relays: In places where a large amount of power needs to be switched, relays

E&C Dept. P.E.S.C.E. 31


Mobile Sniffer cum Jammer with alerting system

are often cascaded. In this case, a small relay switches the power needed to drive a much
larger relay, and that second relay switches the power to drive the load. Relays can also
be used to implement Boolean logic. See How Boolean Logic Works for more
information.

5.2 Switch

In electronics, a switch is an electronic electronics, a switch is an electrical component


that can break an electrical circuit, interrupting the current or diverting it from one
conductor to another. The most familiar form of switch is a manually operated
electromechanical device with one or more sets of electrical contacts.

Each set of contacts can be in one of two states: either 'closed' meaning the contacts are
touching and electricity can flow between them, or 'open', meaning the contacts are
separated and non-conducting. In this at the time of switch pressed (supply applied) the
voltage across resister 8.2Kohms is VCC as capacitor is short circuit. And this switch is
connected to LEDs by using microcontroller program. When we release the switch the
capacitor get charges to VCC.

Internal Circuit of a Manual Switch:

Fig. 5.2: Switch

E&C Dept. P.E.S.C.E. 32


Mobile Sniffer cum Jammer with alerting system

5.3 Conclusions

The functions and working of the Relay and switches have been well brief out in this
chapter along with the constructions, applications and other information. It can now be
easily known that these relay and switches are both for turning on or switching devices
just that the relay is operated electrically and the switch manually which are well
mentioned. The next chapter deals with the Jammer which is turned on by the Relay and
which is one main part of the project.

E&C Dept. P.E.S.C.E. 33


Mobile Sniffer cum Jammer with alerting system

Chapter 6

CELL PHONE JAMMING DEVICE

6.1 Introduction to Jamming Device

Jamming devices overpower the cell phone by transmitting a signal on the same
frequency and at a high enough power that the two signals collide and cancel each other
out. Cell phones are designed to add power if they experience low-level interference, so
the Jammer must recognize and match the power increase from the phone.

Cell phones are full-duplex devices, which means they use two separate frequencies, one
for talking and one for listening simultaneously. Some jammers block only one of the
frequencies used by cell phones, which has the effect of blocking both. The phone is
tricked into thinking there is no service because it can receive only one of the
frequencies.

Less complex devices block only one group of frequencies, while sophisticated jammers
can block several types of networks at once to head off dual-mode or tri-mode phones
that automatically switch among different network types to find an open signal. Some of
the high-end devices block all frequencies at once, and others can be tuned to specific
frequencies.

To jam a cell phone, all you need is a device that broadcasts on the correct frequencies.
Although different cellular systems process signals differently, all cell-phone networks
use radio signals that can be interrupted. GSM, used in digital cellular and PCS-based
systems, operates in the 900-MHz and 1800-MHz bands in Europe and Asia and in the
1900-MHz (sometimes referred to as 1.9-GHz) band in the United States. Jammers can
broadcast on any frequency and are effective against AMPS, CDMA, TDMA, GSM,
PCS, DCS, iDEN and Nextel systems. Old-fashioned analog cell phones and today's
digital devices are equally susceptible to jamming.

The actual range of the Jammer depends on its power and the local environment, which
may include hills or walls of a building that block the jamming signal. Low-powered
jammers block calls in a range of about 30 feet (9 m). Higher-powered units create a cell-
free zone as large as a football field. Units used by law enforcement can shut down
service up to 1 mile (1.6 km) from the device.

E&C Dept. P.E.S.C.E. 34


Mobile Sniffer cum Jammer with alerting system

6.2 Mini Portable Jammer

Cell phones are everywhere these days. According to the Cellular Telecommunications
and Internet Association, almost 195 million people in the United States had cell-phone
service in October 2005. And cell phones are even more ubiquitous in Europe.

It's great to be able to call anyone at anytime. Unfortunately, restaurants, movie theaters,
concerts, shopping malls and churches all suffer from the spread of cell phones because
not all cell-phone users know when to stop talking. Who hasn't seethed through one side
of a conversation about an incredibly personal situation as the talker shares intimate
details with his friend as well as everyone else in the area?

While most of us just grumble and move on, some people are actually going to extremes
to retaliate. Cell phones are basically handheld two-way radios. And like any radio, the
signal can be disrupted, or jammed.

In this article, you'll see how cell-phone jammers work and learn about the legality of
their use.

6.3 Cell Phone Jamming Basics


Disrupting a cell phone is the same as jamming any other type of radio communication.
A cell phone works by communicating with its service network through a cell tower or
base station. Cell towers divide a
city into small areas, or cells. As
a cell-phone user drives down
the street, the signal is handed
from tower to tower. A jamming
device transmits on the same
radio frequencies as the cell
phone, disrupting the
communication between the
phone and the cell-phone base
station in the tower.
Fig. 6.1: Jamming basics
It's a called a denial-of-service

E&C Dept. P.E.S.C.E. 35


Mobile Sniffer cum Jammer with alerting system

attack. The jammer denies service of the radio spectrum to the cell-phone users within
range of the jamming device.

6.4 Cell Phone Jamming Device


Jamming devices overpower the cell phone by transmitting a signal on the same
frequency and at a high enough power that the two signals collide and cancel each other
out. Cell phones are designed to add power if they experience low-level interference, so
the jammer must recognize and match the power increase from the phone.

Cell phones are full-duplex devices, which means they use two separate frequencies, one
for talking and one for listening simultaneously. Some jammers block only one of the
frequencies used by cell phones, which has the effect of blocking both. The phone is
tricked into thinking there is no service because it can receive only one of the
frequencies.

Less complex devices block only one group of frequencies, while sophisticated jammers
can block several types of networks at once to head off dual-mode or tri-mode phones
that automatically switch among different network types to find an open signal. Some of
the high-end devices block all frequencies at once, and others can be tuned to specific
frequencies.

To jam a cell phone, all you need is a device that broadcasts on the correct frequencies.
Although different cellular systems process signals differently, all cell-phone networks
use radio signals that can be interrupted. GSM, used in digital cellular and PCS-based
systems, operates in the 900-MHz and 1800-MHz bands in Europe and Asia and in the
1900-MHz (sometimes referred to as 1.9-GHz) band in the United States. Jammers can
broadcast on any frequency and are effective against AMPS, CDMA, TDMA, GSM,
PCS, DCS, iDEN and Nextel systems. Old-fashioned analog cell phones and today's
digital devices are equally susceptible to jamming.

The actual range of the jammer depends on its power and the local environment, which
may include hills or walls of a building that block the jamming signal. Low-powered
jammers block calls in a range of about 30 feet (9 m). Higher-powered units create a cell-
free zone as large as a football field. Units used by law enforcement can shut down
service up to 1 mile (1.6 km) from the device.

E&C Dept. P.E.S.C.E. 36


Mobile Sniffer cum Jammer with alerting system

6.5 Inside Cell Phone Jammers


Electronically speaking, cell-phone jammers are very basic devices. The simplest just
have an on/off switch and a light that indicates it's on. More complex devices have
switches to activate jamming at different frequencies. Components of a jammer include:

6.5.1 Antenna
Every jamming device has an antenna to send the signal. Some are contained within an
electrical cabinet. On stronger devices, antennas are external to provide longer range and
may be tuned for individual frequencies.

6.5.2 Circuitry
The main electronic components of a jammer are:

i. Voltage-controlled oscillator - Generates the radio signal that will interfere with
the cell phone signal
ii. Tuning circuit - Controls the frequency at which the jammer broadcasts its signal
by sending a particular voltage to the oscillator
iii. Noise generator - Produces random electronic output in a specified frequency
range to jam the cell-phone network signal (part of the tuning circuit)
iv. RF amplification (gain stage) - Boosts the power of the radio frequency output to
high enough levels to jam a signal

6.5.3 Power supply


Smaller jamming devices are battery operated. Some look like cell phone and use cell-
phone batteries. Stronger devices can be plugged into a standard outlet or wired into a
vehicle's electrical system.

Check your phone - If the battery on your phone is okay, and you'd like to continue your
conversation, try walking away from the area. You may be able to get out of the jammer's
range with just a few steps.

E&C Dept. P.E.S.C.E. 37


Mobile Sniffer cum Jammer with alerting system

6.6 Cell Phone Jammer Applications


Cell phone jamming devices were originally developed for law enforcement and the
military to interrupt communications by criminals and terrorists. The bombs that blew up
commuter trains in Spain in March 2004, as well as blasts in Bali in October 2002 and
Jakarta in August 2003, all relied on cell phones to trigger explosives. It has been widely
reported that a cell-phone jammer thwarted an assassination attempt on Pakistani
President Musharraf in December 2003. When President Bush visited London in
November 2004, it was reported that British police considered using jammers to protect
the president's motorcade through London.

During a hostage situation, police can control when and where a captor can make a phone
call. Police can block phone calls during a drug raid so suspects can't communicate
outside the area. Cell-phone jammers can be used in areas where radio transmissions are
dangerous, (areas with a potentially explosive atmosphere), such as chemical storage
facilities or grain elevators. The TRJ-89 jammer from Antenna System & Supplies Inc.
carries its own electrical generator and can block cellular communications in a 5-mile (8-
km) radius.

Corporations use jammers to stop corporate espionage by blocking voice transmissions


and photo transmissions from camera phones. On the more questionable end of the
legitimacy spectrum, there are rumors that hotel chains install jammers to block guests'
cell-phone usage and force them to use in-room phones at high rates.

E&C Dept. P.E.S.C.E. 38


Mobile Sniffer cum Jammer with alerting system

6.7 Design Features

1. Jamming range:2 8 meters(>=-75dbm)Shielding


2. Internal Insulated Antenna.
3. Looks like a Mobile Phone. Very Slim and Sleek.
4. Battery can be replaced easily by hand, just like mobile phones.
5. Battery can be charged with Nokia charger (Big Pin type).
6. High and Superior Quality Design.
7. Low Heat Generation. So it can be easily hidden in the pocket.
8. Continuous operation.
9. Weight: 68 Grams
10.The Jammer may not be effective when used outdoors.

6.8 Conclusions
As seen and read in this chapter it can be known that the jammer is one crucial part of the
circuit. The equipment used, jamming basics, structure, application and designs are well
specified and studied. Though the range of the jammer used in this project is small as it is
just a pocket jammer as mentioned, it must be known that there are large scale jammer
which can jam long range of kilometers, take for example TRJ89 can jam 8 kms. In the
next chapter we will be discussing how the program for the project is written in Keil and
how it is burned into the microcontroller using the Flash Magic software.

E&C Dept. P.E.S.C.E. 39


Mobile Sniffer cum Jammer with alerting system

Chapter 7

KEIL AND FLASH MAGIC SOFTWARE

7.1 Introduction to Keil software


It is the Simulator/Debugger. The simulator/ debugger in KEIL can perform a very
detailed simulation of a micro controller along with external signals. It is possible to view
the precise execution time of a single assembly instruction, or a single line of C code, all
the way up to the entire application, simply by entering the crystal frequency. A window
can be opened for each peripheral on the device, showing the state of the peripheral. This
enables quick trouble shooting of mis-configured peripherals. Breakpoints may be set on
either assembly instructions or lines of C code, and execution may be stepped through
one instruction or C line at a time. The contents of all the memory areas may be viewed
along with ability to find specific variables. In addition the registers may be viewed
allowing a detailed view of what the microcontroller is doing at any point in time.

The Keil Software 8051 development tools listed below are the programs you use to
compile your C code, assemble your assembler source files, link your program together,
create HEX files, and debug your target program. Vision2 for Windows Integrated
Development Environment: combines Project Management, Source Code Editing, and
Program Debugging in one powerful environment.

i. C51 ANSI Optimizing C Cross Compiler: creates relocatable object modules from
your C source code,
ii. A51 Macro Assembler: creates relocatable object modules from your
8051 assembler source code,
iii. BL51 Linker/Locator: combines relocatable object modules created by the
compiler and assembler into the final absolute object module,
iv. LIB51 Library Manager: combines object modules into a library, which may be
used by the linker,
v. OH51 Object-HEX Converter: creates Intel HEX files from absolute object
modules.

E&C Dept. P.E.S.C.E. 40


Mobile Sniffer cum Jammer with alerting system

7.2 Programs

7.2.1 LCD codes


C-program :
#include "LCD.h"

static void LCDEnable(void)


{
LCDEnablePin = HIGH;
Delay(2);
LCDEnablePin = LOW;
}

void LCDWriteCommand(LCDubyte LCDData)


{
LCDRegisterSelectPin = LOW;
LCDWriteByte(LCDData);
}

void LCDWriteData(LCDubyte LCDData)


{
LCDRegisterSelectPin = HIGH;
LCDWriteByte(LCDData);
}

void LCDWriteString(LCDubyte *lcd_string)


{
while (*lcd_string)
{
LCDWriteData(*lcd_string++);
}
}

void LCDInitialize(void)

E&C Dept. P.E.S.C.E. 41


Mobile Sniffer cum Jammer with alerting system

{
LCDEnablePin = OUTPUTPIN;
LCDRegisterSelectPin = OUTPUTPIN;
LCDDataPort &= 0x0f;
LCDReset();
LCDWriteCommand(0x28);
LCDWriteCommand(0x0C);
LCDWriteCommand(0x06);
LCDWriteCommand(0x01);
}
static void LCDReset(void)
{

LCDWriteCommand(0x33);

LCDWriteCommand(0x33);

LCDWriteCommand(0x32);
}
void LCDDisplayInitializing(void)
{

LCDubyte i;

LCDWriteString("INITIALIZING....");

LCDRow2();

for(i = 0 ; i < 16; i++)

LCDWriteData(46); // ascii value of '.' in decimanl

E&C Dept. P.E.S.C.E. 42


Mobile Sniffer cum Jammer with alerting system

Delay(100);
}

}
static void LCDWriteByte(LCDubyte LCDData)
{
LCDDataPort = (LCDDataPort & 0x0F)|(LCDData & 0xF0);
LCDEnable();
LCDDataPort = (LCDDataPort & 0x0F)|(LCDData << 4);
LCDEnable();
Delay(2);
}
void LCDDisplayByte(LCDubyte LCDAdress, LCDubyte Value)
{
LCDWriteCommand(LCDAdress);
if(( Value / 100 ) == 0)
LCDWriteData(0x20); //put space
else
LCDWriteData((Value / 100) | 0x30);

if(((Value % 100) / 10) == 0)


if(( Value / 100 ) == 0)
LCDWriteData(0x20);
else
LCDWriteData(((Value % 100) / 10) | 0x30);
else
LCDWriteData(((Value % 100) / 10) | 0x30);

LCDWriteData((Value % 10) | 0x30);


}

Hexadecimal converted code :


#ifndef LCD_H

E&C Dept. P.E.S.C.E. 43


Mobile Sniffer cum Jammer with alerting system

#define LCD_H
//INCLUDES
#include <at89x51.h>
#include "delay.h"

//DEFINE CONSTANT
#define LOW 0
#define HIGH1
#define OUTPUTPIN 0

//DEFINES PORT/PINS
#define LCDEnablePin P2_3
#define LCDRegisterSelectPin P2_2
#define LCDDataPort P2

//DEFINE MACROS
#define LCDClear() LCDWriteCommand(0x01) /* Clear display LCD */
#define LCDRow1() LCDWriteCommand(0x80) /* Begin at Line 1 */
#define LCDRow2() LCDWriteCommand(0xC0) /* Begin at Line 2 */

//USERDEFINE DATA TYPES


typedef unsigned char LCDubyte;

//DEFINE PROTOTYPES
static void LCDEnable(void);
void LCDWriteCommand(LCDubyte command);
void LCDWriteData(LCDubyte ascii);
void LCDWriteString(LCDubyte *lcd_string);
static void LCDWriteByte(LCDubyte LCDData);
void LCDInitialize(void);
void LCDDisplayInitializing(void);
void LCDDisplayByte(LCDubyte LCDAdress, LCDubyte Value);
static void LCDReset(void);

E&C Dept. P.E.S.C.E. 44


Mobile Sniffer cum Jammer with alerting system

#endif
7.2.2 Main code
C-program :
//INCLUDE MAIN HEADER FILE
#include"main.h"

//DATA IN CODE MEMORY


code ATCommand[3] = {'A','T',0x0D};
code SMSCode[10] = {'A','T','+','C','M','G','F','=','1',0x0D};
code SMSNumber[10] = {'A','T','+','C','M','G','S','=','"','0'};

//GLOABL VARIABLES
unsigned char PhoneNumber1[5] = {'9','9','8','6','2'};
unsigned char PhoneNumber2[7] = {'5','7','3','5','3','"',0x0D};

unsigned char PhoneNumber3[5] = {'9','8','4','4','3'};


unsigned char PhoneNumber4[7] = {'1','5','3','2','0','"',0x0D};

//unsigned char PhoneNumber3[5] = {'7','8','2','9','4'};


//unsigned char PhoneNumber4[7] = {'2','9','0','2','6','"',0x0D};

bit GSMCommunication = 0;

//MAIN PROGRAM BEGINS


void main(void)
{
unsigned char SMS = ENABLE;

MainSystemInitialize();
MainDisplayTitle();

for(;;)
{

E&C Dept. P.E.S.C.E. 45


Mobile Sniffer cum Jammer with alerting system

if(PHONE == DETECTED)
{
Delay(200);
if(PHONE == DETECTED){

Delay(100);
if(PHONE == DETECTED)
{
LCDClear();
LCDWriteString("PHONE DETECTED!");
Delay(1000);
LCDClear();
LCDWriteString("ACTIVATING ");
LCDWriteCommand(0xc8);
LCDWriteString("JAMMER");
RelayOn();
Delay(1000);
SendEmergencySMS();
LCDClear();
LCDWriteString("JAMMER ACTIVATED");
for(;;);
Delay(10000);
RelayOff();
LCDWriteString("JAMMER DEACTIVATED");
MainDisplayTitle();
Delay(500);
}
}
}
}

E&C Dept. P.E.S.C.E. 46


Mobile Sniffer cum Jammer with alerting system

static void SendEmergencySMS(void)


{
LCDClear();
LCDWriteString("Sending SMS.....");
SendMessageToPhone();
LCDRow2();
LCDWriteString(" SMS SENT -->>");
Delay(2000);
}

static void MainSystemInitialize(void)


{
PHONE = 1;
RELAY = 1;
LCDInitialize();
LCDDisplayInitializing();
SerialCommunicationInitialize();
MainCheckGSMModem();
RI = 0;//CLEAR DATA RECEIVED FLAG
}
static void MainDisplayTitle(void)
{
LCDClear();
LCDWriteString("MOBILE PHONE");
LCDWriteCommand(0xc8);
LCDWriteString("DETECTOR");
}

static void MainCheckGSMModem(void)


{
LCDClear();

if(ReceiveResponse())
{

E&C Dept. P.E.S.C.E. 47


Mobile Sniffer cum Jammer with alerting system

GSMCommunication = OK;
LCDRow2();
LCDWriteString("SUCCESSFULL.....");

static void MainErrorInModem(void)


{
Delay(500);
GSMCommunication = FAILED;
LCDRow2();
LCDWriteString("FAILED !");
}

bit ReceiveResponse()
{
bit Flag = 0;
unsigned char Count;

for(Count = 0; Count < 3; Count++)


SendByteSerially(ATCommand[Count]);

do
{
Count = ReceiveByteSerially();
}
while(Count != 'K');

Delay(500); //

if(Count != 'K' )//Not Eual to >return Flag;

E&C Dept. P.E.S.C.E. 48


Mobile Sniffer cum Jammer with alerting system

return Flag = 1;
}

bit SendSMSCode(void)
{
bit Flag = 0;
unsigned char Count;

for(Count = 0; Count < 10; Count++)


SendByteSerially(SMSCode[Count]);

Do
{
Count = ReceiveByteSerially();
}
while(Count != 'K');

Delay(500); //

if(Count != 'K' )//Not Eual to >


return Flag;

return Flag = 1;
}
bit SendSMSNumber(void)
{

bit Flag = 0;
unsigned char Count;

for(Count = 0; Count < 10; Count++)


SendByteSerially(SMSNumber[Count]);

for(Count = 0; Count < 5; Count++)

E&C Dept. P.E.S.C.E. 49


Mobile Sniffer cum Jammer with alerting system

SendByteSerially(PhoneNumber1[Count]);
for(Count = 0; Count < 7; Count++)
SendByteSerially(PhoneNumber2[Count]);
do
{
Count = ReceiveByteSerially();
}
while(Count != 0x3e);

if(Count != 0x3e )//Not Eual to >


return Flag;

return Flag = 1;
}
void ReceiveACknowledgment(void)
{
unsigned char TemporaryVariable;
do
{
TemporaryVariable = ReceiveByteSerially();
}
while(TemporaryVariable != 'K' && TemporaryVariable != 'E');

if(TemporaryVariable == 'E')
if(! ReceiveResponse())
MainErrorInModem();

static void SendMessageToPhone(void)


{

if(SendSMSCode())
{

E&C Dept. P.E.S.C.E. 50


Mobile Sniffer cum Jammer with alerting system

if(SendSMSNumber())
{
SendStatusMessage();
ReceiveACknowledgment();
}
else
MainErrorInModem();

if(SendSMSNumber2())
{
SendStatusMessage();
SendByteSerially(0x1A);
ReceiveACknowledgment();
}
else
MainErrorInModem();
}
else
MainErrorInModem();
}
static void SendStatusMessage()
{
SendStringSerially("MOBILE PHONE DETECTED, JAMMER WILL BE IN
OPERATION ");
SendStringSerially(" Automated SMS By: MOBILE DETECTOR");
SendByteSerially(0x1A);
}
bit SendSMSNumber2(void)
{

bit Flag = 0;
unsigned char Count;

for(Count = 0; Count < 10; Count++)

E&C Dept. P.E.S.C.E. 51


Mobile Sniffer cum Jammer with alerting system

for(Count = 0; Count < 5; Count++)


SendByteSerially(PhoneNumber3[Count]);
for(Count = 0; Count < 7; Count++)
SendByteSerially(PhoneNumber4[Count]);
do
{
Count = ReceiveByteSerially();
}while(Count != 0x3e);

if(Count != 0x3e )//Not Eual to >return Flag;

return Flag = 1;
}

Hexadecimal converted code :

//DEFINE MAIN HEADER FILE


#ifndef MAIN_H
#define MAIN_H

//INCLUDE DEFINITION OF HEADER FILE


#include<at89x51.h>

//INCLUDE USER DEFINED HEADER FILE


#include"delay.h"
#include"serialcommunication.h"
#include"lcd.h"

//DEFINE PORTS/PINS

#define PHONE P1_0


#define RELAY P2_0

//DEFINE CONSTANT

E&C Dept. P.E.S.C.E. 52


Mobile Sniffer cum Jammer with alerting system

#define OK 1
#define FAILED 0
#define INPUT_PORT 0xff
#define OUTPUT_PORT 0x00

#define OUTPUT_PIN 0
#define PRESSED 0
#define ON 0
#define OFF 1
#define ENABLE 1
#define DISABLE 0
#define DETECTED 1

//DEFINE MACROS
#define RelayOn() RELAY = 0
#define RelayOff() RELAY = 1

//FUNCTION PROTOTYPES
void main(void);
static void MainDisplayTitle(void);
static void Blink(unsigned char Duration);
bit SendSMSCode(void);
bit SendSMSNumber(void);
bit SendSMSNumber2(void);
bit ReceiveResponse(void);
static void Settings(void);
static void DecodeMessage(void);
void ReceiveACknowledgment(void);
bit SendMessageSettingsCode(void);
static void MainCheckEEPROM(void);
static void MainSendLatitude(void);
static void MainErrorInModem(void);
static void MainSendLongitude(void);
static void MainCheckGSMModem(void);

E&C Dept. P.E.S.C.E. 53


Mobile Sniffer cum Jammer with alerting system

static void SendMessageToPhone(void);


static void MainSystemInitialize(void);
static void SendLatitudeLongitude(void);
static void MainDisplayParameters(void);
static unsigned char VerifyMessage(void);
static unsigned char CalculateHeartBeats(void);
static void MainDisplayProjectTitle(void);
static void MainReadLatitudeLongitude(void);
static void TransmitData(unsigned char DeviceValue);
static void SendPhoneNumber(ubyte start_add, ubyte pass[]);
static void send_data_byte(ubyte start_add, ubyte *base_add);
static void ReceivePhoneNumber(ubyte start_add, ubyte pass[]);
static void SendEmergencySMS(void);
static void MainConvertToAscii(unsigned char Value);
static void Settings(void);
static void Settings1(void);
static void MainSetPhoneNumber(void);
static void SendStatusMessage(void);
#endif

7.2.3 Serial Communication code


C-program :
#include"serialcommunication.h"
//FUNCTIONS
void SerialCommunicationInitialize(void) // INITIALIZE SERIAL PORT
{
TMOD = (( TMOD & 0x0F) | 0x20); // Timer 1 IN MODE 2 -AUTO RELOAD TO
GENERATE BAUD RATE
SCON = 0x50;// SERIAL MODE 1, 8-DATA BIT 1-START BIT, 1-STOP BIT, REN
ENABLED
TH1 = Baud_rate;//LOAD BAUDRATE TO TIMER REGISTER
TR1 = 1;// START TIMER
EA = 1;//GLOABL ENABLE INTERRUPT
}

E&C Dept. P.E.S.C.E. 54


Mobile Sniffer cum Jammer with alerting system

void SendByteSerially(unsigned char serialdata)


{
SBUF = serialdata;// LOAD DATA TO SERIAL BUFFER REGISTER
while(TI == 0); // WAIT UNTIL TRANSMISSION TO COMPLETE
TI = 0;// CLEAR TRANSMISSION INTERRUPT FLAG
}
unsigned char ReceiveByteSerially(void)
{
while(RI == 0);// WAIT UNTIL DATA IS RECEIVED
RI = 0;// CLEAR FLAG
return SBUF;// RETURN SERIAL DATA
}
void SendStringSerially(unsigned char *StringData)
{
while(*StringData)
SendByteSerially(*StringData++);
}
// END OF PROGRAM

Hexadecimal Converted program:

#ifndef SERIALCOMMUNICATION_H
#define SERILACOMMUNCATION_H
/* ------------------------------------
89C51 serial communication
------------------------------------
Demonstration of serial communication - ECHO program
-----------------------------------------------------
Designed for 89c51 running at 11.0592Mhz
communication between PC and microcontroller.
RS232 serial specification
9600 baud rate
8-bit
1- start bit

E&C Dept. P.E.S.C.E. 55


Mobile Sniffer cum Jammer with alerting system

1-stop bit
parity none

Hardware Connection
-------------------
compile with Keil Compiler.

Note: Hyper Terminal / Terminal v1.9b software for communication

operation: receives data from PC (or any serial device) and transmitt
same data back to PC- A ECHO program

//INCLUDES
#include<at89x51.h> //Includes definition of 89c51

//DEFINE CONSTANT
#define Baud_rate 0xFD // BAUD RATE 9600

//DEFINE PROTOTYPES

void SerialCommunicationInitialize(void);
void SendByteSerially(unsigned char ascii);
unsigned char ReceiveByteSerially(void);
void SendStringSerially(unsigned char *StringData);
#endif

E&C Dept. P.E.S.C.E. 56


Mobile Sniffer cum Jammer with alerting system

7.3 Evaluation of keil software

1. Start the Vision Program

Fig. 7.1

2. After the program has started:


Select File, New from the program menu

Fig. 7.2

Type your assembly file. The following is an example of a toggle program.

E&C Dept. P.E.S.C.E. 57


Mobile Sniffer cum Jammer with alerting system

Fig. 7.3
3. Select File, Save from the program menu

Fig. 7.4
The first time you save the program a dialog box will popup and allow you to name your
file and file type.
Save program with filename: xxxxx.asm
The File type is mentioned at last (.asm) means assembly language

4. Select Project, New Project from the program menu


Give some project name: xxxx.prj

Fig. 7.5

E&C Dept. P.E.S.C.E. 58


Mobile Sniffer cum Jammer with alerting system

5. Click on the Add button


A dialog-box appears, allowing you to add files to the project
Change the file type to Assembly.

Fig. 7.6
6. Select your assembly file.
Click on the Add button then close the Add dialog box.

Fig. 7.7

E&C Dept. P.E.S.C.E. 59


Mobile Sniffer cum Jammer with alerting system

7.4 Introduction to Flash Magic

Flash Magic is a PC tool for programming flash based microcontrollers from NXP using
a serial protocol while in the target hardware.

Screenshots

Main window

Fig. 7.8

Hex file information

Fig. 7.9

Execute from RAM or Flash (LPC2xxx)

Fig 7.10
Display flash memory

Fig. 7.11

E&C Dept. P.E.S.C.E. 60


Mobile Sniffer cum Jammer with alerting system

Device signature

Fig. 7.12

Start boot loader

Fig. 7.13
Blank check

Advanced options - timeouts

Fig. 7.14
Advanced options hardware

Fig. 7.15
Executing a script

Fig. 7.16

E&C Dept. P.E.S.C.E. 61


Mobile Sniffer cum Jammer with alerting system

7.5 Features

i. Straightforward and intuitive user interface


ii. Five simple steps to erasing and programming a device and setting any options
desired
iii. Programs Intel Hex Files
iv. Automatic verifying after programming
v. Fills unused Flash to increase firmware security
vi. Ability to automatically program checksums. Using the supplied checksum
calculation routine your firmware can easily verify the integrity of a Flash block,
ensuring no unauthorized or corrupted code can ever be executed
vii. Program security bits
viii. Check which Flash blocks are blank or in use with the ability to easily erase all
blocks in use
ix. Read the device signature
x. Read any section of Flash and save as an Intel Hex File
xi. Reprogram the Boot Vector and Status Byte with the help of confirmation
features that prevent accidentally programming incorrect values
xii. Display the contents of Flash in ASCII and Hexadecimal formats
xiii. Single-click access to the manual, Flash Magic home page and NXP
Microcontrollers home page
xiv. Ability to use high-speed serial communications on devices that support it. Flash
Magic calculates the highest baudrate that both the device and your PC can use
and switches to that baudrate transparently
xv. Command Line interface allowing Flash Magic to be used in IDEs and Batch
Files
xvi. Supports half-duplex communications
xvii. Verify Hex Files previously programmed
xviii. Able to reset Rx2 and 66x devices (revision G or higher)
xix. Able to control the DTR and RTS RS232 signals when connected to RST and
/PSEN to place the device into BootROM and Execute modes automatically. An
example circuit diagram is included in the Manual. Essential for ISP with target
hardware that is hard to access.
xx. Able to send commands to place the device in BootROM mode, with support for
command line interfaces. The installation includes an example project for the Keil

E&C Dept. P.E.S.C.E. 62


Mobile Sniffer cum Jammer with alerting system

and Raisonance 8051 compilers that show how to build support for this feature
into applications.
xxi. Able to play any Wave file when finished programming.
xxii. Built in automated version checker - helps ensure you always have the latest
version.
xxiii. Powerful, flexible Just In Time Code feature. Write your own JIT Modules to
generate last minute code for programming. Uses include:
xxiv. Serial number generation
xxv. Copy protection and copy authorization
xxvi. Storing program date and time - manufacture date
xxvii. Storing program operator and location
xxviii. Lookup table generation
xxix. Language tables or language selection
xxx. Centralized record keeping
xxxi. Obtaining latest firmware from the Corporate Web site or project intranet
xxxii. Sponsored by NXP Semiconductors
xxxiii. Features automatically updating Internet links including links to related technical
documents, software updates, utilities and code examples, using EmbeddedHints
technology
xxxiv. Displays information about the selected Hex File, including the creation and
modification dates, flash memory used, percentage of the current device used
xxxv. Flash Magic works on any versions of Windows, except Windows 95. 10Mb of
disk space is required

7.6 Applications:
1. In the Military Camps and Defense Establishments
2. Cinema Theatres and Libraries for noise free & Peaceful Environment
3. All other places where the external communication forbidden.
4. They are also widely used in hospitals.

E&C Dept. P.E.S.C.E. 63


Mobile Sniffer cum Jammer with alerting system

Chapter 8
RESULTS

The whole working and functions of the project is as given below :

1. When power is turned ON, the LCD displays the message :

INITIALISING.
CONNECTING..GSM
MOBILE PHONE
DETECTOR

2. When the Sniffer detects mobile signal, the LCD than displays the message as :

PHONE DETECTED
ACTIVATING JAMMER
SENDING SMS.
SENT>>>
JAMMER ACTIVATED

3. During this process the Relay turns on the Jammer, while the GSM is sending the
message to the master cell phone. As the message is sent, the jammer is activated
and blocks all the signal within its range. Thus completing the whole process.

E&C Dept. P.E.S.C.E. 64


Mobile Sniffer cum Jammer with alerting system

BIBLIOGRAPHY
i. M.A Mazidi and J.G Mazidi, 8051 Microcontroller and Embedded Systems, 2nd
Edition ISBN 0-13-119402-X]
ii. John Axelson, The Microcontroller Idea Book, October 1994
[ISBN 09650819-0-7]
iii. Roy Choudary, Linear Integrated Circuits, published by New Age International
in the year 2003 [ISBN 8-12-241470-2]
iv. http://electronics.howstuffworks.com/cell-phone-jammer.htm
How Cell Phone Jammers Work
v. http://en.wikipedia.org/wiki/Mobile_phone_jammer
Mobile phone jammer
vi. http://wordpress.com
Mobile Sniffer
vii. http://www.extremecircuits.net
Mobile bug detector
viii. http://www.nowsms.com
What is a GSM Modem?
ix. http://www.linksprite.com
Four-band GSM/GPRS Module SIM300
x. http://www.digchip.com
Details, datasheet, quote on part number: P89C51X2BN
xi. http://www.8051projects.info
AT89S52 microcontroller Pin Diagram and Pin Functions
xii. http://www.8052.com
Introduction to LCD Programming
xiii. http://electronics.howstuffworks.com
How Relays Work
xiv. http://www.ustudy.in
Switches
xv. http://www.scribd.com
Overview-Of-Keil-Cross-C-Compiler

E&C Dept. P.E.S.C.E. 65


Mobile Sniffer cum Jammer with alerting system

APPENDIX
A. DATA SHEET OF DIODE

E&C Dept. P.E.S.C.E. 66


Mobile Sniffer cum Jammer with alerting system

B. DATA SHEET OF AT89S52

E&C Dept. P.E.S.C.E. 67


Mobile Sniffer cum Jammer with alerting system

C. DATA SHEET OF LCD

HD44780U (LCD-II)
(Dot Matrix Liquid Crystal Display Controller/Driver)

Description
The HD44780U dot-matrix liquid crystal display controller and driver LSI displays alphanumerics,
Japanese kana characters, and symbols. It can be configured to drive a dot-matrix liquid crystal display
under the control of a 4- or 8-bit microprocessor. Since all the functions such as display RAM, character
generator, and liquid crystal driver, required for driving a dot-matrix liquid crystal display are internally
provided on one chip, a minimal system can be interfaced with this controller/driver.

A single HD44780U can display up to one 8-character line or two 8-character lines.

The HD44780U has pin function compatibility with the HD44780S which allows the user to easily replace
an LCD-II with an HD44780U. The HD44780U character generator ROM is extended to generate 208 5 8
dot character fonts and 32 5 10 dot character fonts for a total of 240 different character fonts.

The low power supply (2.7V to 5.5V) of the HD44780U is suitable for any portable battery-driven product
requiring low power dissipation.

Features

5 8 and 5 10 dot matrix possible

Low power operation support:


2.7 to 5.5V

Wide range of liquid crystal display driver power


3.0 to 11V

Liquid crystal drive waveform


A (One line frequency AC waveform)
Correspond to high speed MPU bus interface

2 MHz (when VCC = 5V)

4-bit or 8-bit MPU interface enabled

80 8-bit display RAM (80 characters max.)

9,920-bit character generator ROM for a total of 240 character fonts


208 character fonts (5 8 dot)
32 character fonts (5 10 dot)

E&C Dept. P.E.S.C.E. 68


Mobile Sniffer cum Jammer with alerting system

HD44780U

64 8-bit character generator RAM


8 character fonts (5 8 dot)
4 character fonts (5 10 dot)
16-common 40-segment liquid crystal display driver
Programmable duty cycles
1/8 for one line of 5 8 dots with cursor
1/11 for one line of 5 10 dots with cursor
1/16 for two lines of 5 8 dots with cursor
Wide range of instruction functions:

Display clear, cursor home, display on/off, cursor on/off, display character blink, cursor shift,
display shift
Pin function compatibility with HD44780S
Automatic reset circuit that initializes the controller/driver after power on
Internal oscillator with external resistors
Low power consumption

Ordering Information
Type No. Package CGROM
HD44780UA00FS FP-80B Japanese standard font
HCD44780UA00 Chip
HD44780UA00TF TFP-80F
HD44780UA02FS FP-80B European standard font
HCD44780UA02 Chip
HD44780UA02TF TFP-80F
HD44780UBxxFS FP-80B Custom font
HCD44780UBxx Chip
HD44780UBxxTF TFP-80F
Note: xx: ROM code No.

E&C Dept. P.E.S.C.E. 69


Mobile Sniffer cum Jammer with alerting system

HD44780U Block Diagram

OSC1 OSC2
CL1
CL2
M
Reset
circuit
Timing
ACL CPG generator

Instruction 7
register (IR) D
8

Display COM1 to
MPU Instruction
data RAM 16-bit Common COM16
RS inter- decoder
(DDRAM) shift signal
R/W face 80 8 bits register driver
E

Address 7 SEG1 to
counter 40-bit 40-bit Segment SEG40
8
7 shift latch signal
DB4 to register circuit driver
DB7 7
Input/ 8 Data 8
DB0 to output register
40
DB3 buffer (DR)
8 8 LCD drive
voltage
Busy selector
flag

Character Character
Cursor
generator generator
and
RAM ROM
blink
(CGRAM) (CGROM)
controller
64 bytes 9,920 bits
GND
5 5

Parallel/serial converter
and
attribute circuit
V
CC

V1 V2 V3 V4 V5

E&C Dept. P.E.S.C.E. 70


Mobile Sniffer cum Jammer with alerting system

D. DATA SHEET OF TRANSISTOR

BC546/547/548/549/550

Switching and Applications


High Voltage: BC546, VCEO=65V
Low Noise: BC549, BC550
Complement to BC556 ... BC560

1 TO-92
1. Collector 2. Base 3. Emitter
NPN Epitaxial Silicon Transistor
Absolute Maximum Ratings Ta=25 C unless otherwise noted
Symbol Parameter Value Units
V
CBO Collector-Base Voltage : BC546 80 V
: BC547/550 50 V
: BC548/549 30 V
V
CEO Collector-Emitter Voltage : BC546 65 V
: BC547/550 45 V
: BC548/549 30 V
V
EBO Emitter-Base Voltage : BC546/547 6 V
: BC548/549/550 5 V
IC Collector Current (DC) 100 mA
PC Collector Power Dissipation 500 mW
TJ Junction Temperature 150 C
T
STG Storage Temperature -65 ~ 150 C

Electrical Characteristics Ta=25 C unless otherwise noted


Symbol Parameter Test Condition Min. Typ. Max. Units
I
CBO Collector Cut-off Current VCB=30V, IE=0 15 nA
h
FE DC Current Gain VCE=5V, IC=2mA 110 800
VCE (sat) Collector-Emitter Saturation Voltage IC=10mA, IB=0.5mA 90 250 mV
IC=100mA, IB=5mA 200 600 mV
VBE (sat) Base-Emitter Saturation Voltage IC=10mA, IB=0.5mA 700 mV
IC=100mA, IB=5mA 900 mV
VBE (on) Base-Emitter On Voltage VCE=5V, IC=2mA 580 660 700 mV
VCE=5V, IC=10mA 720 mV
fT Current Gain Bandwidth Product VCE=5V, IC=10mA, f=100MHz 300 MHz
C
ob Output Capacitance VCB=10V, IE=0, f=1MHz 3.5 6 pF
C
ib Input Capacitance VEB=0.5V, IC=0, f=1MHz 9 pF
NF Noise Figure : BC546/547/548 VCE=5V, IC=200 A 2 10 dB
: BC549/550 f=1KHz, RG=2K 1.2 4 dB
: BC549 VCE=5V, IC=200 A 1.4 4 dB
: BC550 RG=2K , f=30~15000MHz 1.4 3 dB

E&C Dept. P.E.S.C.E. 71

You might also like