0% found this document useful (0 votes)
2 views19 pages

Report For A Project

The document presents a project report on the design and development of an electronic voting machine (EVM) using the 8051 microcontroller, aimed at enhancing the reliability and efficiency of the voting process. It details the system's architecture, implementation steps, and testing results, highlighting features such as password protection for result access and a user-friendly interface with an LCD display. The project is intended for small-scale elections and demonstrates the application of embedded systems in real-world scenarios.

Uploaded by

vinuscookhub17
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views19 pages

Report For A Project

The document presents a project report on the design and development of an electronic voting machine (EVM) using the 8051 microcontroller, aimed at enhancing the reliability and efficiency of the voting process. It details the system's architecture, implementation steps, and testing results, highlighting features such as password protection for result access and a user-friendly interface with an LCD display. The project is intended for small-scale elections and demonstrates the application of embedded systems in real-world scenarios.

Uploaded by

vinuscookhub17
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 19

VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI – 590018

Project Based Assignment


Report on
ELECTRONIC VOTING MACHINE
[BEC405A-Microcontrollers 8051]
Submitted in partial fulfillment for the award of degree
BACHELOR OF ENGINEERING
in
ELECTRONICS AND COMMUNICATION ENGINEERING
By
H P Lipin 1JT23EC040
Under the Guidance
Dayananda L N
Assistant Professor
Dept. of ECE, JIT

Department of Electronics and Communication Engineering

Jyothy Institute of Technology

Tataguni, Off Kanakapura Road, Bangalore-560 082

Academic Year 2024-25


Project-Based Assignment Evaluation Sheet (Total: 25 Marks)

Course Name: Microcontrollers


Course Code: BEC405A
Name: H B Lipin
USN: 1JT23EC040
Project Title: Electronic voting machine
Date: 2/06/2025

Sl. Criteria Max. Marks Marks


No. Awarded
1 Understanding of the Problem 5
2 Innovation/Creativity in Solution 5
3 Technical Content and Accuracy 5
4 Presentation & Communication Skills 5
5 Teamwork / Individual Contribution 2
6 Documentation / Report Quality 3

Total 25
ELECTRONIC VOTING MACHINE
BEC405A

Sl No. Contents Page


No.
1 Introduction 6
2 Literature Survey 7
3 System Design and Methodology 7
4 Implementation 10
5 Results and Discussion 13
6 Expenditure details 17
7 Time Schedule 18
8 Contribution 18
9 Conclusion 18
10 References 18

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

ABSTRACT
Voting Machine Using 8051 Microcontroller

In democratic systems, fair and efficient voting mechanisms are essential for ensuring
transparent elections. This project presents the design and development of a simple
electronic voting machine (EVM) based on the 8051 microcontroller, aiming to
enhance the reliability and speed of the voting process while minimizing human
errors.

The proposed system uses the 8051 microcontroller as the core processing unit to
manage vote input, counting, and result display. The machine features push-button
switches for each candidate, and an LCD display to show real-time information and
final results. Each button press is registered as a vote for the corresponding candidate
and is stored securely in the microcontroller’s memory. After the voting session ends,
an authorized person can trigger the result mode to display the number of votes each
candidate has received.

To ensure data integrity, the system includes basic debouncing techniques and
password protection for result access. The voting machine operates on embedded C
code programmed into the 8051 microcontroller using Keil software and can be
powered by a regulated power supply.

This low-cost, standalone system provides a user-friendly interface and demonstrates


how microcontrollers can be used to automate the voting process, particularly in local
elections or institutional polls

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

1. INTRODUCTION
1.1 Background
Electronic voting systems are widely recognized for improving the speed and
accuracy of elections. The 8051 microcontroller is a popular choice in embedded
system projects due to its simplicity, reliability, and wide availability. In this
project, the microcontroller plays a central role in managing inputs (vote casting),
storing vote data, and outputting results. The integration of LCD display and
button-based input allows for a user-friendly interface.

1.2 Problem Statement

Traditional paper-based voting systems are prone to several limitations:

 Time-consuming manual counting processes.

 Possibility of invalid or tampered votes.

 Lack of real-time result visibility.

 High chance of human errors and disputes.

1.3 Objectives

 To design and implement an electronic voting machine using the 8051


microcontroller.

 To automate the vote counting process to reduce human errors.

 To implement secure result display accessible only with a password.

 To develop a low-cost, portable, and reliable voting system.

 To enhance the transparency and efficiency of the voting process.

1.4 Scope of the Project

 Suitable for small-scale elections (e.g., schools, colleges, housing societies).

 Can accommodate a limited number of candidates and voters.

 Simple LCD interface for live instructions and final result display.

 Demonstrates the application of embedded systems in real-world problems.

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

2. LITERATURE SURVEY

The evolution of electronic voting systems has shown significant progress in recent
years, moving from manual voting techniques to fully automated systems.
Microcontroller-based systems, particularly using the 8051 microcontroller, have
gained popularity in academic and experimental setups due to their simplicity, cost-
effectiveness, and ease of programming. This literature survey highlights various
research efforts and projects related to electronic voting systems and the role of the
8051 microcontroller in their development.

3.SYSTEM DESIGN & METHODOLOGY

3.1 Block Diagram

3.2 Circuit Diagram

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

3.3 Description of Components

 89C51 Microcontroller: A classic 8051 family microcontroller used for


processing digital data.

 Push Button Switches: Serve as input devices for voting—each candidate


is assigned one button.

 Resistors and Capacitors: Used in pull-up configurations, debounce


circuits, and filtering.

 Power Supply: Provides the necessary operating voltage for the


microcontroller.

 16x2 LCD: Displays temperature in Celsius.

3.4Flowchart / Algorithm

1.Start the system and initialize all ports and the LCD.

2.Display a welcome message and system readiness: "Welcome - Vote Now".

3.Wait for a button press (each button represents a candidate).

4.When a button is pressed:

 Identify the candidate.

 Increment the vote count for the selected candidate.

 Optionally activate a buzzer for feedback.

 Display "Vote Casted" on the LCD.

5.Return to the "Vote Now" screen and wait for the next voter.

6.Repeat steps 3–5 until voting ends (manually or via a trigger switch).

7.When voting is complete, prompt for a password (optional security).

8.If password is correct:

 Display vote counts for all candidates on the LCD.

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

3.5 Software Used

 Keil µVision (for programming 89C51)

 Proteus (for simulation)

 Flash Magic (for flashing microcontroller)

4. IMPLEMENTATION

4.1 Hardware Assembly Steps

Step 1: Mount the Microcontroller

 Place the AT89C51 microcontroller on a 40-pin DIP socket on a breadboard or


PCB.

 Connect Vcc (Pin 40) to +5V and GND (Pin 20) to ground.

 Connect a 10kΩ resistor and 10μF capacitor to the reset pin (Pin 9) for reset
functionality.

 Connect a push-button to the reset pin for manual reset.

Step 2: Connect the Crystal Oscillator

 Connect an 11.0592 MHz crystal oscillator between Pins 18 and 19 (XTAL1


and XTAL2).

 Add two 33pF capacitors between each crystal pin and ground for stable
oscillation.

Step 3: Interface the LCD Display (16x2)

 Connect the LCD's data pins (D4–D7) to any four I/O pins of Port 1 (e.g., P1.4
to P1.7).

 Connect RS, RW, and EN pins of LCD to Port 3 (e.g., RS → P3.0, RW →


GND, EN → P3.1).

 Use a 10kΩ variable resistor to adjust LCD contrast (connected between Vcc,
GND, and VEE pin of the LCD).

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

Step 4: Connect Push Buttons (Voting Inputs)

 Connect one push-button for each candidate to available I/O pins (e.g., P2.0,
P2.1, P2.2).

 One side of each push-button is connected to +5V, and the other to the I/O pin
with a 10kΩ pull-down resistor to ground.

 These buttons act as voting inputs—each button represents one candidate.

Step 5: Add a Buzzer (Optional)

 Connect a buzzer to an I/O pin (e.g., P3.7) through a transistor switch (e.g.,
BC547) and a current-limiting resistor.

 The buzzer gives audio feedback when a vote is cast.

Step 6: Password Entry (Optional Security)

 Connect a 4x3 or 4x4 matrix keypad to Port 0 or any free port pins for
password input.

 This is used to restrict access to vote result display.

Step 7: Connect Power Supply

 Use a 5V DC regulated power supply (battery or adapter).

 If using a transformer-based supply:

o Step-down transformer → Bridge rectifier → Filter capacitors → 7805


voltage regulator → 5V output.

Step 8: Final Check

 Check all connections for shorts or loose wires.

 Confirm all ground (GND) and Vcc lines are properly connected.

 Ensure I/O pins are not left floating (use pull-up or pull-down resistors as
needed).

 Load the embedded C program into the 8051 microcontroller using a


programmer.

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

Step 9: Testing

 Power on the circuit.

 The LCD should display the welcome message.

 Press a button to cast a vote and verify the LCD/buzzer response.

 End voting and check if results display correctly.

4.2 Software Code Overview

1. Include Header: #include<reg51.h>

2. Define Pins: Assign buttons and LCD pins using sbit.

3. Initialize LCD: Setup functions for LCD command and data.

4. Vote Counters: Declare variables like count1, count2, etc.

5. Main Loop:

 Show “Vote Now” on LCD.

 Detect button press.

 Increment respective vote count.

 Show “Vote Casted” message.

6. Optional Password: Verify before showing results.

7. Display Results: Show total votes on LCD.

8. Delay Function: For LCD timing and button debounce.

9. Tools: Keil µVision for coding, USBASP for burning.

4.3 Integration Process

1. Connect Components: Assemble 8051 microcontroller, LCD, push buttons, buzzer,


and power supply on a breadboard or PCB.

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

2. Interface I/O Devices: Connect voting buttons to input pins and LCD to output
pins of the microcontroller.

3. Program the Microcontroller: Write the voting logic in Embedded C and burn it
into the 8051 using a programmer (e.g., USBASP).

4. Power Up: Provide a regulated 5V supply to the system.

5. Test Functionality: Verify button presses register votes and LCD displays correct
messages and results.

6. Debug if Needed: Fix wiring or code issues and retest.

5. RESULTS AND DISCUSSION

5.1 Project in Working Condition (Screenshots/Images)

Below are images showcasing the successful implementation of the digital


thermometer project:

 Image 1: Press button 1 to start the evm machine

 Image 2: Next it displays the partys to vote,


 Press button 2,3,4,5 to vote for your desired party

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

Image 3: Press button 6 for the result

5.2 Testing Outputs

The project was tested under varying temperature conditions by manually heating and
cooling the LM35 sensor. The results are as follows:

Test Conditions for Output on LCD Vote Count


No. voting

1 Button 1 (Candidate 1) "Vote Casted" Candidate 1 =


1

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

2 Button 2 (Candidate 2) "Vote Casted" Candidate 2 =


1

3 Button 3 (Candidate 3) "Vote Casted" Candidate 3 =


1

4 Button 4 (Candidate 4) "Vote Casted" Candidate 4 =


1

5 No button pressed "Welcome - Vote No change


Now"

6 Button 5 (result) “Result shown” Result

These tests confirm that the LCD , 8051 Microcontroller , Push button switches and
all respond as expected.

5.3Analysis of Working

1. Input Mechanism

 Push buttons are used as inputs; each represents a different candidate.

 When a button is pressed, it sends a signal to the microcontroller.

2. Vote Processing

 The 8051 microcontroller detects which button is pressed.

 It increments the corresponding vote counter variable (e.g., count1, count2,


etc.).

 The logic ensures only one vote is registered per press using a delay/debounce
method.

3. User Feedback

 After a successful vote, the LCD displays “Vote Casted” to inform the user.

 A buzzer may also be triggered briefly for audio confirmation.

4. Result Access (Optional Security)

 Voting continues until manually stopped or a trigger is activated.


DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page
ELECTRONIC VOTING MACHINE
BEC405A

 Once voting ends, a password may be required to access the result display
(optional for security).

 If the correct password is entered, the system displays the final vote count for
each candidate on the LCD.

5. Output Display

 A 16x2 LCD displays real-time or final results clearly and reliably.

 Results are shown in a simple format like C1: 3 C2: 2 C3: 1.

6. System Reliability

 The voting machine operates in real-time with high accuracy.

 It reduces human error and makes vote casting quick and secure.

1. EXPENDITURE DETAILS

Sl.No. Component Quantity Unit Total


Cost (₹) Cost (₹)
1 Microcontroller(89c51) 1 80 80

2 Led 5 5 25

3 LCD Display(16x2) 1 95 95

4 4 pin Switch 1 40 40

5 40 pin Base 1 5 5

6 4007 diode 1 5 5

7 1000/25V 1 5 5

8 Jumper Wire 2 pairs 40 80

9 Breadboard 1 80 80

10 Pot 1 10 10
Total : 430

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

2. TIME SCHEDULE (GANTT CHART OR TABLE)

Week Activities Planned Status


1 Problem identification & literature survey Completed

2-3 Design and component selection Completed

4-5 Hardware assembly Completed

6-7 Coding and debugging Completed

8 Testing and documentation Completed

8. CONTRIBUTION

a. Individual Contributions

Member Role/Contribution

GANESH A B (1JT23EC034) Programming,documentation.

GIRIJA SHANKAR D M (1JT23EC035) Hardware assembly, Simulation

H B LIPIN (1JT23EC040) Microcontroller Design

b. Team Contributions

Joint Decision-Making

From the very beginning of the project, all major decisions—such as the selection of
components (89C51, LM35,LCD, MP1584), design of the circuit, and the
programming approach—were made collectively. Each team member contributed
ideas and insights, and decisions were finalized through consensus, ensuring everyone
was aligned and understood the overall project direction.

Regular Team Meetings

To keep the project on track, the team held regular meetings throughout the
development cycle. These meetings allowed us to review progress, assign tasks, share

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

learnings, and resolve any obstacles. Whether in person or virtually, consistent


communication helped maintain momentum and accountability.

Collaborative Debugging and Testing

Hardware troubleshooting and software debugging were approached as a team. For


instance, when the LCD initially failed to display data, multiple members collaborated
to trace wiring issues and adjust timing delays in the code. Similarly, during ADC
integration and buzzer threshold testing, the group worked together to isolate and
resolve logic and hardware errors. This collaborative effort strengthened our
understanding and reduced overall development time.

9. CONCLUSION

9.1 Project Achievements

The project successfully implemented a basic electronic voting machine using the
8051 microcontroller. It accurately registers votes through push buttons and provides
real-time feedback via an LCD display. The system includes optional password
protection for secure result access. All components were integrated effectively and
operated without errors during testing. The design is simple, low-cost, and user-
friendly. It demonstrates core concepts of embedded systems and can be scaled for
more advanced features.

9.2 Limitations

The project works well in basic conditions, but:

 It cannot store data permanently, as it lacks external memory like EEPROM.


 The system does not support multiple voting booths or large-scale elections.
 No biometric or voter ID verification is included for voter authentication.
 Limited to a fixed number of candidates due to I/O pin constraints.
 It is not tamper-proof or secure enough for real-world election use without
enhancements.

9.3 Future Scope

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page


ELECTRONIC VOTING MACHINE
BEC405A

To improve the project, we could:

 Integration of biometric authentication to ensure one person votes only once.


 Adding EEPROM or SD card for permanent vote data storage.
 Use of wireless modules (GSM/Bluetooth) for remote result transmission.
 Expansion to support more candidates and voters using multiplexing or
microcontroller upgrades.
 Enhancement of security features to make it suitable for official elections

10.REFERENCES

1. Mazidi, M. A., Mazidi, J. G., & McKinlay, R. D. (2006). The 8051


Microcontroller and Embedded Systems: Using Assembly and C (2nd ed.).
Pearson Education.

2. Keil. (n.d.). 8051 Development Tools Overview. Retrieved from


https://www.keil.com/

3. TutorialsPoint. (n.d.). Interfacing ADC0808 with 8051 Microcontroller.


Retrieved from https://www.tutorialspoint.com/interfacing-adc0808-with-
8051-microcontroller

DEPT.OF ELECTRONICS AND COMMUNICATION ENGINEERING Page

You might also like