0% found this document useful (0 votes)
10 views23 pages

Arduino 2410405

Uploaded by

ngongoquychinh
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)
10 views23 pages

Arduino 2410405

Uploaded by

ngongoquychinh
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/ 23

I. Họ và tên, MSSV, lớp.

 Ngô Quý Chính


 2410405
 L08

II. Video demo cho từng bài


 Tổng hợp từ 4.1 đến 4,10
https://drive.google.com/drive/folders/
1A_VJ4WnP_qaOc61eW9v7CXC9AioSjqMo?usp=drive_link

 Riêng cho từng bài


4.1 Two Toggling LEDs
https://drive.google.com/file/d/1NRYVF2VZkmfW2bmIv6Ng1xmaItYPR6yG/view?
usp=drive_link

4.2 Multiple Blinking LED

https://drive.google.com/file/d/11xQYtPZALCMUrzAEazgfc2C6jNbp_6Eg/view?
usp=drive_link

4.3 Seven Segment LED

https://drive.google.com/file/d/11xlM_WfqGZnaXZfMVzkfe2miWqE8oXvQ/view?
usp=drive_link

4.4 Two Digit Number

https://drive.google.com/file/d/11ykOhPOGrGmvw9qYfQ16eCOC5Kgyo20P/view?
usp=drive_link

4.5 One Way Traffic Light

https://drive.google.com/file/d/1FXpNywergACePAIwe8OabzZMeNWPKIdT/view?
usp=drive_link

4.6 Two Way Traffic Light

https://drive.google.com/file/d/1veDfaaYRuANKZCi53U0JNiguGGs4Dkq-/view?
usp=drive_link

4.7 Traffic Light with Timer


https://drive.google.com/file/d/1-S-k1nBgebQ39lKf8xXps8fFrYvC_Cmk/view?usp=drive_link

4.8 Analog Clock Project

https://drive.google.com/file/d/1X1mC28jFZoQFdKSxfekpE1FMR0rQ_e0I/view?
usp=drive_link

4.9 Analog Clock with Second

https://drive.google.com/file/d/1fAKFuevk25WkJh1hZA_DcfcXeBI_Hk6t/view?usp=drive_link

4.10 Finalize the Analog Clock

https://drive.google.com/file/d/1Lockp3fAU76CMHlrd5C4xfjGW2kYOx24/view?
usp=drive_link

III. Code cho từng bài


4.1 Two Toggling LEDs

void setup() {

pinMode(0, OUTPUT);

pinMode(1, OUTPUT);

void loop()

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

delay(1000);

digitalWrite(0, LOW);

digitalWrite(1, HIGH);

delay(1000);

4.2 Multiple Blinking LED


void setup(){

pinMode(1, OUTPUT);

pinMode(2, OUTPUT);

pinMode(3, OUTPUT);

pinMode(4, OUTPUT);

pinMode(5, OUTPUT);

pinMode(6, OUTPUT);

pinMode(7, OUTPUT);

pinMode(8, OUTPUT);

void loop(){

digitalWrite(1, HIGH);

digitalWrite(3, HIGH);

digitalWrite(5, HIGH);

digitalWrite(7, HIGH);

digitalWrite(2, LOW);

digitalWrite(4, LOW);

digitalWrite(6, LOW);

digitalWrite(8, LOW);

delay(1000);

digitalWrite(1, LOW);

digitalWrite(3, LOW);

digitalWrite(5, LOW);

digitalWrite(7, LOW);

digitalWrite(2, HIGH);

digitalWrite(4, HIGH);

digitalWrite(6, HIGH);
digitalWrite(8, HIGH);

delay(1000);

4.3 Seven Segment LED


int pinled [] = {0,1,2,3,4,5,6};

void setup(){

for (int i = 0; i < 7; i++) {

pinMode(pinled [i], OUTPUT);

void displayNumber(int i){

if (i == 0){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

}else if(i == 1){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, HIGH);

digitalWrite(3, HIGH);

digitalWrite(4, LOW);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);
}else if(i == 2){

digitalWrite(0, LOW);

digitalWrite(1, HIGH);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, HIGH);

}else if(i == 3){

digitalWrite(0, LOW);

digitalWrite(1, HIGH);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, HIGH);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

}else if(i == 4){

digitalWrite(0, LOW);

digitalWrite(1, LOW);

digitalWrite(2, HIGH);

digitalWrite(3, LOW);

digitalWrite(4, HIGH);

digitalWrite(5, HIGH);

digitalWrite(6, LOW);

}else if(i == 5){

digitalWrite(0, LOW);

digitalWrite(1, LOW);

digitalWrite(2, LOW);
digitalWrite(3, HIGH);

digitalWrite(4, HIGH);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

}else if(i == 6){

digitalWrite(0, LOW);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, HIGH);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

}else if(i == 7){

digitalWrite(0, HIGH);

digitalWrite(1, HIGH);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, HIGH);

digitalWrite(5, HIGH);

digitalWrite(6, LOW);

}else if(i == 8){

digitalWrite(0, LOW);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);
}else if(i == 9){

digitalWrite(0, LOW);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, HIGH);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

void loop(){

displayNumber(0);

delay(100);

for (int i = 0; i < 10; i++) {

displayNumber(i);

delay(1000);

4.4 Two Digit Number


void setup()

for(int i = 0; i < 21; i++){

pinMode(i, OUTPUT);

void displayNumber1(int i) {

if (i == 0 || i == 10 || i == 20){
digitalWrite(7, HIGH);

digitalWrite(8, LOW);

digitalWrite(9, LOW);

digitalWrite(10, LOW);

digitalWrite(11, LOW);

digitalWrite(12, LOW);

digitalWrite(13, LOW);

} else if (i == 1 || i == 11){

digitalWrite(7, HIGH);

digitalWrite(8, LOW);

digitalWrite(9, HIGH);

digitalWrite(10, HIGH);

digitalWrite(11, LOW);

digitalWrite(12, HIGH);

digitalWrite(13, HIGH);

} else if (i == 2 || i == 12){

digitalWrite(7, LOW);

digitalWrite(8, HIGH);

digitalWrite(9, LOW);

digitalWrite(10, LOW);

digitalWrite(11, LOW);

digitalWrite(12, LOW);

digitalWrite(13, HIGH);

} else if (i == 3 || i == 13){

digitalWrite(7, LOW);

digitalWrite(8, HIGH);

digitalWrite(9, LOW);

digitalWrite(10, LOW);
digitalWrite(11, HIGH);

digitalWrite(12, LOW);

digitalWrite(13, LOW);

} else if (i == 4 || i == 14){

digitalWrite(7, LOW);

digitalWrite(8, LOW);

digitalWrite(9, HIGH);

digitalWrite(10, LOW);

digitalWrite(11, HIGH);

digitalWrite(12, HIGH);

digitalWrite(13, LOW);

} else if (i == 5 || i == 15){

digitalWrite(7, LOW);

digitalWrite(8, LOW);

digitalWrite(9, LOW);

digitalWrite(10, HIGH);

digitalWrite(11, HIGH);

digitalWrite(12, LOW);

digitalWrite(13, LOW);

} else if (i == 6 || i == 16){

digitalWrite(7, LOW);

digitalWrite(8, LOW);

digitalWrite(9, LOW);

digitalWrite(10, HIGH);

digitalWrite(11, LOW);

digitalWrite(12, LOW);

digitalWrite(13, LOW);

} else if (i == 7 || i == 17){
digitalWrite(7, HIGH);

digitalWrite(8, HIGH);

digitalWrite(9, LOW);

digitalWrite(10, LOW);

digitalWrite(11, HIGH);

digitalWrite(12, HIGH);

digitalWrite(13, LOW);

} else if (i == 8 || i == 18){

digitalWrite(7, LOW);

digitalWrite(8, LOW);

digitalWrite(9, LOW);

digitalWrite(10, LOW);

digitalWrite(11, LOW);

digitalWrite(12, LOW);

digitalWrite(13, LOW);

} else if (i == 9 || i == 19){

digitalWrite(7, LOW);

digitalWrite(8, LOW);

digitalWrite(9, LOW);

digitalWrite(10, LOW);

digitalWrite(11, HIGH);

digitalWrite(12, LOW);

digitalWrite(13, LOW);

void displayNumber2 (int i)

if(i >= 0 && i <10)


{digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

if(i >= 10 && i < 20)

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, HIGH);

digitalWrite(3, HIGH);

digitalWrite(4, LOW);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);

if(i == 20)

digitalWrite(0, LOW);

digitalWrite(1, HIGH);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, HIGH);
}

void loop()

for(int i = 0; i < 21; i++){

displayNumber1(i);

displayNumber2(i);

delay(1000);

4.5 One Way Traffic Light


void setup(){

for (int i = 0; i < 14; i++) {

pinMode(i, OUTPUT);

void light(int i)

if(i >= 0 && i < 5)

for(int j = 8; j < 14; j++)

digitalWrite(j, LOW);

digitalWrite(8, HIGH);

if(i >= 5 && i < 8)

for(int j = 8; j <14; j++)


digitalWrite(j, LOW);

digitalWrite(10, HIGH);

if(i >= 8 && i < 10)

for(int j = 9; j <14; j++)

digitalWrite(j, LOW);

digitalWrite(9, HIGH);

void loop(){

for (int i = 0; i < 10; i++)

light(i);

delay(1000);

4.6 Two Way Traffic Light


void setup(){

for (int i = 0; i < 14; i++) {

pinMode(i, OUTPUT);

void light(int i)

if(i >= 0 && i < 5)

{
for(int j = 8; j < 14; j++)

digitalWrite(j, LOW);

digitalWrite(8, HIGH);

if(i >= 5 && i < 8)

for(int j = 8; j <14; j++)

digitalWrite(j, LOW);

digitalWrite(10, HIGH);

if(i >= 8 && i < 10)

for(int j = 9; j <14; j++)

digitalWrite(j, LOW);

digitalWrite(9, HIGH);

if(i >= 0 && i < 3)

digitalWrite(13, HIGH);

if(i >= 3 && i < 5)

digitalWrite(12, HIGH);

if(i >= 5 && i < 10)

digitalWrite(11, HIGH);

}
}

void loop(){

for (int i = 0; i < 10; i++)

light(i);

delay(1000);

4.7 Traffic Light with Timer


void setup(){

for (int i = 0; i < 14; i++) {

pinMode(i, OUTPUT);

void displayNumber(int i){

if (i == 0){

digitalWrite(0, LOW);

digitalWrite(1, LOW);

digitalWrite(2, HIGH);

digitalWrite(3, LOW);

digitalWrite(4, HIGH);

digitalWrite(5, HIGH);

digitalWrite(6, LOW);

}else if(i == 1){

digitalWrite(0, LOW);

digitalWrite(1, HIGH);

digitalWrite(2, LOW);
digitalWrite(3, LOW);

digitalWrite(4, HIGH);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

}else if(i == 2){

digitalWrite(0, LOW);

digitalWrite(1, HIGH);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, HIGH);

}else if(i == 3){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, HIGH);

digitalWrite(3, HIGH);

digitalWrite(4, LOW);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);

}else if(i == 4){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);
}else if(i == 5){

digitalWrite(0, LOW);

digitalWrite(1, HIGH);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, HIGH);

}else if(i == 6){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, HIGH);

digitalWrite(3, HIGH);

digitalWrite(4, LOW);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);

}else if(i == 7){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

}else if(i == 8){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, HIGH);
digitalWrite(3, HIGH);

digitalWrite(4, LOW);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);

}else if(i == 9){

digitalWrite(0, HIGH);

digitalWrite(1, LOW);

digitalWrite(2, LOW);

digitalWrite(3, LOW);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

void light(int i)

if(i >= 0 && i < 5)

for(int j = 8; j < 14; j++)

digitalWrite(j, LOW);

digitalWrite(8, HIGH);

if(i >= 5 && i < 8)

for(int j = 8; j <14; j++)

digitalWrite(j, LOW);

digitalWrite(10, HIGH);

}
if(i >= 8 && i < 10)

for(int j = 9; j <14; j++)

digitalWrite(j, LOW);

digitalWrite(9, HIGH);

if(i >= 0 && i < 3)

digitalWrite(13, HIGH);

if(i >= 3 && i < 5)

digitalWrite(12, HIGH);

if(i >= 5 && i < 10)

digitalWrite(11, HIGH);

void loop(){

for (int i = 0; i < 10; i++)

light(i);

displayNumber(i);

delay(1000);

}
4.8 Analog Clock Project
int second = 0;

int minute = 0;

int hour = 0;

void setup()

for(int i = 0; i < 12; i++){

pinMode(i, OUTPUT);

void displayOnClock(int num){

if(num <= 12){

if(num == 1)

digitalWrite(11, HIGH);

else

digitalWrite(num - 2, HIGH);

void clearClock(){

for(int i = 0; i < 12; i++){

digitalWrite(i, LOW);

void loop()

for(int i = 0; i < 12; i++){

displayOnClock(i + 1);
delay(1000);

clearClock();

4.9 Analog Clock with Second


int now = 0;

int second = 0;

int minute = 0;

int hour = 0;

void setup()

for(int i = 0; i < 12; i++){

pinMode(i, OUTPUT);

void displayOnClock(int num){

if(num <= 12){

if(num == 1)

digitalWrite(11, HIGH);

else

digitalWrite(num - 2, HIGH);

void clearClock(){

for(int i = 0; i < 12; i++){

digitalWrite(i, LOW);

}
}

void loop()

displayOnClock(now%12 + 1);

delay(5000);

clearClock();

now++;

4.10 Finalize the Analog Clock


int now = 0;

int second = 0;

int minute = 0;

int hour = 0;

void setup()

for(int i = 0; i < 12; i++){

pinMode(i, OUTPUT);

void displayOnClock(int num){

if(num <= 12){

if(num == 1)

digitalWrite(11, HIGH);

else

digitalWrite(num - 2, HIGH);

}
void clearClock(){

for(int i = 0; i < 12; i++){

digitalWrite(i, LOW);

void loop()

second = now%12;

minute = (now/60)%12;

hour = (now/60/60)%12;

displayOnClock(second + 1);

displayOnClock(minute + 1);

displayOnClock(hour + 1);

delay(50);

clearClock();

now++;

You might also like