Modul 3
Percobaan 1
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
- Hardware
1. Modul Arduino Uno
Spesifikasi :
- Tampilan 2 baris @ 16 karakter, 5 x 8 pixel
- Display controller: HD44780 (standar industri LCD)
- Dilengkapi lampu latar warna biru/hijau/kuning
- Sudut pandang lebar dengan tingkat kontras yang dapat diatur dan terlihat jelas
- Tegangan kerja: 5V DC
- Dimensi modul: 80 x 36 x 12 mm
- Dimensi layar tampilan: 64,5 mm x 16 mm
- Diagram Blok
- Prinsip Kerja
disini kita menggunakan 2 buah arduino untuk mendemonstrasikan komunikasi UART, untuk arduino master itu sebagai arduino utama yang menerima input dari push button lalu untuk arduino slave terhubung ke 8 buah LED yang masing2 akan aktif bila push button ditekan, untuk menghubungkan kedua arduino kita menggunakan komunikasi Serial UART dengan memakai pin 0 dan 1 ( Tx dan Rx) saat push button ditekan akan memberikan sinyal high pada arduino master kemudian datanya akan dikirim ke arduino slave yang nantinya akan menghidupkan LED yang telah diatur urutanya pada codingan sebelumnya
- Flowchart
Master
Slave
- Listing Program
Master
//MASTER
#define DS1 2
#define DS2 3
#define DS3 4
#define DS4 5
#define DS5 6
#define DS6 7
#define DS7 8
#define DS8 9
bool b1,b2,b3,b4,b5,b6,b7,b8;
void setup()
{
Serial.begin(9600);
pinMode(DS1, INPUT);
pinMode(DS2, INPUT);
pinMode(DS3, INPUT);
pinMode(DS4, INPUT);
pinMode(DS5, INPUT_PULLUP);
pinMode(DS6, INPUT_PULLUP);
pinMode(DS7, INPUT_PULLUP);
pinMode(DS8, INPUT_PULLUP);
}
void loop()
{
int b8 = digitalRead(DS8);
int b7 = digitalRead(DS7);
int b6 = digitalRead(DS6);
int b5 = digitalRead(DS5);
int b4 = digitalRead(DS4);
int b3 = digitalRead(DS3);
int b2 = digitalRead(DS2);
int b1 = digitalRead(DS1);
// Hidupkan LED sesuai dengan tombol yang ditekan
int y = b1+b2+b3+b4;
int x = b5+b6+b7+b8;
if (x==4&&y==3)
{
Serial.write('r');
}
else if (x==0&&y==3)
{
Serial.write('b');
}
else
{
Serial.write('m');
}
}
Slave
//SLAVE
int led[] = {2, 3, 4, 5, 6, 7, 8, 9};
char message;
void setup()
{
Serial.begin(9600);
for (int i = 0; i < 8; i++)
{
pinMode(led[i], OUTPUT);
}
}
void loop()
{
if (Serial.available())
{
message = Serial.read();
if (message == 'r')
{
for (int i = 0; i < 8; i++) {
digitalWrite(led[i], HIGH); // Turn LED on
delay(100); // Adjust the delay as needed
digitalWrite(led[i], LOW); // Turn LED off
}
}
else if (message == 'b')
{
for (int i = 0; i < 8; i++) {
digitalWrite(led[i], HIGH); // Turn LED on
}
delay(100); // Adjust the delay as needed for on state
for (int i = 0; i < 8; i++) {
digitalWrite(led[i], LOW); // Turn LED on
}
delay (100);
}
else if (message == 'm')
{
for (int i = 0; i < 8; i++) {
digitalWrite(led[i], LOW); // Turn LED off
}
}
}
}
Percobaan 1 Kondisi 7
4 Switch dalam pull down dan 4 Switch dalam pull up. 3 Switch pull down dan 4 Switch pull up mengaktifkan running LED. 3 Switch pull down dan 0 switch pull-up mengaktifkan blingking LED
Download HMTL klik disini
Download Simulasi Rangkaian Klik disini
Download Video Simulasi klik disini
Download Program Master klik disini
Download Program Slave klik disini
Download Datasheet ARDUINO UNO klik disini
Download Datasheet DipSW-8 klik disini
Download Datasheet LED klik disini
Tidak ada komentar:
Posting Komentar