Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
5 views10 pages

DLD Assignment

The document outlines a project for a Digital Logic Design Lab focused on creating a home security system using a seven-segment display controlled by an Arduino microcontroller. It details the objectives, design approach, implementation code, and simulation results, demonstrating successful digit display from 0 to 9. Challenges faced included wiring issues and brightness adjustments, with future improvements suggested for efficiency and complexity.

Uploaded by

quickaccess14
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)
5 views10 pages

DLD Assignment

The document outlines a project for a Digital Logic Design Lab focused on creating a home security system using a seven-segment display controlled by an Arduino microcontroller. It details the objectives, design approach, implementation code, and simulation results, demonstrating successful digit display from 0 to 9. Challenges faced included wiring issues and brightness adjustments, with future improvements suggested for efficiency and complexity.

Uploaded by

quickaccess14
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/ 10

University of Information Technology and Sciences

Department of CSE

Complex Engineering Project


Course Code CSE0612216S

Course Title Digital Logic Design Lab

Project No. 01

Project Title Home Security System(via alarm)

Submission Date 04/06/25

Submitted by: Submitted to:

Name : sayeed zubayer mahmud

ID No : 0432410005101115 Name: Ratri Datta


Lecturer, Dept. of CSE, UITS
Batch : CSE-55th

Section : C1
1. Introduction

Problem Statement

A seven-segment display is a widely used electronic component for displaying numerical digits (0-9) and some
alphabetic characters. Each segment consists of an LED that can be individually controlled to form different
digits. The challenge is to design a circuit using an Arduino microcontroller to correctly illuminate the segments
to display numbers from 0 to 9.

Objectives

• To understand the working principle of a seven-segment display.


• To design a circuit that interfaces a seven-segment display with an Arduino.
• To write an Arduino program to control the display of digits (0-9).
• To simulate and verify the circuit using Tinkercad.

Arduino Code:

• Define segment pins in an array.


• Create a lookup table (array) for each digit’s segment configuration.
• Loop through digits 0-9 with a delay between each.
• Sample Arduino Code (Common Cathode):

3. Circuit Diagram
Pin Connections:

Arduino Pin Seven-Segment


Pin

2 a
3 b
4 c
5 d
6 e
7 f
8 g

4. Design Approach

Truth Table (Common Cathode)

Each digit (0-9) requires specific segments to be turned ON (1) or OFF (0).
5. Implementation (Code Explanation)
Arduino Code:

unsigned const int A = 13;


unsigned const int B = 12;
unsigned const int C = 11;
unsigned const int D = 10;
unsigned const int E = 9;
unsigned const int F = 8;
unsigned const int G = 7;
unsigned const int H = 6;

void setup(void)
{
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(H, OUTPUT);
}

//My Functions

void zero(void)
{ digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void one(void)
{ digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void two(void)
{ digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, LOW);
digitalWrite(H, LOW);
}

void three(void)
{ digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void four(void)
{ digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void five(void)
{ digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void six(void)
{ digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void seven(void)
{ digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void eight(void)
{ digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}

void nine(void)
{ digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(H, LOW);
}
// Start void
loop(void)
{ zero();
delay(1000);

one();
delay(1000);

two();
delay(1000);

three();
delay(1000);

four();
delay(1000);

five();
delay(1000);
six();
delay(1000);

seven();
delay(1000);

eight();
delay(1000);

nine();
delay(1000);
}

6. Simulation Results Observations:


• The seven-segment display successfully cycles through digits 0-9.
• Each digit is displayed clearly with the correct segments lit. Output Screenshots:
7. Conclusion
Challenges Faced:
• Incorrect wiring initially caused some segments not to light up.
• Had to adjust resistor values to ensure proper brightness.
Learning Outcomes:
• Gained hands-on experience in interfacing a seven-segment display with Arduino.
• Learned how to use truth tables for digital logic control.
• Improved skills in circuit simulation using Tinkercad. Future Improvements:
• Use a shift register to reduce the number of Arduino pins used.
• Implement a 4-digit seven-segment display for more complex applications.

You might also like