0% found this document useful (0 votes)
22 views6 pages

Iot 5

The document describes an experiment using an Arduino Uno to interface with a seven segment display and create a basic traffic light controller. It includes the aim, hardware requirements of an Arduino Uno, seven segment display and LEDs, the circuit diagram created in TinkerCad, and the Arduino code to define the segment pins, print numbers on the display, and turn on the appropriate color LED (red, yellow, or green) based on the number displayed and time delays. The student learned about interfacing with seven segment displays, establishing pin connections, and printing messages based on time durations.

Uploaded by

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

Iot 5

The document describes an experiment using an Arduino Uno to interface with a seven segment display and create a basic traffic light controller. It includes the aim, hardware requirements of an Arduino Uno, seven segment display and LEDs, the circuit diagram created in TinkerCad, and the Arduino code to define the segment pins, print numbers on the display, and turn on the appropriate color LED (red, yellow, or green) based on the number displayed and time delays. The student learned about interfacing with seven segment displays, establishing pin connections, and printing messages based on time durations.

Uploaded by

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

Worksheet 2.1.

Student Name: Prerna Kumari UID: 22MCA20480


Branch: MCA Section/Group: 22MCA-2/A
Semester: 4th Date of Performance: 29-02-2024
Subject Name: IoT Subject Code: 22CAH-751

1. Aim/Overview of the practical: (For Even UIDs)


Interface an Arduino Uno with seven segment display and try to work it as a traffic controller using Red, Green,
and Yellow LEDs.

(a) Seven segments will show the count and turn on the lights accordingly.

Hardware Requirements

Software requirements
Arduino IDE built in TinkerCad
3. Circuit Diagram(TinkerCad):

Coding:
int disp_pin[7]; const
int ledPin1 = 5; const int
ledPin2 = 4; const int
ledPin3 = 3;
void define_segment_pins(int a, int b, int c, int d, int e, int f, int g)
{
disp_pin[0] = a;
disp_pin[1] = b; disp_pin[2]
= c; disp_pin[3] = d;
disp_pin[4] = e; disp_pin[5]
= f;
disp_pin[6] = g;
}
void printNum(int num)
{
switch(num)
{
case 0:
digitalWrite(disp_pin[0], LOW);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break;
case 1:
digitalWrite(disp_pin[0], LOW);
digitalWrite(disp_pin[1], LOW);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], LOW);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], LOW);
break; case
2:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], LOW);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break; case 3:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], LOW);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break; case 4:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], LOW);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], LOW); break;
case 5:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], LOW);
digitalWrite(disp_pin[6], HIGH);
break; case 6:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], LOW);
digitalWrite(disp_pin[6], HIGH);
break; case 7:
digitalWrite(disp_pin[0], LOW);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], LOW);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break; case 8:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], HIGH);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break; case
9:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], HIGH);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], HIGH);
digitalWrite(disp_pin[4], HIGH);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], HIGH);
break; default:
digitalWrite(disp_pin[0], HIGH);
digitalWrite(disp_pin[1], LOW);
digitalWrite(disp_pin[2], LOW);
digitalWrite(disp_pin[3], LOW);
digitalWrite(disp_pin[4], LOW);
digitalWrite(disp_pin[5], HIGH);
digitalWrite(disp_pin[6], LOW);
break;
}
}

void setup() { pinMode(6, OUTPUT);


pinMode(7, OUTPUT);
pinMode(8, OUTPUT); pinMode(9,
OUTPUT); pinMode(10, OUTPUT);
pinMode(11, OUTPUT); pinMode(12,
OUTPUT); pinMode(4, OUTPUT);
pinMode(5, OUTPUT); pinMode(3,
OUTPUT);
define_segment_pins(12,11,10,9,8,7,6);
}
void loop()
{
int i;
for(i=0; i<=9; i++)
{
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
if(i==0||i==1||i==2)
{
printNum(i); digitalWrite(ledPin1,
HIGH); delay(1000);
}
else if(i==3||i==4||i==5)
{
printNum(i);
digitalWrite(ledPin2, HIGH);
delay(1000);
}
else if(i==6||i==7||i==8||i==9)
{
printNum(i);
digitalWrite(ledPin3, HIGH);
delay(1000);
}
}}

5. Learning outcomes (What I have learnt):


1. Collect knowledge about 7 segment display.
2. Establish their connection and setup their pins.
3. Print message based on time duration.

You might also like