0% found this document useful (0 votes)
44 views

Refrences

The document summarizes a practical training report on a mini voting machine submitted in partial fulfillment of a Bachelor of Technology degree. It describes the tools used including hardware components like a microcontroller, LCD display, LEDs, and control switches. It also discusses the software tools of Keil and Proteus used. The document outlines the flow diagram and block diagram of the mini voting machine. It provides details on the operation, software code, hardware design, advantages, and applications of the mini voting machine. It concludes with possibilities for future work and references.

Uploaded by

ADITYA GUPTA
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)
44 views

Refrences

The document summarizes a practical training report on a mini voting machine submitted in partial fulfillment of a Bachelor of Technology degree. It describes the tools used including hardware components like a microcontroller, LCD display, LEDs, and control switches. It also discusses the software tools of Keil and Proteus used. The document outlines the flow diagram and block diagram of the mini voting machine. It provides details on the operation, software code, hardware design, advantages, and applications of the mini voting machine. It concludes with possibilities for future work and references.

Uploaded by

ADITYA GUPTA
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/ 124

Practical Training Report

on

Mini Voting Machine


Submitted in partial fulfillment for the award of degree of
Bachelor of Technology
in
Department of Mechanical Engineering
(Aeronautical Engineering)

Submitted To: Submitted By:

Mr. Anshul Khandelwal Sir Aditya Gupta

Assistant Professor

Aeronautical Department Roll No. 20/481

Department of Mechanical Engineering


University Department,
Rajasthan Technical University, Kota
CERTIFICATE

laudable goal The model


where individual vendors
write proprietary code to run
our elections
appears to be unreliable, and
if we do not change the
process of designing our
voting systems,
we will have no confidence
that our election results will
reflect the will of the
electorate. We owe
it to ourselves and to our
future to have robust, well-

i
designed election systems to
preserve the
bedrock of our democracy

ii
ACKNOWLEDGEMENT

iii
I would like to thank our institute University Departments, Rajasthan
Technical University, Kota for giving us the opportunity to do training and
learn technical skills of our choice that would help in our placements.
I would also like to thank “Vikarm Genuine Technologies PVT. LTD.” to
give me this golden opportunity to learn and implement my skills in this
training period. Without their support, one cannot achieve this success.
I also wanted to thank my parents for financing my studies in this college as
well as for constantly encouraging me to learn Engineering. Their personal
sacrifice in providing this opportunity to learn Engineering is gratefully
acknowledged.

Aditya Gupta

ABSTRACT

iv
According to Election Data Services the percentage of mini voting machines per
county doubled between 2004 and 2008 to 16 percentage-, yet a full replacement
of the traditional voting procedure is very unlikely. In its essence, an mini voting
machine is a computer assisted self-interviewing device (CASI) giving the voter
the opportunity to review and change his/her vote before submitting it. The
different types of voting machines allow for different kinds of interaction, such as
using a touch screen technology, using a dial wheel, touching a paper panel, or
pressing a button on an LCD screen. Each machine provides feedback for blank
ballots and under-voting and prevents selecting more choices than the maximum
allowed. Some machines even have advanced functions such as increasing the font
for visually impaired voters and/or allowing for listening of the voting options
rather than reading. The common features mini voting machine s share with CASI
and ACASI devices allow for theoretical and empirical predictions of the
advantages and disadvantages this technology can provide. The paper presents an
overview of the different types of voting machines and based on established
theories and results from CASI and ACASI studies, examines and compares
characteristics of the machines currently used and computer-human interaction
mechanisms, their potential effects, and unexplored applications. Furthermore,
possibilities such as prediction of candidates’ name order effect, already existing
in the literature, and computer literacy effect on voting are discussed.

CONTENTS
LIST OF FIGURES:…………………………………………………….5

v
1.INTRODUCTION: ………………………………………………………..6

1.1 The Mini Voting Machine – An Electronic Marvel. ………………………...6

1.2 Description. ………………………………………………………………….6

2.TOOLS USED: ……………………………………………………………...9

2.1 Hardware Tools……………………………………………………………..9

2.2 Software Tools ……………………………………………………………..9

2.3 Proteus Software……………………………………………………………10

3.FLOW DIAGRAM: ……………………………………………………….11

4.BLOCK DIAGRAM…………………………………………………….…12

4.1.Description Of Block Diagram…………………………………………….13

5. OPERATION………………………………………………………………17

5.1 Operation or Working of Project: …………………………………………..17

6.SOFTWARE CODE:…………………………………………………….19

6.1 C code……………………………………………………………………….19

6.2 Proteus file………………………………………………………………….23

7.HARDWARE DESIGN…………………………………………………...24

8.ADVANTAGES AND APPLICATIONS…………………………........26

9.CONCLUSION AND FUTURE WORK: ……………………….…….27

10. REFRENCES…………………………………………………………….29

LIST OF FIGURES

vi
1. Flow Diagram …………………………………………………………..11
2. BLOCK DIAGRAM OF MINI VOTING MACHINE………………….12
3. Micro controller………………………………………………………….14
4. LCD………………………………………………………………………15
5. LED………………………………………………………………………16
6. Control switches………………………………………………………….16
7. Proteus File……………………………………………………………….24
8. Hardware Design………..………………………………………………..25

CHAPTER : 1

INTRODUCTION

vii
1.1 The Mini Voting Machine - An Electronic Marvel.

Mini Voting Machine (MVM) retains all the characteristics of voting by ballot
papers, while making polling a lot more expedient. Being fast and absolutely
reliable, the MVM saves considerable time, money and manpower. And, of
course, helps maintain total voting secrecy without the use of ballot papers. The
MVM is 100 per cent tamper proof. And, at the end of the polling, just press a
button and there you have the results.

1.2 Description:

Mini voting machine has now days become an effective tool for voting. It ensures
flawless voting and thus has become more widespread. It ensures people about
their vote being secured. It avoids any kind of malpractice and invalid votes. Also
such kind of system becomes more economical as consequent expenditure incurred
on manpower is saved. It is also convenient on the part of voter, as he has to just
press one key whichever belongs to his candidates.

voting machines are the total combination of mechanical, electromechanical, or


electronic equipment (including software, firmware, and documentation required
to program control, and support equipment), that is used to define ballots; to cast
and count votes: to report or display election results, and to maintain and produce
any audit trail information. The first voting machines were mechanical but it is
increasingly more common to use mini voting machines

A voting system includes the practices and associated documentation used to


identify system components and versions of such components; to test the system
during its development and maintenance; to maintain records of system errors or
defects; to determine specific changes made after initial certification; and to make
available any materials to the voter (such as notices, instructions, forms, or paper
ballots).

viii
Traditionally, a voting machine has been defined by the mechanism the system
uses to cast votes and further categorized by the location where the system
tabulates the votes.

Voting machines have different levels of usability, security, efficiency and


accuracy. Certain systems may be more or less accessible to all voters, or not
accessible to those voters with certain types of disabilities. They can also have an
effect on the public's ability to oversee elections.

CHAPTER:2

ix
TOOLS USED

2.1 HARDWARE TOOLS:

The control Unit: In Total control of the polling Conduction of polling, display of
total votes polled, sealing at the end of the poll, and finally. declaration of results -
these are the various accomplishments of just one gadget: the control unit. In total
control of the polling, this electronic unit gives you all necessary information at a
press of a few buttons. For instance, if you need to know the total number of votes,
you just have to press the Total switch. Candidates-wise results can be had only at
the end of polling.

The Ballot Unit: An electronic ballot box.

A simple voting device, it displays the list of candidates. A facility to incorporate


party names and symbols is in-built. All the voter has to do is press the desired
switch located next to the name of each candidate. The main advantage is the
speed, apart from the simplicity of operation, which requires no training at all. A
single ballot unit takes in the names of 16 candidates. And thus, by connecting
four ballot units the MVM can accommodate a total of 64 candidates in a single
election.

2.2 SOFTWARE TOOLS:

KEIL SOFTWARE:

The Keil 8051 Development Tools are designed to solve the complex problems
facing embedded software developers.

 When starting a new project, simply select the microcontroller you use from
the Device Database and the Vision IDE sets all compiler, assembler,
linker, and memory options for you.

x
 Numerous example programs are included to help you get started with the
most popular embedded 8051 devices.
 The Keil Vision Debugger accurately simulates on-chip peripherals (PC,
CAN, UART. SPI. Interrupts, I/O Ports, A/D Converter, D/A Converter,
and PWM Modules) of your 8051 device. Simulation helps you understand
hardware configurations and avoids time wasted on setup problems.
Additionally, with simulation, you can write and test applications before
target hardware is available.

PROTEUS SOFTWARE:

Proteus 7.0 is a Virtual System Modelling (VSM) that combines circuit simulation,
animated components and microprocessor models to co-simulate the complete
microcontroller bused designs. This is the perfect tool for engineers to test their
microcontroller designs before constructing a physical prototype in real time. This
program allows users to interact with the design using on-screen indicators and/or
LED and LCD displays and, is attached to the PC, switches and buttons.

One of the main components of Proteus 7.0 is the Circuit Simulation--a product
that uses a SPICE315 analogue simulator kernel combined with an event-driven
digital simulator that allow users to utilize any SPICE model by any manufacturer.

Proteus VSM comes with extensive debugging features, including breakpoints,


single stepping and variable display for a neat design prior to hardware
prototyping.

xi
In summary. Proteus 70 is the program to use when you want to simulate the
interaction between software running on a microcontroller and any analog or
digital electronic device connected to it.

Advantages:

Real time simulation.

Time and money saving

xii
CHAPTER : 3

FLOW DIAGRAM

xiii
CHAPTER: 4

BLOCK DIAGRAM OF MINI VOTING MACHINE

xiv
4.1 Description in detail:

1)Micro controller:

Micro controller senses the signal given from switches and decide the mode of
operation voting mode it increments the data for corresponding key i.e. respective
candidate as well as it sends signal to display block to indicate one key is pressed.
In counting mode micro controllers fetches data from memory location and send it

to display devices.

xv
2) LCD:

Liquid Crystal Display which is commonly known as LCD is an Alphanumeric


Display it means that it can display Alphabets, Numbers as well as special
symbols thus LCD is a user friendly Display device which can be used for
displaying various messages unlike seven segment display which can display only
numbers and some of the alphabets. The only disadvantage of LCD over seven
segment is that seven segment is robust display and be visualized from a longer
distance as compared to LCD. Here I have used 16 x 2 Alphanumeric Display
which means on this display I can display two lines with maximum of 16

characters in one line.

xvi
LED:

A light-emitting diode (LED) is a semiconductor light source. LEDs are used as


indicator lamps in many devices and are increasingly used for other lighting .
Light-emitting diodes are used in applications as diverse as replacements for
aviation lighting, automotive lighting (particularly brake lamps, turn signals and
indicators) as well as in traffic signals.

3) Control switches:

There are three control switches:

I. Clear Votes. II. Controller switch. III. Total Votes

xvii
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode

xviii
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate

xix
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for

xx
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
xxi
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the

xxii
screen, and total number of
votes to respective candidate
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.

xxiii
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
xxiv
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode

xxv
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting

xxvi
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
xxvii
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.

xxviii
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.

xxix
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:

xxx
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again

xxxi
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are

xxxii
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5

xxxiii
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by

xxxiv
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate
can be displayed on the
screen by

xxxv
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This

xxxvi
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode
xxxvii
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate

xxxviii
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for

xxxix
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
xl
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the

xli
screen, and total number of
votes to respective candidate
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.

xlii
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
i. Voting mode: toggle switch
on VCC
xliii
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.
Counting Mode: When toggle
switch is in counting mode

xliv
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.
4] Buzzer indication:
Pressing of key in voting

xlv
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5
OPERATION
5.1 Operation or
Working of Project:
1] Power on: When supply is
turned on RED LED glows.
2] Mode selection:
xlvi
i. Voting mode: toggle switch
on VCC
ii. Counting mode: toggle
switch on GND.
Voting Mode: When toggle
switch is in voting mode
“Voting mode” is displayed
followed by
“Please vote”. After a vote
being given, “Please wait for
authority switch” is displayed
and again
enable for voting after
Control switch being pressed
by the voting Authority.

xlvii
Counting Mode: When toggle
switch is in counting mode
“Counting mode” in
displayed on the
screen, and total number of
votes to respective candidate
can be displayed on the
screen by
pressing the respective key
assigned to them.
3] Clear mode: Press clear
switch when all entries are
required to be erased. Clear
switch should
be pressed before voting
procedure.

xlviii
4] Buzzer indication:
Pressing of key in voting
mode is indicated by a buzzer
sound.
5] Controller switch: This
switch is provided for
enabling the keypad in voting
mode. This
switch is under the control of
voting authority.
CHAPTER:5

OPERATION
5.1 Operation or Working of Project:

1] Power on:

When supply is turned on RED LED glows.

2] Mode selection:

i. Voting mode: toggle switch on VCC

ii. Counting mode: toggle switch on GND.

xlix
Voting Mode: When toggle switch is in voting mode “Voting mode” is displayed
followed by “Please vote”. After a vote being given, “Please wait for authority
switch” is displayed and again enable for voting after Control switch being pressed
by the voting Authority.

Counting Mode: When toggle switch is in counting mode “Counting mode” in


displayed on the screen, and total number of votes to respective candidate can be

displayed on the screen by pressing the respective key assigned to them.

3] Clear mode: Press clear switch when all entries are required to be erased.
Clear switch should be pressed before voting procedure.

4] Buzzer indication: Pressing of key in voting mode is indicated by a buzzer


sound.

5] Controller switch: This switch is provided for enabling the keypad in voting
mode. This switch is under the control of voting author

l
CHAPTER:6

SOFTWARE CODE

6.1 C code:

include<stdio.h>

#define CANDIDATE_COUNT

#define CANDIDATE1 "David Hull"

#define CANDIDATE2 "Kristin Canella"

#define CANDIDATE3 "Jim Brar"

#define CANDIDATE4 "Donald Truimph"

li
int votesCount1=0, votesCount2=0, votesCount3=0, votesCount4=0,
spoiledtvotes=0;

void castVote(){

int choice;

printf("\n\n ### Please choose your Candidate ####\n\n");

printf("\n 1. %s", CANDIDATE1);

printf("\n 2. %s", CANDIDATE2);

printf("\n 3. %s", CANDIDATE3);

printf("\n 4. %s", CANDIDATE4);

printf("\n 5. %s", "None of These");

printf("\n\n Input your choice (1 - 4) : ");

scanf("%d",&choice);

switch(choice){

case 1: votesCount1++; break;

case 2: votesCount2++; break;

case 3: votesCount3++; break;

case 4: votesCount4++; break;

case 5: spoiledtvotes++; break;

default: printf("\n Error: Wrong Choice !! Please retry");

lii
//hold the screen

getchar();

printf("\n thanks for vote !!");

void votesCount(){

printf("\n\n ##### Voting Statics ####");

printf("\n %s - %d ", CANDIDATE1, votesCount1);

printf("\n %s - %d ", CANDIDATE1, votesCount2);

printf("\n %s - %d ", CANDIDATE1, votesCount3);

printf("\n %s - %d ", CANDIDATE1, votesCount4);

printf("\n %s - %d ", "Spoiled Votes", spoiledtvotes);

void getLeadingCandidate(){

printf("\n\n #### Leading Candiate ####\n\n");

if(votesCount1>votesCount2 && votesCount1>votesCount3 && votesCount1


>votesCount4)

printf("[%s]",CANDIDATE1);

else if (votesCount2>votesCount3 && votesCount2>votesCount4 &&


votesCount2 >votesCount1)

printf("[%s]",CANDIDATE2);

liii
else if(votesCount3>votesCount4 && votesCount3>votesCount2 &&
votesCount3 >votesCount1)

printf("[%s]",CANDIDATE3);

else if(votesCount4>votesCount1 && votesCount4>votesCount2 &&


votesCount4 >votesCount3)

printf("[%s]",CANDIDATE4);

else

printf("----- Warning !!! No-win situation----");

int main()

int i;

int choice;

do{

printf("\n\n ###### Welcome to Election/Voting 2019 #####");

printf("\n\n 1. Cast the Vote");

printf("\n 2. Find Vote Count");

printf("\n 3. Find leading Candidate");

printf("\n 0. Exit");

liv
printf("\n\n Please enter your choice : ");

scanf("%d", &choice);

switch(choice)

case 1: castVote();break;

case 2: votesCount();break;

case 3: getLeadingCandidate();break;

default: printf("\n Error: Invalid Choice");

}while(choice!=0);

//hold the screen

getchar();

return 0;

lv
6.2 PROTEUS FILE:

lvi
CHAPTER : 7

HARDWARE DESIGN

lvii
CHAPTER:7
HARDWARE
DESIGN
CHAPTER:7
HARDWARE
DESIGN

lviii
CHAPTER:8

ADVANTAGES AND APPLICATIONS

ADVANTAGES:
1.It is economical
2. Less manpower required
3. Time conscious, as less time required for voting & counting
4. Avoids invalid voting
5. Saves transportation cost due to its compact size
6. Convenient on the part of voter

lix
APPLICATIONS:
This could be used for voting purpose at any required place.

CHAPTER:9

CONCLUSION AND FUTURE WORK

In this paper, we have described the specification and architecture of a Mini


Voting Machine. Various fault-tolerance and security issues are delegated to the
platform itself, therefore relieving the application designer from accommodating
these features in the application design itself. This approach allows for the easy
development and deployment of applications.

For quite some time, voting equipment vendors have maintained that their systems
are secure, and that the closed-source nature makes them even more secure. Our
glimpse into the code of such a system reveals that there is little difference in the
way code is developed for voting machines relative to other commercial
endeavors. In fact, we believe that an open process would result in more careful
development, as more scientists, software engineers, political activists, and others
who value their democracy would be paying attention to the quality of the
software that is used for their elections.

lx
Such open design processes have proven successful in projects ranging from very
focused efforts, such as specifying the Advanced Encryption Standard (AES) [23],
through very large and complex systems such as maintaining the Linux operating
System. Australia is currently using an open source voting system10Alternatively,
security models such as the voter-verified audit trail allow for electronic voting
systems that produce a paper trail that can be seen and verified by a voter. In such
a system, the correctness burden on the voting terminal’s code is significantly less
as voters can see and verify a physical object that describes their vote.

Even if, for whatever reason, the machines cannot name the winner of an election,
then the paper ballots can be recounted, either mechanically or manually, to gain
progressively more accurate election results. Voter-verifiable audit trails are
required in some U.S. states, and major DRE vendors have made public statements
that they would support such features if their customers required it.

The MVM project an ambitious attempt to create an open-source voting system


with a voter-verifiable audit trail a laudable goal The model where individual
vendors write proprietary code to run our elections appears to be unreliable, and if
we do not change the process of designing our voting systems, we will have no
confidence that our election results will reflect the will of the electorate. We owe it
to ourselves and to our future to have robust, well-designed election systems to
preserve the bedrock of our democracy

lxi
REFRENCES

1. ISO/IEC 9899:2011 “Programming Languages. C” (The “C11”);


2. ISO/IEC 9899:1999 “Programming Languages. C” (The “C99”);
3. ISO/IEC 9899:1990 “Programming Languages. C” (The “C90”).
4. C Specifications
5. ISO/IEC 14882:2011 “Programming Language. C” (The “C11”, version 3).
6. ISO/IEC 14882:2003 “Programming Language. C” (The “C03”, version 2).
7. ISO/IEC 14882:1998 “Programming Language. C” (The “C98”, version 1).

C Textbooks
1. Kernighan and Ritchie “The C Programming Language”, 2nd ed, 1988, (The
“K&R”. The Bible for the C language).
2. Plauger, “The Standard C Library”, 1992.
3. Bjarne Stroustrup (Creator of C), “The C Programming Language”, 4 th ed,
2012. (Covers C11.)

lxii
4. Nicolai M Josuttis, “The C Standard Library: A Tutorial and Reference”,
2nd ed, 2012.
5. Bjarne Stroustrup, “The Design and Evolution of C”.
6. Stephen Prata, “C Primer Plus Developer’s Library”, 6 th ed, Addison-
Wesley, 2012. (Covers C11.)
7. Paul Deitel & Harvey Deitel, “C How to Program”, 8 th ed, Prentice Hall,
2012.
8. Stanley B. Lippman, Josee Lajoie, Barbara E Moo “C Primer”, 5 th ed, 2012.
(Covers C11.)
9. Scott Meyers, “Effective C: 55 Specific Ways to Improve your Programs
and Design”, 3rd ed, 2005; “Effective STL: 50 Specific Ways to Improve
your use of the Standard Template Library”, 2001.
10. Herb Sutter, “Exceptional C: 47 Engineering Puzzles, Programming
Problems and Solutions”, 1999; “More Exceptional C: 40 New Engineering
Puzzles, Programming Problems and Solution”, 2001.
11. Gary J. Bronson, “Program Development and Design using C”.
12. Robert C. Seacord, “Secure Coding in C and C”, 2nd ed, 2013.

Online References
1. http://www.cprogramming.com (C documents, tutorials, and references).
2. GNU GCC (GNU Compiler Collection) @ http://gcc.gnu.org, with source
codes.
3. Bjarne Stroustrup’s C11 FAQ @ http://www.stroustrup.com/C11FAQ.html.

CHAPTER:7
HARDWARE D
lxiii
CHAPTER:7
HARDWARE
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
lxiv
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);

lxv
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
lxvi
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
lxvii
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
lxviii
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
lxix
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
lxx
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
lxxi
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
lxxii
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;

lxxiii
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);

lxxiv
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
lxxv
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
lxxvi
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
lxxvii
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
lxxviii
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
lxxix
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
lxxx
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
lxxxi
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;

lxxxii
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);

lxxxiii
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
lxxxiv
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
lxxxv
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
lxxxvi
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
lxxxvii
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
lxxxviii
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
lxxxix
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
xc
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;

xci
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);

xcii
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
xciii
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
xciv
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
xcv
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
xcvi
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
xcvii
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
xcviii
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
xcix
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;

c
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);

ci
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
cii
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
ciii
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
civ
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
cv
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
cvi
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
cvii
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
cviii
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;

cix
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);

cx
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
cxi
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
cxii
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
cxiii
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
cxiv
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
cxv
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
cxvi
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
cxvii
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;

cxviii
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);

cxix
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
delay(10);
lcdcmd(0x0e) ;
cxx
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
void main()
{ on=0;
P1=0;P3=0;
while(1)
{
lcdcmd(0x38);
cxxi
delay(10);
lcdcmd(0x0e) ;
delay(10);
lcdcmd(0x01);
lcdcmd(0x06) ;
delay(20) ;
if(n==1)
on=1;
if(m==1&on==1)
{
if (input==0x01)
{
According to Election Data Services the percentage of mini
voting machine s per county doubled between 1998 and 2002 to
16 percent-, yet a full replacement of the traditional voting
procedure is very unlikely. In its essence, an mini voting
machine is a computer assisted self-interviewing device (CASI)
giving the voter the opportunity to review and change his/her
vote before submitting it. The different types of voting
machines allow for different kinds of interaction, such as using
a touch screen technology, using a dial wheel, touching a paper
panel, or pressing a button on an LCD screen. Each machine

cxxii
provides feedback for blank ballots and under-voting and
prevents selecting more choices than the maximum allowed.
Some machines even have advanced functions such as
increasing the font for visually impaired voters and/or allowing
for listening of the voting options rather than reading. The
common features mini voting machine s share with CASI and
ACASI devices allow for theoretical and empirical predictions
of the advantages and disadvantages this technology can
provide. The paper presents an overview of the different types
of voting machines and based on established theories and
results from CASI and ACASI studies, examines and compares
characteristics of the machines currently used and computer-
human interaction mechanisms, their potential effects, and
unexplored applications. Furthermore, possibilities such as
prediction of candidates’ name order effect, already existing in
the literature, and computer literacy effect on voting are

county doubled between


discus

1998 and 2002 to 16 percent-,


yet a full replacement of the
traditional
voting procedure is very

cxxiii

You might also like