Percobaan 3 Kondisi 3
key 1 - 9 menampilkan karaktaer nomor 1 - 9 secara berurut, angka ganjil di kolom pertama dan angka genap di kolom kedua
- Rangkailah semua komponen
- Buat program di aplikasi arduino IDE
- Setelah selesai, masukkan program ke arduino
- Jalankan program pada simulasi dan lakukan sesuai kondisi
2. Hardware dan diagram blok
[Kembali]
a. hardware
b. Digram Blok
3. Rangkaian Simulasi dan Prinsip kerja
[Kembali]
4. FlowChart
[Kembali]
a. Listing Program
Master Code
#include <Keypad.h>
#include <Wire.h>
const byte ROWS = 4;
const byte COLS = 3;
char keys[ROWS][COLS] = {
{'1', '2', '3'},
{'4', '5', '6'},
{'7', '8', '9'},
{'*', '0', '#'},
};
char rowPins[ROWS] = {13, 12, 11, 10};
char colPins[COLS] = {9, 8, 7};
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup()
{
Wire.begin(); // join i2c bus (address optional for master)
}
//byte x = 0;
void loop(){
char key = keypad.getKey();
if (key) {
Wire.beginTransmission(4); // transmit to device #4
Wire.write(key);
Wire.endTransmission(); // stop transmitting
}
}
Slave Code
#include <LiquidCrystal.h>
#include <Wire.h>
LiquidCrystal lcd(13, 12, 6, 5, 4, 3); // Sesuaikan pin sesuai dengan koneksi LCD
int receivedData = 0;
void setup()
{
lcd.begin(16, 2);
Wire.begin(4); // join i2c bus with address #4
Wire.onReceive(receiveEvent); // register event
Serial.begin(9600); // start serial for output
lcd.print("Silahkan Tekan");
}
void loop()
{
delay(100);
}
void receiveEvent(int howMany)
{
receivedData = Wire.read(); // receive byte as a character
Serial.println(receivedData); // print the character
if (receivedData >= '1' && receivedData <= '9') {
int number = receivedData - '0';
lcd.clear();
int numbernoninverted = number % 2;
int numberinverted = !numbernoninverted;
lcd.setCursor(numberinverted, 0);
lcd.print(number);
}
}
b. Flowchart
key 1 - 9 menampilkan karaktaer nomor 1 - 9 secara berurut, angka ganjil di kolom pertama dan angka genap di kolom kedua
6. Video Simulasi
[Kembali]
7. Download File
[Kembali]





Tidak ada komentar:
Posting Komentar