Modul 1 - Tugas Pendahuluan 2



Modul 1 Percobaan 2 Kondisi 13
Buatlah rangkaian seperti pada modul percobaan, kemudian buatlah kondisi dengan inputan berupa saklar SPDT .
·       Rangkaian Sederhana 1 : B= 1, D=0, A=1, C’=1, D= 1
·       Rangkaian Sederhana 2 : B= 1, D=1, A= 1, B=0, C’=1.


1. Prosedur [Kembali]

  • Rangkai semua komponen 
  • Buat program di aplikasi arduino IDE
  • Setelah selesai masukkan program ke arduino 
  • Jalankan program pada simulasi dan cobakan sesuai kondisi

  • Rangkaian Simulasi

  • Prinsip Kerja 
Prinsip kerja dari rangkaian ini adalah, ketika Arduino menerima inputan sinyal digital dari     Dipswitch dan sesuai dengan program, maka Arduino akan menangkapnya sebagai sebuah     instruksi, yang mana akan meneruskan ke 7-Segment. Lalu akan ditampilkan berupa angka yang akan melakukan hitung mundur dari 9 - 0. Dengan keadaan yang bergiliran pada digit 1 (kiri) dan digit 2 (kanan)

  • Flowchart




  • Listing Program
//M1P5
#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 D1 4
#define D2 5
#define Dsw A0
/*39
32
26 27
19
*/
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
};
void setup() {
 // put your setup code here, to run once:
 
 for (int i = 0; i < 7; i++) {
 pinMode(segments[i], OUTPUT);
 }
 pinMode(dp,OUTPUT);
 pinMode(D1,OUTPUT);
 pinMode(D2,OUTPUT);
 pinMode(Dsw,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 loop() {
 int sw = analogRead(Dsw);
 Serial.print("ADC Value = ");
 Serial.println(sw);
 delay(100);
 if(sw == 21){
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(9);
delay(500);
digitalWrite(D1,LOW);
digitalWrite(D2,HIGH);
number(8);
delay(500);
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(7);
delay(500);
digitalWrite(D1,LOW);
digitalWrite(D2,HIGH);
number(6);
delay(500);
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(5);
delay(500);
digitalWrite(D1,LOW);
digitalWrite(D2,HIGH);
number(4);
delay(500);
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(3);
delay(500);
digitalWrite(D1,LOW);
digitalWrite(D2,HIGH);
number(2);
delay(500);
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(1);
delay(500);
digitalWrite(D1,LOW);
digitalWrite(D2,HIGH);
number(0);
delay(500);
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
}
}



4. Kondisi [Kembali]


Setiap 3 switch yang aktif akan melakukan counting 9 - 0 pada digit 1 dan 2 secara berseling

    

Simulasi  klik disini
Gambar Simulasi  klik disini
Video Simulasi  klik disini
Listring Program  klik disini
























Materi MataKuliah SENSOR TE1212 C  Semester Ganjil 2020 (II) Disusun Oleh : Ibrahim 1910953006 Fajar Ruhud M...