I. Buatlah rangkaian dengan alat dan bahan yang ada sesuai dengan modul.
II. Buatlah program untuk arduino master dan slave di software Arduino IDE.
III. Compile program tadi, lalu upload ke dalam arduino.
IV. Setelah program selesai di upload, jalankan rangkaian.
4. Flowchart dan Listing Program [Kembali
II. Buatlah program untuk arduino master dan slave di software Arduino IDE.
III. Compile program tadi, lalu upload ke dalam arduino.
IV. Setelah program selesai di upload, jalankan rangkaian.
2. Hardware dan Diagram Blok [Kembali]
a) Modul Arduino
b) Keypad
c) LCD
d) Breadboard
e) Jumper
3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Rangkaian komunikasi dalam gambar tersebut menggunakan protokol UART (Universal Asynchronous Receiver Transmitter) untuk menghubungkan dua papan Arduino. Protokol UART memungkinkan komunikasi serial asinkron antara dua perangkat, di mana data ditransmisikan satu bit pada satu waktu tanpa memerlukan sinyal jam eksternal. Ketika tombol pada keypad ditekan, pin keypad yang sesuai akan terhubung ke ground (0). Arduino UNO master membaca status pin keypad secara berkala. Ketika pin keypad terdeteksi rendah (0), Arduino UNO master akan mengidentifikasi tombol yang ditekan.
Arduino UNO master mengirimkan data yang diidentifikasi dari keypad ke Arduino UNO slave melalui protokol UART. Data ini dapat berupa kode ASCII untuk tombol yang ditekan atau nilai numerik. Arduino UNO slave menerima data UART dari Arduino UNO (ARD1) dan mendekodenya menjadi informasi yang dapat dimengerti. Arduino UNO slave menampilkan data yang diterima pada LCD.
Listing Program
Master
#include <Key.h>
#include <Keypad.h>
// MASTER
#include <Keypad.h>
const byte ROWS = 4;
const byte COLS = 3;
// Array to represent keys on keypad
char hexaKeys[ROWS][COLS] = {
{'1', '2', '3'},
{'4', '5', '6'},
{'7', '8', '9'},
{'*', '0', '#'}
};
byte rowPins[ROWS] = {7, 6, 5, 4};
byte colPins[COLS] = {8, 9 , 10};
// Create keypad object
Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
void setup()
{
Serial.begin(9600);
}
void loop()
{
char customKey = customKeypad.getKey();
if (customKey)
{
Serial.write(customKey);
}
delay(20);
}
Slave
#include <LedControl.h>
//SLAVE
#include <LiquidCrystal.h>
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
char message;
void setup()
{
Serial.begin(9600);
lcd.begin(16, 2);
}
void loop()
{
lcd.setCursor(0, 0);
lcd.print("Tombol :");
if (Serial.available())
{
message = Serial.read();
if (message)
{
lcd.print(message);
}
}
}
5. Video Demo [Kembali]
6. Kondisi [Kembali]
Percobaan 4(tanpa Kondisi)
7. Download
[Kembali]




.jpeg)

.png)