Kamis, 07 Maret 2024

Laporan Akhir Modul 1 (Percobaan 2)



Percobaan 6
Switch SPDT dan LCD

1. Prosedur [Kembali]

  • Rangkai semua komponen 
  • Buat program di aplikasi arduino IDE
  • Setelah selesai masukkan program ke arduino 
  • Jalankan program pada simulasi dan cobakan dengan modul
  • Lihat hasil LCD apakah sesuai dengan warna switch yang ditekan

  • Hardware
  • Diagram Blok


  • Rangkaian Simulasi
  • Prinsip Kerja
Dalam percobaan ini, kami menggunakan Switch SPDT untuk mengatur input dan menampilkan outputnya melalui LCD yang terhubung dengan Arduino Uno. Setiap Switch SPDT telah diberi input berupa nama warna yang sesuai dengan warna Switch tersebut. Ketika salah satu Switch ditekan, LCD akan menampilkan nama warna yang sesuai dengan Switch yang ditekan.

  • Flowchart
  • Listing Program 
#include <LiquidCrystal.h> 
#define PB1 A0 
#define PB2 A1 
#define PB3 A2 
#define PB4 A3 
#define PB5 A4 
#define PB6 A5 
#define PB7 12 
#define PB8 13 
const int rs = 11, en = 10, d4 = 6, d5 = 5, d6 = 4, d7 = 3; 
LiquidCrystal lcd(rs, en, d4, d5, d6, d7); 
bool Button1,Button2,Button3,Button4,Button5,Button6,Button7,Button8; 
void setup() { 
Serial.begin(9600); 
lcd.begin(16,2); 
 pinMode(PB1, INPUT); 
  pinMode(PB2, INPUT); 
  pinMode(PB3, INPUT); 
  pinMode(PB4, INPUT); 
  pinMode(PB5, INPUT); 
  pinMode(PB6, INPUT); 
  pinMode(PB7, INPUT); 
  pinMode(PB8, INPUT); 
 
 
void loop() { 
 
  Button1 = digitalRead(PB1); 
  Button2 = digitalRead(PB2); 
  Button3 = digitalRead(PB3); 
  Button4 = digitalRead(PB4); 
  Button5 = digitalRead(PB5); 
  Button6 = digitalRead(PB6); 
  Button7 = digitalRead(PB7); 
  Button8 = digitalRead(PB8);  
 
  if(Button1==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW & 
Button6==LOW & Button7==LOW & Button8==LOW){ 
   lcd.clear(); 
   lcd.setCursor(0, 1); 
   lcd.print("Abel"); 
  } 
  else if(Button2==HIGH & Button1==LOW & Button3==LOW & Button4==LOW & Button5==LOW 
& Button6==LOW & Button7==LOW & Button8==LOW){ 
   lcd.clear(); 
   lcd.setCursor(0, 1); 
   lcd.print("Khadlel"); 
  } 
  else if(Button3==HIGH & Button2==LOW & Button1==LOW & Button4==LOW & Button5==LOW 
& Button6==LOW & Button7==LOW & Button8==LOW){ 
   lcd.clear(); 
   lcd.setCursor(0,1 ); 
   lcd.print("Azis"); 
  } 
  else if(Button4==HIGH & Button2==LOW & Button3==LOW & Button1==LOW & Button5==LOW 
& Button6==LOW & Button7==LOW & Button8==LOW){ 
   lcd.clear(); 
   lcd.setCursor(13, 0); 
   lcd.print("LEI"); 
  } 
  else if(Button5==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button1==LOW 
& Button6==LOW & Button7==LOW & Button8==LOW){ 
   lcd.clear(); 
   lcd.setCursor(0, 1); 
   lcd.print("Abel"); 
  } 
  else if(Button6==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW 
& Button1==LOW & Button7==LOW & Button8==LOW){ 
   lcd.clear(); 
   lcd.setCursor(0, 1); 
   lcd.print("Azis"); 
  } 
  else if(Button7==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW 
& Button6==LOW & Button1==LOW & Button8==LOW){ 
   lcd.clear(); 
   lcd.setCursor(6, 0); 
   lcd.print("DTE"); 
  } 
  else if(Button8==HIGH & Button2==LOW & Button3==LOW & Button4==LOW & Button5==LOW 
& Button6==LOW & Button7==LOW & Button1==LOW){ 
   lcd.clear(); 
   lcd.setCursor(6,0);
     lcd.scrollDisplayLeft();
    delay(1000); 
   lcd.print("UNAND"); 
  } 
  else if(Button1==LOW & Button2==LOW & Button3==LOW & Button5==LOW & Button5==LOW 
& Button6==LOW & Button7==LOW & Button8==LOW){ 
  lcd.clear(); 
  lcd.setCursor(0, 0); 
  lcd.print("Silahkan Tekan"); 
  lcd.setCursor(0, 1); 
  lcd.print("Salah Satu SW"); 
  } 
  else{ 
   lcd.clear(); 
   lcd.setCursor(0, 0); 
   lcd.print("Error"); 
  } 
  delay(100); // Tambahkan penundaan agar tampilan tidak berubah terlalu cepat 
}

6. Kondisi [Kembali]

Ketika Switch SPDT ditekan akan dibaca oleh Arduino dan, arduino akan memberikan perintah untuk menampilkan hasil tersebut pada LCD


7. Download File [Kembali]

HTML klik disini

- Gambar Hardware  klik disini

- Gambar Simulasi  klik disini

- Video Demo  klik disini

- Listing Program  klik disini









Laporan Akhir Modul 1 (Percobaan 1)



Modul 1 Percobaan 5 
Dipswitch dan 7-Segment

1. Prosedur [Kembali]

  • Rangkai semua komponen 
  • Buat program di aplikasi arduino IDE
  • Setelah selesai masukkan program ke arduino 
  • Jalankan program pada simulasi dan cobakan dengan modul
  • Lihat hasil pada 7-Segment

  • Hardware
  • Diagram Blok


  • Rangkaian 
  • Prinsip Kerja
Pada percobaan 5 kondisi 1 yang dimana menggunakan dipswitch sebagai input dan seven segment 2 digit sebagai output, pada dipswitch menggunakan rangkaian pull down, yang mana rangkaian pull down akan aktif apabila saklarnya terhubung. Pada saat dipswitch terhubung maka dipswtich akan berlogika high kemudian data akan di transfer ke mikrokontroler arduino uno, kemudian dari mikrokontroler arduino uno menuju seven segment 2 digit, maka seven segment akan menampilkan angka sesuai dengan kodingan yang dibuat.


  • 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] = { {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++) { 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 == 1023){ digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(0); delay(50); } else if(sw > 35 && sw <38){ digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(0); delay(1000); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(1); delay(1000); }else if(sw > 38 && sw <41){ 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 > 24 && sw <29){ 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); }else if(sw > 19 && sw <24){ digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(0); delay(500); number(1); delay(500); number(2); delay(500); number(3); delay(500); number(4); delay(500); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(5); delay(500); number(6); delay(500); number(7); delay(500); number(8); delay(500); number(9); delay(500); }else if(sw == 13){ digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delayMicroseconds (500); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(0); delayMicroseconds (500); }else if(sw == 10){ digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(9); delay(500); number(8); delay(500); number(7); delay(500); number(6); delay(500); number(5); delay(500); number(4); delay(500); number(3); delay(500); number(2); delay(500); number(1); delay(500); number(0); delay(500); }else if(sw == 5){ digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(0); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(1); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(2); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(3); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(4); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(5); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(6); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(7); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(8); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(1); delay(50); digitalWrite(D1,HIGH); digitalWrite(D2,LOW); number(9); delay(50); digitalWrite(D1,LOW); digitalWrite(D2,HIGH); number(2); } }

6. Kondisi [Kembali]

Masing-masing switch LED menghasilkan tampilan yang berbeda-beda sesuai logika yang diatur pada listing program.

7. Download File [Kembali]

HTML klik disini

- Gambar Hardware  klik disini

- Gambar Simulasi  klik disini

- Video Demo  klik disini

- Listring Program  klik disini















Senin, 04 Maret 2024

Tugas Pendahuluan 2

 




PERCOBAAN 5 KONDISI 6



1. Prosedur
[Kembali]

1.Rangkailah seperti rangkaian berikut 
2.Buka Arduino IDE dan masukan listing program Upload program ke arduino 
3.Variasikan tombol yang ditekan dan amati keluarannya pada LCD

2. Hardware dan Diagram Blok [Kembali]





Diagram Blok

3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]



Sebelum disimulasikan



Setelah disimulasikan


Prinsip Kerja:

    Fungsi rangkaian ini adalah sebagai berikut: Dipswitch berfungsi sebagai input, di mana saklar pada dipswitch menghasilkan input analog yang dapat diubah menjadi digital; dual seven segment berfungsi sebagai output, yang menampilkan angka yang sesuai dengan saklar yang diaktifkan; dan kemudian setiap jumlah saklar yang aktif mempengaruhi output dual seven segment.


4. Flowchart dan Listing Program [Kembali]




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 == 23){ 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(0); 
delay(50); 
  } 
else if(sw == 22){ 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(0); 
delay(1000); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(1); 
delay(1000); 
  }else if(sw == 21){ 
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 == 19){ 
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); 
  }else if(sw == 16){ 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(0); 
delay(500); 
number(1); 
delay(500); 
number(2); 
delay(500); 
number(3); 
delay(500); 
number(4); 
delay(500); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(5); 
delay(500); 
number(6); 
delay(500); 
number(7); 
delay(500); 
number(8); 
delay(500); 
number(9); 
delay(500); 
  }else if(sw == 13){ 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delayMicroseconds (500); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(0); 
delayMicroseconds (500); 
  }else if(sw == 10){ 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(9); 
delay(500); 
number(8); 
delay(500); 
number(7); 
delay(500); 
number(6); 
delay(500); 
number(5); 
delay(500); 
number(4); 
delay(500); 
number(3); 
delay(500); 
number(2); 
delay(500); 
number(1); 
delay(500); 
number(0); 
delay(500); 
  }else if(sw == 5){ 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(0); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(1); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(2); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(3); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(4); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(5); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(6); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(7); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(8); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 

number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(3); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(4); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(5); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(6); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(7); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(8); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(1); 
delay(50); 
digitalWrite(D1,HIGH); 
digitalWrite(D2,LOW); 
number(9); 
delay(50); 
digitalWrite(D1,LOW); 
digitalWrite(D2,HIGH); 
number(2); 

5. Video Demo [Kembali]
 
SAAT PRAKTIKUM.

6. Kondisi [Kembali]

P5K6 (Setiap 1 Switch aktif muncul angka berbeda pada digit ke 1, Setiap Switch aktif muncul angka pada kedua digit)


7. Video Simulasi [Kembali]




8. Link Download [Kembali].

Link Download HTML (klik disini)
Link Download Rangkaian (klik disini)
Link Download Video (klik disini)
Datasheet Datasheet (klik disini)
Arduino (klik disini)























Sabtu, 02 Maret 2024

Tugas Pendahuluan 1

 




PERCOBAAN 4 KONDISI 7


1. Prosedur
[Kembali]

1.Rangkailah seperti rangkaian berikut 
2.Buka Arduino IDE dan masukan listing program Upload program ke arduino 
3.Variasikan tombol yang ditekan dan amati keluarannya pada LCD

2. Hardware dan Diagram Blok [Kembali]




Hardware

Diagram Blok




3. Rangkaian Simulasi dan Prinsip Kerja  [Kembali]


Sebelum disimulasikan


Setelah disimulasikan




Prinsip Kerja : 

Rangkaian ini berfungsi sebagai berikut:

        Dengan menggunakan sensor sentuhan sebagai input, LCD dapat menampilkan KEYPAD jika berlogika tinggi. Jika sensor sentuhan berlogika rendah atau 0, LCD tidak akan menampilkan input dari keypad, dan layar LCD akan dihapus (diclearkan) jika sebelumnya menampilkan output.
        Keypad berfungsi sebagai input, dengan tombol-tombolnya menghasilkan input. LCD berfungsi sebagai output, menampilkan teks yang sesuai dengan tombol yang ditekan, seperti ketika kita menekan tombol "1". Hal yang sama berlaku untuk tombol pagar (#), bintang (*), dan angka 0 hingga 9.


4. Flowchart dan Listing Program [Kembali]


Listing Program.


// Include the Keypad library 
#include <Keypad.h> 
#include <LiquidCrystal.h>
#define touch 10

// Constants for row and column sizes 
const byte ROWS = 4; 
const byte COLS = 4; 
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5); 
// Array to represent keys on keypad 
char hexaKeys[ROWS][COLS] = { 
  {'1', '2', '3', 'A'}, 
  {'4', '5', '6', 'B'}, 
  {'7', '8', '9', 'C'}, 
  {'*', '0', '#', 'D'} 
}; 
// Connections to Arduino 
byte rowPins[ROWS] = {9, 8, 7, 6}; 
byte colPins[COLS] = {5, 4, 3, 2}; 
// Create keypad object 
Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS); 
  
void setup(){ 
  // Setup serial monitor 
  pinMode(touch,INPUT);
  Serial.begin(9600); 
  lcd.begin(16, 2); 
void loop() {
  int sensor=digitalRead(touch);
  // Get key value if pressed 
char customKey = customKeypad.getKey(); 
  if ( sensor==HIGH ){
   if (customKey) { 
// Print key value to serial monitor 
lcd.setCursor(0, 0); 
lcd.print("Tombol :"); 
lcd.print(customKey);
}  
}

else {
  lcd.clear ();
}


5. Video Demo [Kembali]
 
SAAT PRAKTIKUM.

6. Kondisi [Kembali]

Sertakan Touch sensor, mode diatur dengan keypad, tampilan mode pada LCD dan mode dapat diatur ketika Touch sensor berlogika HIGH.


7. Video Simulasi [Kembali]




8. Link Download  [Kembali].

Link Download HTML (klik disini)
Link Download Rangkaian (klik disini)
Link Download Video (klik disini)
Datasheet Datasheet (klik disini)
Arduino (klik disini)

















Modul 1




MODUL 1
    GENERAL INPUT DAN OUTPUT

Pendahuluan

Asistensi dilakukan 1x
- Praktikum dilakukan 1x

1. Tujuan
[Kembali]

a) Memahami cara penggunaan input dan output digital pada mikrokontroler 
b) Menggunakan komponen input dan output sederhana dengan Arduino 

2. Alat dan Bahan [Kembali]

a.) Keypad

keypad


b). Seven segment



seven segment

c.) mikrokontroler
arduino uno
3. Dasar Teori [Kembali]

General Input Output

General Input Output Input adalah semua data dan perintah yang dimasukkan ke dalam memori untuk diproses lebih lanjut oleh mikroprosesor. Sebuah perangkat input adalah komponen piranti keras yang memungkinkan user atau pengguna memasukkan data ke dalam mikroprosesor. Output adalah data hasil yang telah diproses. Perangkat output adalah semua komponen piranti keras yang menyampaikan informasi kepada orang-orang yang menggunakannya. Pada Arduino, pin input/output terdiri dari digital dan analog yang jumlah pin-nya tergantung jenis Arduino yang digunakan. Input digital digunakan untuk mendeteksi perubahan logika biner pada pin tertentu. Adanya input digital memungkinkan mikrokontroler untuk dapat menerjemahkan 0V menjadi logika LOW dan 5V menjadi logika HIGH. Membaca sinyal digital pada Arduino dapat menggunakan sintaks digitalRead(pin); Output digital terdiri dari dua buah logika, yaitu kondisi logika HIGH dan kondisi logika LOW. Untuk menghasilkan output kita dapat menggunakan sintaks digitalWrite(pin,nilai); yang sebelumnya pin sudah diset ke mode OUTPUT, lalu parameter kedua adalah set nilai HIGH atau LOW. Apabila pin diset dengan nilai HIGH, maka voltase pin tersebut akan diset ke 5V atau 3.3V dan bila pin diset ke LOW, maka  voltasepin tersebut akan diset ke 0V.


-Arduino

Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain.

Adapun spesifikasi dari Arduino Uno ini adalah sebagai berikut :

 

Arduino Uno

Bagian-bagian arduino uno:

-Power USB

Digunakan untuk menghubungkan Papan Arduino dengan komputer lewar koneksi USB

-Power jack

Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.

-Crystal Oscillator

Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.

-Reset
                Digunakan untuk mengulang program Arduino dari awal atau Reset

Digital Pins I/O

                Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika ( 0 atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM.
-Analog Pins

Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital.

-LED Power Indicator

Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik

Bagian - bagian pendukung:

-RAM

RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory).

-ROM

ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM.

Entri yang Diunggulkan

  [ MENUJU AKHIR ] [KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI 1. Pendahuluan 2. Tujuan 3. Alat dan Bahan 4. Dasar Teori 5. Perc...