Percobaan IV
Komunikasi UART
1. Prosedur [Kembali]
- Rangkai komponen sesuai percobaan dan kondisi yang dipilih.
- Buat program menggunakan Arduino IDE.
- Compile program yang telah dibuat lalu Upload ke dalam Arduino Uno.
- Uji coba program pada rangkaian percobaan sesuai dengan kondisi yang diinginkan.
- Selesai
2. Hardware dan Diagram Blok [Kembali]
1. Arduino Uno
3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Pada rangkaian percobaan keempat, terdapat dua modul Arduino yang berperan: Arduino master dan Arduino slave. Arduino master terhubung dengan sebuah keypad sebagai alat masukan (input), sedangkan Arduino slave terhubung dengan sebuah LCD sebagai alat keluaran (output). Fungsi utama dari rangkaian ini adalah mengizinkan interaksi antara pengguna dengan sistem menggunakan keypad untuk menampilkan informasi pada layar LCD.
Ketika pengguna menekan tombol pada keypad yang terhubung ke Arduino master, sinyal akan dikirim ke Arduino master. Arduino master kemudian menginterpretasikan sinyal tersebut dan mengirimkan informasi karakter yang sesuai ke Arduino slave. Arduino slave, yang terhubung ke LCD, kemudian menampilkan karakter tersebut pada layar LCD.
Sebagai contoh, jika pengguna menekan tombol "6" pada keypad yang terhubung ke Arduino master, Arduino master akan menerima sinyal dari keypad dan mengirimkan karakter "6" ke Arduino slave. Arduino slave kemudian menampilkan simbol "6" pada layar LCD. Proses ini diulang setiap kali tombol pada keypad ditekan.
Melalui konfigurasi ini, rangkaian menciptakan sebuah jembatan antara aksi fisik pengguna (menekan tombol pada keypad) dan respons visual yang dapat dilihat pada layar LCD. Keunggulan utama dari rangkaian ini adalah memungkinkan antarmuka yang intuitif bagi pengguna untuk berinteraksi dengan sistem secara langsung, dengan informasi yang jelas dan langsung ditampilkan pada layar LCD sebagai respons terhadap setiap aksi pengguna.
=>Flowchart :
=>ListingProgram :- 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 <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);
}
}
}
=>Flowchart :
=>ListingProgram :
- 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 <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); } } } |
Komunikasi UART Antara 2 Arduino dengan input keypad dan output LCD
6. Video Demo [Kembali]
Video 1. Penjelasan Rangkaian
Video 1. Penjelasan Rangkaian





.png)

Tidak ada komentar:
Posting Komentar