Skip to main content
Introduction to 8051 Microcontroller
8051
• 8051 is one of the first and most popular
microcontrollers also known as MCS-51. Intel
introduced it in the year 1981.
• Initially, it came out as an N-type metal-oxide-
semiconductor (NMOS) based microcontroller
• but later versions were based on
complementary metal-oxide-
semiconductor(CMOS) technology.
• These microcontrollers were named 80C51,
where C in the name tells that it is based on
CMOS technology.
• It is an 8-bit microcontroller which means the
data bus is 8-bit.
• Therefore, it can process 8 bits at a time.
• It is used in a wide variety of embedded systems
like robotics, remote controls, the automotive
industry, telecom applications, power tools, etc.
• It is referred to as a System on a Chip (SoC)
microcontroller because it is a chip
circuit/integrated circuit that holds many
components of a computer together on a
single chip.
• These components include a CPU, memory,
input-output ports(I/O ports), timers, and
secondary storage.
• Features – There are some key features of
8051 that work as a foundation for students to
learn microcontrollers.
• 8051 μc family member –
• 8051 μc have some family members 8052
microcontroller & 8031 microcontroller.
• 8052μc has 8K bytes of on-chip program ROM
instead of 4K bytes, and 128 bytes of RAM.
and 8031μc has 0K bytes of on-chip program
ROM, and 128 bytes of RAM.
The Key features of the 8051
Microcontroller
• –
• 4 KB on-chip ROM (Program memory).
• 128 bytes on-chip RAM (Data memory).
• The 8-bit data bus (bidirectional).
• 16-bit address bus (unidirectional).
• Two 16-bit timers.
• Instruction cycle of 1 microsecond with 12 MHz
crystal.
• Four 8-bit input/output ports.
• 128 user-defined flags.
• Four register banks of 8 bit each.
• 16-byte bit-addressable RAM.
• The general purpose registers are 32 each is 8-bit.
• 8051 has two external and three internal interrupts.
• 8051 microcontroller specifies some special
function features like UARTs, ADC, Op-amp, etc.
• It has a 16-bit program counter and data pointer.
• Application of 8051 Microcontroller –
• Automation: The 8051 microcontroller is widely
used in automotive applications.
They are widely used in hybrid vehicles to
control engine options.
• In addition, functions such as cruise control and
anti-brake mechanism have been further
enhanced thanks to the integration of a
microcontroller.
• Medical Devices: Convenient medical devices such
as blood glucose and blood pressure monitors
contain microcontrollers that display measurements.
• Energy management: Competent measurement
systems support energy consumption calculations in
home and industrial environments. These
measuring systems are prepared by integrating a
microcontroller.
• Touch Screen: Many microcontroller vendors
incorporate touch functionality into their designs.
Portable devices such as media players, and gaming
devices.
PIN DIAGRAM
• 8051 microcontroller is a 40 pin Dual Inline Package (DIP).
• These 40 pins serve different functions like read, write,
I/O operations, interrupts etc. 8051 has four I/O ports
wherein each port has 8 pins which can be configured as
input or output depending upon the logic state of the
pins.
• Therefore, 32 out of these 40 pins are dedicated to I/O
ports.
• The rest of the pins are dedicated to VCC, GND, XTAL1,
XTAL2, RST, ALE, EA’ and PSEN’.
• Pin 1 to Pin 8 (Port 1) –
Pin 1 to Pin 8 are assigned to Port 1 for simple I/O
operations.
• They can be configured as input or output pins depending
on the logic control i.e. if logic zero (0) is applied to the
I/O port it will act as an output pin and if logic one (1) is
applied the pin will act as an input pin.
• These pins are also referred to as P1.0 to P1.7 (where P1
indicates that it is a pin in port 1 and the number after ‘.’
tells the pin number i.e. 0 indicates first pin of the port.
• So, P1.0 means first pin of port 1, P1.1 means second pin
of the port 1 and so on). These pins are bidirectional pins.
• Pin 9 (RST) –
Reset pin. It is an active-high, input pin.
• Therefore if the RST pin is high for a minimum
of 2 machine cycles, the microcontroller will
reset i.e. it will close and terminate all
activities.
• It is often referred as “power-on-reset” pin
because it is used to reset the microcontroller
to it’s initial values when power is on (high).
• Pin 10 to Pin 17 (Port 3) –
Pin 10 to pin 17 are port 3 pins which are also
referred to as P3.0 to P3.7. These pins are
similar to port 1 and can be used as universal
input or output pins. These pins are
bidirectional pins.
• These pins also have some additional
functions which are as follows:
• P3.0 (RXD) :
10th pin is RXD (serial data receive pin) which
is for serial input. Through this input signal
microcontroller receives data for serial
communication.
• P3.1 (TXD) :
11th pin is TXD (serial data transmit pin) which
is serial output pin. Through this output signal
microcontroller transmits data for serial
communication.
• P3.2 and P3.3 (INT0′, INT1′ ) :
12th and 13th pins are for External Hardware
Interrupt 0 and Interrupt 1 respectively. When
this interrupt is activated(i.e. when it is low),
8051 gets interrupted in whatever it is doing
and jumps to the vector value of the interrupt
(0003H for INT0 and 0013H for INT1) and
starts performing Interrupt Service Routine
(ISR) from that vector location.
• P3.4 and P3.5 (T0 and T1) :
14th and 15th pin are for Timer 0 and Timer 1
external input. They can be connected with 16 bit
timer/counter.
• P3.6 (WR’) :
16th pin is for external memory write i.e. writing
data to the external memory.
• P3.7 (RD’) :
17th pin is for external memory read i.e. reading
data from external memory.
• Pin 18 and Pin 19 (XTAL2 And XTAL1) –
These pins are connected to an external
oscillator which is generally a quartz crystal
oscillator. They are used to provide an external
clock frequency of 4MHz to 30MHz.
• Pin 20 (GND) –
This pin is connected to the ground. It has to be
provided with 0V power supply. Hence it is
connected to the negative terminal of the power
supply.
• Pin 21 to Pin 28 (Port 2) –
Pin 21 to pin 28 are port 2 pins also referred to
as P2.0 to P2.7. When additional external
memory is interfaced with the 8051
microcontroller, pins of port 2 act as higher-
order address bytes. These pins are bidirectional.
• Pin 29 (PSEN) –
PSEN stands for Program Store Enable. It is output, active-
low pin. This is used to read external memory. In 8031
based system where external ROM holds the program
code, this pin is connected to the OE pin of the ROM.
• Pin 30 (ALE/ PROG) –
ALE stands for Address Latch Enable. It is input, active-
high pin. This pin is used to distinguish between memory
chips when multiple memory chips are used. It is also
used to de-multiplex the multiplexed address and data
signals available at port 0.During flash programming i.e.
Programming of EPROM, this pin acts as program pulse
input (PROG).
• Pin 31 (EA/ VPP) –
EA stands for External Access input. It is used to
enable/disable external memory interfacing. In 8051, EA is
connected to Vcc as it comes with on-chip ROM to store
programs. For other family members such as 8031 and 8032
in which there is no on-chip ROM, the EA pin is connected to
the GND.
• Pin 32 to Pin 39 (Port 0) –
Pin 32 to pin 39 are port 0 pins also referred to as P0.0 to
P0.7. They are bidirectional input/output pins. They don’t
have any internal pull-ups. Hence, 10 K? pull-up registers are
used as external pull-ups. Port 0 is also designated as AD0-
AD7 because 8051 multiplexes address and data through
port 0 to save pins.
Introduction to 8051 Microcontroller .pptx