TUGAS PENDAHULUAN MODUL 2 PERCOBAAN 3 KONDISI 6

Modul 2 PWM, ADC, dan Interrupt


 

  • Buatlah rangkaian sesuai dengan kondisi yang telah dipilih
  • Buat Program pada software Arduino IDE
  • Masukkan program yang telah dibuat pada software Arduino IDE sebagai library Arduino
  • Jalankan rangkaian, sesuai dengan kondisi yang diinginkan

a. Rangkaian Simulasi
Gambar Rangkaian Sebelum Disimulasikan

Gambar Rangkaian Setelah Disimulasikan

b. Prinsip Kerja
Pada percobaan 3 kondisi 6 kali ini kita menggunakan Dipswitch sebagai input dan 7-segment mpx 2 sebagai output. Dimana pada kondisi ini kita diminta, ketika 3 switch aktif 7-Segment menampilkan kombinasi L,E,I setelah hitung mundur dari 3.
Dapat kita lihat pada program yang telah kita inputkan pada ARDUINO IDE.
Terlebih dahulu kita mendeskripsikan pin dan variabel yang digunakan. Selanjutnya terdapat
byte digitPatterns[10][7] = {
 {1, 1, 1, 1, 1, 1, 0}, // 0
 {0, 1, 1, 0, 0, 0, 0}, // 1
 {1, 1, 0, 1, 1, 0, 1}, // 2
 {1, 1, 1, 1, 0, 0, 1}, // 3
  {0, 1, 1, 0, 0, 1, 1}, // 4
 {1, 0, 1, 1, 0, 1, 1}, // 5
 {1, 0, 1, 1, 1, 1, 1}, // 6
 {1, 1, 1, 0, 0, 0, 0}, // 7
 {1, 1, 1, 1, 1, 1, 1}, // 8
 {1, 1, 1, 1, 0, 1, 1} // 9
};
untuk menyimpan pola yang akan menampilkan angka 0-9 pada display 7 segment. Selanjutnya terdapat
byte digitlei[3][7] = {
 {0, 0, 0, 1, 1, 1, 0}, // L
 {1, 0, 0, 1, 1, 1, 1}, // E
 {0, 0, 0, 0, 1, 1, 0}, // I
};
untuk menyimpan pola yang akan menampilkan huruf L,E,I pada display 7 segment. Selanjutnya terdapat
byte digitclear[1][7] ={
  {1,1,1,1,1,1,1},
};
untuk menyimpan pola yang akan membersihkan pada display 7 segment.

a. Flowchart

b. Listing Program

#define a 6
#define b 7
#define c 8
#define d 9
#define e 10
#define f 11
#define g 12
#define dp 13
#define Dsw1 A0
#define Dsw2 A1
#define Dsw3 A2
#define Dsw4 A3
bool sw1,sw2,sw3,sw4;
int segments[] = {a, b, c, d, e, f, g};
byte digitPatterns[10][7] = {
 {1, 1, 1, 1, 1, 1, 0}, // 0
 {0, 1, 1, 0, 0, 0, 0}, // 1
 {1, 1, 0, 1, 1, 0, 1}, // 2
 {1, 1, 1, 1, 0, 0, 1}, // 3
  {0, 1, 1, 0, 0, 1, 1}, // 4
 {1, 0, 1, 1, 0, 1, 1}, // 5
 {1, 0, 1, 1, 1, 1, 1}, // 6
 {1, 1, 1, 0, 0, 0, 0}, // 7
 {1, 1, 1, 1, 1, 1, 1}, // 8
 {1, 1, 1, 1, 0, 1, 1} // 9
};
byte digitlei[3][7] = {
 {0, 0, 0, 1, 1, 1, 0}, // L
 {1, 0, 0, 1, 1, 1, 1}, // E
 {0, 0, 0, 0, 1, 1, 0}, // I
};
byte digitclear[1][7] ={
  {1,1,1,1,1,1,1},
};
void setup() {
 for (int i = 0; i < 7; i++) {
 pinMode(segments[i], OUTPUT);
 }
 pinMode(dp, OUTPUT);
 pinMode(Dsw1, INPUT_PULLUP);
 pinMode(Dsw2, INPUT_PULLUP);
 pinMode(Dsw3, INPUT_PULLUP);
 pinMode(Dsw4, INPUT_PULLUP);
 Serial.begin(9600);
}
void number(int display) {
 if (display >= 0 && display <= 9) {
 for (int i = 0; i < 7; i++) {
 digitalWrite(segments[i], digitPatterns[display][i]);
 }
 }
}
void clear(){
  for (int i = 0; i < 7; i++) {
  digitalWrite(segments[i], digitclear[0][i]);
  }
}
void loop() {
 int sw1 = digitalRead(Dsw1);
 int sw2 = digitalRead(Dsw2);
 int sw3 = digitalRead(Dsw3);
 int sw4 = digitalRead(Dsw4);
 int x=sw1+sw2+sw3+sw4;
 if (x==3){
  number(3);
  delay(1000);
  number(2);
  delay(1000);
  number(1);
  delay(1000);
  for (int i = 0; i < 7; i++) {
  digitalWrite(segments[i], digitlei[0][i]);
  } delay (1000);
  for (int i = 0; i < 7; i++) {
  digitalWrite(segments[i], digitlei[1][i]);
  } delay (1000);
  for (int i = 0; i < 7; i++) {
  digitalWrite(segments[i], digitlei[2][i]);
  } delay (1000);
 }
 else{

 }
}
Ketika 3 switch aktif 7-Segment menampilkan kombinasi L,E,I setelah hitung mundur dari 3


Download HTML klik disini
Download Rangkaian Proteus klik disini
Download Program Arduino klik disini
Download Video klik disini
Download Datasheet 7-Segment klik disini
Download Datasheet Arduino klik disini
Download Datasheet Dip Switch klik disini
Download Datasheet Push Button klik disini





Komentar

Postingan populer dari blog ini

TUGAS BESAR: KONTROL TANAMAN BAYAM PADA GREEN HOUSE

MODUL 1 : 8 x SWITCH SPDT DAN LCD

MODUL 2 : Kontrol Putaran Motor Stepper