0% found this document useful (0 votes)
39 views7 pages

Mini Project

This project report details the design and implementation of a Digital Kabaddi Scoreboard using the AT89S52 microcontroller, aimed at improving scorekeeping accuracy in the sport. Key features include automatic score updates, player count management, and adherence to Kabaddi rules, all displayed on 7-segment displays. The system was successfully tested using Proteus simulation, demonstrating reliable functionality and error-free operation.
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)
39 views7 pages

Mini Project

This project report details the design and implementation of a Digital Kabaddi Scoreboard using the AT89S52 microcontroller, aimed at improving scorekeeping accuracy in the sport. Key features include automatic score updates, player count management, and adherence to Kabaddi rules, all displayed on 7-segment displays. The system was successfully tested using Proteus simulation, demonstrating reliable functionality and error-free operation.
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/ 7

Design and Implementation of a Digital Kabaddi Scoreboard Using AT89S52 Microcontroller

Mini-Project Report
Submitted by: Malavika

M.Harshavardhan B231060EC

M.Mohan Sandeep B231066EC

Department of Electronics and Communication Engineering


National Institute of Technology, Calicut
Date of Submission: March 26, 2025

1. INTRODUCTION
Kabaddi is a fast-paced sport requiring real-time scorekeeping for efficient game management.
Traditional manual scoreboards are prone to human errors, leading to misinterpretation of match
outcomes. This project aims to design a Digital Kabaddi Scoreboard using the AT89S52
microcontroller, where scores and player counts automatically update based on button inputs for
different scoring events.

Key Features of the Scoreboard:


• 7-segment displays to show:
o Team scores (0-99)
o Active player count (0-7)
• Automatic rule enforcement, including:
o Player elimination upon an opponent's score
o Bonus points when an opponent has 6 or 7 players
o All Out rule, where all players are restored after elimination
• Debouncing technique for smooth button response
• Proteus simulation to test the design before hardware implementation

2. MATERIALS REQUIRED
Component Specification/Quantity Purpose

AT89S52 Microcontroller 1 Controls scoreboard logic

7-Segment Display (Common Displays team scores and player


4 (2 per team)
Anode) counts

7447 BCD-to-7-Segment Converts BCD output to drive 7-


2
Decoder segment displays

Push Buttons 5 Inputs for score, bonus, and reset

10kΩ (pull-down), 330Ω (for


Resistors Used for circuit stability
LEDs)
Capacitors 10µF, 0.1µF Used for debouncing and filtering

Provides clock signal for


Crystal Oscillator 11.0592 MHz
microcontroller

Provides necessary voltage for the


Power Supply 5V DC
circuit

Breadboard / PCB 1 Used for circuit assembly

Connecting Wires As required Used for circuit connections

3. OBJECTIVES

3.1 Technical Objectives


• Develop a real-time digital scoreboard using AT89S52.
• Implement automatic scoring logic based on Kabaddi rules.
• Display scores and player counts using 7-segment displays.
• Ensure smooth button response via software debouncing.
• Validate functionality using Proteus simulation before deployment.

3.2 Practical Objectives


• Improve game management with an error-free automatic scoreboard.
• Reduce reliance on manual scorekeeping, minimizing human errors.
• Provide hands-on embedded systems experience through real-world application.

4. BACKGROUND

4.1 The Game of Kabaddi


Kabaddi is a team sport played between two teams of seven players each. The objective is to tag
opponents and return safely without being tackled. The following rules affect the scoreboard:
• Each successful raid earns 1 point, and an opponent player is eliminated.
• When a team loses all its players, the opponent gets 2 extra points (All Out), and the eliminated
team is restored to 7 players.
• Bonus points are awarded when the opponent has 6 or 7 players, but these do not reduce the
opponent’s player count.

4.2 AT89S52 Microcontroller


The AT89S52 is an 8-bit microcontroller with 40 pins, commonly used in embedded applications. It
features:
• 4 I/O ports (P0-P3)
• On-chip RAM and ROM
• Timer and counter functionalities
• Serial communication support
This microcontroller is ideal for our scoreboard due to its multiple I/O pins and ease of interfacing
with 7-segment displays and push buttons.
5. METHODOLOGY

5.1 System Overview


The system consists of:
• AT89S52 Microcontroller → Processes inputs and updates displays.
• Push Buttons → Inputs for scoring, bonus points, and reset.
• 7-Segment Displays (Common Anode) → Shows scores and player counts.
• 7447 BCD-to-7-Segment Decoder → Converts BCD data to drive the display.

5.2 Circuit Connections

Microcontroller Pin Connected To Function

P3.0 Score_TeamA Button Increases Team A's score

P3.1 Bonus_TeamA Button Adds a bonus point for Team A

P3.2 Score_TeamB Button Increases Team B's score

P3.3 Bonus_TeamB Button Adds a bonus point for Team B

P3.4 Reset Button Resets the scores and players

P2 7447 IC (Score Displays) Sends BCD data for scores

P1 7447 IC (Player Displays) Sends BCD data for players

5.3 Software Implementation


The program is written in Embedded C and compiled using Keil C.

#include <reg51.h>

sbit Score_TeamA = P3^0;

sbit Bonus_TeamA = P3^1;

sbit Score_TeamB = P3^2;

sbit Bonus_TeamB = P3^3;

sbit Reset_Button = P3^4;

unsigned char scoreA = 0, scoreB = 0;

unsigned char playersA = 7, playersB = 7;

void UpdateDisplay() {

P2 = ((scoreA / 10) << 4) | (scoreA % 10);

P0 = ((scoreB / 10) << 4) | (scoreB % 10);

P1 = ((playersA & 0x0F) << 4) | (playersB & 0x0F);


}

void Delay(unsigned int time) {

unsigned int i, j;

for(i = 0; i < time; i++)

for(j = 0; j < 1275; j++);

void ResetGame() {

scoreA = 0;

scoreB = 0;

playersA = 7;

playersB = 7;

UpdateDisplay();

void TeamAScores() {

if (scoreA < 99) scoreA++;

if (playersB > 0) playersB--;

if (playersB == 0) {

scoreA += 2;

playersB = 7;

UpdateDisplay();

void TeamABonus() {

if (playersB == 6 || playersB == 7) {

if (scoreA < 99) scoreA++;

UpdateDisplay();

}
}

void TeamBScores() {

if (scoreB < 99) scoreB++;

if (playersA > 0) playersA--;

if (playersA == 0) {

scoreB += 2;

playersA = 7;

UpdateDisplay();

void TeamBBonus() {

if (playersA == 6 || playersA == 7) {

if (scoreB < 99) scoreB++;

UpdateDisplay();

void main() {

P2 = 0x00;

P0 = 0x00;

P1 = 0x00;

while(1) {

if (Reset_Button == 0) {

Delay(50);

if (Reset_Button == 0) {

ResetGame();

while (Reset_Button == 0);

}
}

if (Score_TeamA == 0) {

Delay(50);

if (Score_TeamA == 0) {

TeamAScores();

while (Score_TeamA == 0);

if (Bonus_TeamA == 0) {

Delay(50);

if (Bonus_TeamA == 0) {

TeamABonus();

while (Bonus_TeamA == 0);

if (Score_TeamB == 0) {

Delay(50);

if (Score_TeamB == 0) {

TeamBScores();

while (Score_TeamB == 0);

if (Bonus_TeamB == 0) {

Delay(50);

if (Bonus_TeamB == 0) {

TeamBBonus();

while (Bonus_TeamB == 0);


}

6. RESULTS AND DISCUSSION


The system accurately updated scores and player counts based on button inputs. The 7-segment
displays correctly reflected the game status, ensuring smooth and reliable functionality. The All Out
and bonus point rules were successfully implemented. Testing validated that the scoreboard
functioned without errors, demonstrating high accuracy in scorekeeping.

7. OBSERVATION
The digital scoreboard responded efficiently to inputs, with no noticeable delays. The debouncing
technique effectively prevented false triggers. The Proteus simulation closely matched real-world
performance.

You might also like