Laporan Akhir 1 Modul 1
Percobaan 5
Dipswitch dan 7-Segment
a. Hardware
1. Seven Segment common catoda
2. Arduino Uno
3.Dipswitch 4
4. Resistor
5. Jumper
6. Breadboard
- Rangkai semua komponen
- Buat program di aplikasi arduino IDE
- Setelah selesai masukkan program ke arduino
- Jalankan program pada simulasi dan cobakan dengan modul
3 . Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Pada percobaan 5 ini terdiri dari beberapa komponen, seperti breadboard, seven segment, arduino uno, jumper, dipswitch dan lainnya. Dimana pada rangkaian ini dipswitch bertindak sebagai input yang nantinya akan terhubung nantinya ke arduino Uno, dan seven segment bertindak sebagai penampil output yang diberikan.
Pada doble seven segment
4. Flowchart [Kembali]
a. 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 D1 4
#define D2 5
#define Dsw A0
// 1 = 36
// 2 = 33
// 3 = 26
// 4 = 21
// Define segments array
byte segments[] = {a, b, c, d, e, f, g};
byte digitPatterns[10][7] = {
{0, 0, 0, 0, 0, 0, 1}, // 0
{1, 0, 0, 1, 1, 1, 1}, // 1
{0, 0, 1, 0, 0, 1, 0}, // 2
{0, 0, 0, 0, 1, 1, 0}, // 3
{1, 0, 0, 1, 1, 0, 0}, // 4
{0, 1, 0, 0, 1, 0, 0}, // 5
{0, 1, 0, 0, 0, 0, 0}, // 6
{0, 0, 0, 1, 1, 1, 1}, // 7
{0, 0, 0, 0, 0, 0, 0}, // 8
{0, 0, 0, 0, 1, 0, 0} // 9
};
void setup() {
// put your setup code here, to run once:
for (int i = 0; i < 7; i++) { // changed 8 to 7
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 == 36){
digitalWrite(D1,LOW);
digitalWrite(D2,HIGH);
number(1);
delay(50);
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(0);
delay(50);
}
else if(sw == 33){
digitalWrite(D1,LOW);
digitalWrite(D2,HIGH);
number(0);
delay(1000);
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(1);
delay(1000);
}
else if(sw == 26){
digitalWrite(D1,HIGH);
digitalWrite(D2,LOW);
number(0);
delay(1000);
number(1);
delay(1000);
number(2);
delay(1000);
number(3);
delay(1000);
number(4);
delay(1000);
number(5);
delay(1000);
number(6);
delay(1000);
number(7);
delay(1000);
number(8);
delay(1000);
number(9);
delay(1000);
}
else if(sw == 21){
digitalWrite(D1,HIGH);
digitalWrite(D2,HIGH);
number(0);
delay(1000);
number(1);
delay(1000);
number(2);
delay(1000);
number(3);
delay(1000);
number(4);
delay(1000);
number(5);
delay(1000);
number(6);
delay(1000);
number(7);
delay(1000);
number(8);
delay(1000);
number(9);
delay(1000);
}
}
b. Flowchart
5. Video Simulasi Praktikum [Kembali]
6. Kondisi [Kembali]
Ketika Dipswitch diberikan input ( kondisi on atau off) maka Dual seven segment akan hidup menampilan karakter sesuai dengan dipswitch yang di tekan. tampilan output dari dual seven segmen tersebut diatur di kodingan arduino.
7. Analisa [Kembali]
8. Download File [Kembali]
HTML Klik disini Klik disini
Video Simulasi Klik disini
Datasheet Arduino Uno klik disini
Tidak ada komentar:
Posting Komentar