Introduction
Though the term calculator is not new to us, we are all well aware
about it because of daily life use. We have seen calculators of several
functionalities like Scientific calculator, Arithmetic calculator, Statistical
calculator but we are not aware about it’s interior means which processor it
used, which display panel it is used. If we search about it most of the
calculator found that are processor based. But , designing such calculators
using controller is a very interesting job. A simple motive is there if we can
accomplish a task with the use of controller, why we use processor that tends
to complexity of system design. For a large and numerous application processor
is suitable but as per the small application is concern we can achieve it with
the help of controller and due to the numerous evolution of microcontrollers ,
they are very much suitable for small application.
Arithmetic calculator is capable of performing arithmetic operation
like addition, subtraction, multiplication and division, using which we can
perform such operation for multi digit inputed data as well as single digit
input data. For multi digit computation memory requirement is more and for
single digit computation memory requirement is less. This project is
accomplished with AT89C51 Microcontroller which is a 8051 family
microcontroller.
Hardware and Software Requirement
Hardware
|
Quantity
|
8051 Microcontroller
|
1
|
LCD 16X2 (LM016L)
|
1
|
4X4 Keypad
|
1
|
Crystal Oscillator (11.0592)
|
1
|
Capacitor (33uF,10uF)
|
2
|
Push Button Switch
|
1
|
Resistor (10k)
|
1
|
Power Supply (Battery)
|
1
|
Voltage Regulator (7805)
|
1
|
Software
|
|
Keil-uVision3 (Compiler)
|
|
Proteus (Simulator)
|
|
Circuit Diagram
fig(1.0)
Download Source Code and Simulation (below link)
Connection's
i.
The Row is connected to port
P1(P1.0-P1.3) and column is connected to (P1.4-P1.7).
ii. The LCD data pins are
connected to P2 .
iii. The LCD control pins are
connected as
Register Select -- P3.7
Enable -- P3.6
Read/Write -- P3.5 or it can be grounded.
**** Ask for any doubt.