Voting Machine Using 89c51 Essay
MICROCONTROLLER PROJECT LCD based Voting Machine GROUP MEMBERS: Abhishek D. Bhendale(301007) Akshay R. Bhosle(301008) Prateek Vijay Chaudhari(301013) Abstract Electronic Voting Machines (“EVM”) are being used in Indian General and State Elections to implement electronic voting in part from 1999 elections and in total since 2004 elections. The EVMs reduce the time in both casting a vote and declaring the results compared to the old paper ballot system. Here we present a LCD based voting machine circuit. This cost efficient and reliable circuit can be used at lower scale where number of candidates are four.
It can used in places like schools, colleges or offices. The circuit uses AT89C51microcontroller and 16*2 LCD display. A user can get his/her vote register through a set of switches (one for each candidate) After every cast of vote, the subsequent count can be seen on LCD. Table of Contents Serial No. | Topic| Page No. | 1. | Introduction| 4| 2. | Circuit Description * Selection of Display Device and Microcontroller * Introduction to 89C51 * Pin Configuration of 89C51 * Introduction to LCD display (16*2)| 56789| 3. | Code| 11| 4. | Observations| 22| 5. | Layout| 25| 6. Applications| 26| 7. | Conclusion| 27| 8. | References| 27| Introduction Electronic voting machine has now replaced the traditional mechanism of voting due to several advantages like security, automatic counting etc. This project presents a way to develop an electronic voting machine which displays the count of votes on a 16×2 LCD interface. A user can get his/her vote register through a set of switches (one for each candidate). After every cast of vote, the subsequent count can be seen on LCD. The circuit uses AT89C51microcontroller and the code for the project has been written in C language.
The voting is started by pressing the Init switch after which the user is prompted to vote. The count of votes is stored in four different variables. As soon as the user votes for a candidate by pressing one of the switches, the value of the corresponding variable is increased by one. After this a Thank you message is displayed on LCD to acknowledge the registration of user’s vote. The message stays on the screen until the next user either presses the Init button to cast another vote or Stop switch is pressed get the poll results.
When the stop button is pressed, the names of the candidates are displayed along with their vote counts. After some delay, the result is displayed which could be either declaration of the winner candidate or the candidates with a clash of their number of votes. Circuit Description Figure 1: Circuit Diagram This LCD based electronic voting machine is designed for four candidates. The input part consists of a set of six tactile switches. The switches and 16×2 LCD are interfaced to microcontroller AT89C51 for various operations and displays. Selection of Display Device & Microcontroller:
Most projects that you create with the 8051 CPU require some form of display. The most common way to accomplish this is with the use of an LCD (Liquid Crystal Display). Alphanumeric Liquid Crystal Displays allow a better user interface, with text messages to enter the instructions and get the response in the form of text and know in better manner what the machine is doing, including its diagnostic information. This also helps in fault-findings and debugging. The main advantage of LCD displays is their low power consumption and the speed with which the displayed information is updated.
It must be justified however when somebody goes for LCD’s over LED display, LED’s consume more power but they are better when the intensity of display is important. For example, just to display some temperature value on a digital thermometer, LED may be a choice if no power limitations are there. However, alphanumeric capability of LCD display is one, which makes them more suitable for giving text messages and better user interaction. The use of LCD controller IC’s provide an easy interface solution with only 12 microcontroller pins. Further using a 4-bit data transferring mode can reduce this to 8 lines.
Serial interface is another option that can reduce the number of microcontroller pins needed for LCD interface significantly. Introduction to 89C51: The AT89C51 is a low power, high performance CMOS 8-bit microcomputer with 4K bytes of Flash programmable and erasable read only memory (PEROM). It uses Harvard architecture. It has features such as: 4K byte of Flash, 128 bytes of RAM, 32 I/O lines, two 16-bit timers/counters, a five vector, two-level interrupt architecture, a full duplex serial port, on-chip oscillator and clock circuitry. It also supports two software selectable power saving mode: the Idle mode and the Power-down mode.
Figure 2:Block Diagram of 89C51 Pin Configuration of 89C51: Figure 3 The provision of casting votes for the candidates has been provided through four of these switches. These switches are made active high and connected to pins 2-5 (P1^1 – P1^4) of the controller. The remaining two switches (both active low) are to start and stop the voting procedure. They are connected to pins 1 and 6 (P1^0 and P1^5) respectively. The Init (start) switch initializes the voting system when pressed, while the Stop switch ends the voting and displays the poll results on LCD screen.
The data pins of the LCD (pins 7-14) are connected to the output port P2 of the microcontroller. The control pins (RS, R/W and EN) are connected to port P3 pins P3^0, P3^1 & P3^6 respectively. Introduction to LCD Display : LCD Displays are widely used in account of their low power consumption. Also they can display any character as they use a 5? 7 dot matrix to display. An LCD allows the user to output a specific message making the application more user friendly and attractive. They are invaluable for displaying status messages and information while a program is being executed or debugged.
After execution of this program we get the following output in proteus simulation software: Step1: Figure 5 Step2: Figure 6 Step 3: Figure 7 Step 4: Figure 8 Step 5: Figure 9 Taking care of clash condition: Figure [ 1 ]0 Figure 11 Layout Circuit is assembled on fibre glass copper clad with manual arrangement. Figure [ 3 ]0: Ready Circuit Applications The main application of our project is to develop low cost voting machine that can be used in several institutions and can also be manufactured on a large scale for major purpose use. This voting machine can also be installed in public places and updated according to current news.
It can be used to get instant results also. Also the LCD used in our project has innumerable applications. They are used in function generators, power supplies, multimeters, RF generators and other such devices to display values of different circuit parameters. Also more number of candidates can also be added in our voting machine according to the requirement of the user. Conclusion It was found out that the code was successfully compiled using keil and required results were obtained in proteus simulation. Thus the entire process of writing the code to proteus simulation was completed.
It was found out that using LCD interfacing and proper coding a large number of different programs can be implemented. The last step is to manufacture the pcb for the project and eliminate all the hardware errors. References * Muhammad Ali Mazidi, Janice Gillispie Mazidi, Rolin D. McKinlay: The 8051 Microcontroller and Embedded Systems. * Dr. Ajay Deshmukh: Microcontroller Theory & Application Tata M/c Graw Hill. * Kenneth J. Ayala: The 8051 Microcontroller architecture, programming and applications * Internet * Computer Softwares: 1) Proteus 7 Professional 2) Keil