Laporan Akhir 2 Modul 1

  Laporan Akhir 2 Modul 1






Percobaan 2
Keypad dan 7-Segment


1. Foto Hardware dan diagram Blok [Kembali]

a. Hardware







    1. Seven Segment common catoda
    2. Arduino Uno
    3.Keypad
    4. Jumper
    5. Breadboard  

b. Diagram Blok






2. Prosedur Percobaan [Kembali]

  • 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]




Prinsip Kerja : 

        Pada percobaan 2 ini terdiri dari beberapa komponen, seperti breadboard, seven segment, arduino uno, jumper, keypad dan lainnya. Dimana pada rangkaian ini keypad bertindak sebagai input yang direpresentasikan oleh push button  yang nantinya akan terhubung nantinya ke arduino Uno, dan seven segment bertindak sebagai penampil output yang diberikan. 
        Sesuai dengan program arduino yang sudah di buat dimana terdapat array matrix 4x4 yang merepresentasikan layout keypad, yang masing-masing karakter terkait degan tombol pada keypad. Jadi apabila kita menekan tombol pada keypad maka akan dimunculkan tulisan tombol tersebut di 7-segment
Jadi kita menekan button maka 7-segment akan menampilakan sesuai dengan yang kita tekan.
 
                                          

4. Flowchart dan Listing Program [Kembali]

a. Listing Program 
//Percobaan 2
#include <Keypad.h>
 
const byte ROWS = 4; // Four rows
const byte COLS = 4; // Fou columns
 
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'}, // Keypad 4x4 layout
  {'7','8','9','C'},
  {'*','0','#', 'D'}
};
 
byte rowPins[ROWS] = {A4, A3, A2, A1}; // Connect to the keypad row pins
byte colPins[COLS] = {10, 11, 12, 13}; // Connect to the keypad column pins
 
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
 
const int segmentPins[] = {9, 8, 7, 6, 5, 4, 3, 2}; // Connect to the seven-segment display segment pins
 
void setup() {
  for (int i = 0; i < 8; i++) {
    pinMode(segmentPins[i], OUTPUT);
  }
  }
 
void loop() {
  char key = keypad.getKey();
  if (key) {
    displayCharacter(key);
    delay(1000);
    clearDisplay();
  }
}
 
void displayCharacter(char ch) {
  // Define segment patterns for each digit (0-9)
  // Example: Displaying '1'
  //      A
  //    F   B
  //      G
  //    E   C
  //      D
  byte patterns[][9] = {
    {1, 1, 0, 0, 0, 0, 0, 0}, // 0
    {1, 1, 1, 1, 1, 0, 0, 1}, // 1
    {1, 0, 1, 0, 0, 1, 0, 0}, // 2
    {1, 0, 1, 1, 0, 0, 0, 0}, // 3
    {1, 0, 0, 1, 1, 0, 0, 1}, // 4
    {1, 0, 0, 1, 0, 0, 1, 0}, // 5
    {1, 0, 0, 0, 0, 0, 1, 0}, // 6
    {1, 1, 1, 1, 1, 0, 0, 0}, // 7
    {1, 0, 0, 0, 0, 0, 0, 0}, // 8
    {1, 0, 0, 1, 0, 0, 0, 0},  // 9
    {1, 0, 1, 0, 0, 0, 0, 0}, //a
    {1, 0, 0, 0, 0, 0, 1, 1}, //b
    {1, 1, 0, 0, 0, 1, 1, 0}, //c
    {1, 0, 1, 0, 0, 0, 0, 1}, //d
     
  };
 
  if ((ch >= '0' && ch <= '9') || (ch >= 'A' && ch <= 'D')) {
    // Get the digit index (0-9) from the character
    int index = (ch <= '9')? (ch - '0') : (ch - 'A' + 10);
 
    // Write the pattern to the segment pins
    for (int i = 0; i < 7; i++) {
      digitalWrite(segmentPins[i], patterns[index][i]);
    }
  }
}
void clearDisplay() {
for (int i = 0; i < 8; i++) {
digitalWrite(segmentPins[i], HIGH);
}
}


b. Flowchart



5. Video Simulasi Praktikum [Kembali]




6. Kondisi  [Kembali]

Ketika Keypad diberikan input  maka Dual seven segment akan hidup menampilan karakter sesuai dengan ton keypad yang di tekan. tampilan output dari dual seven segmen tersebut diatur di kodingan arduino.



7. Analisa [Kembali]

x`






   

8. Download File [Kembali]

Video Simulasi Klik disini
Download Datasheet 7- segmen klik disini
Download Resistor Klik disini
Download Dipswitch Klik disini
Datasheet Arduino Uno klik disini




















Tidak ada komentar:

Posting Komentar

Entri yang Diunggulkan

                                     BAHAN PRESENTASI UNTUK MATAKULIAH                                                 ELEKTRONIKA 2022 Nama...

Postingan Populer