Laporan 1



1. Prosedur [Kembali]

1 Rangkai komponen sesuai percobaan dan kondisi yang dipilih.

2. Buat program menggunakan Arduino IDE.

3. Compile program yang telah dibuat lalu Upload ke dalam Arduino Uno.

4. Saat Proses Penguploadan porgram, lepas pin rx tx pada arduino master dengan arduino slave

5. Uji coba program pada rangkaian percobaan sesuai dengan kondisi yang diinginkan.

6. Selesai

  • Hardware

  • Diagram Blok

  • Rangkaian Simulasi 

  • Prinsip Kerja 
Pada percobaan 1 kondisi 1 ini kita menggunakan komunikasi data UART yang mana mengirimkan data secara serial tanpa mengikuti clock menggunakan pin Rx dan pin Tx. disini kita menggunakan dipswitch pull down (maksud nya switchnya aktif ketika logika nya 1) sebagai input dari master pada arduino. dan slave (penerima) arduino yang mana nantinya output dapat dilihat pada hidup atau tidak led nya. Ketika 1 dipswitch dihidupkan maka 1 led hidup sedangkan 4 dipswitch dihidupkan maka 3 led akan hidup.

  • Flowchart
Master

Slave

  • Listing Program 
//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
void setup() 
{ 
 Serial.begin(9600);
 pinMode(DS1, INPUT);
 pinMode(DS2, INPUT);
 pinMode(DS3, INPUT);
 pinMode(DS4, INPUT);
 pinMode(DS5, INPUT);
 pinMode(DS6, INPUT);
 pinMode(DS7, INPUT);
 pinMode(DS8, INPUT);
}
void loop()
{
 int count = 0;
  for (int pin = DS1; pin <= DS8; pin++) {
    count += digitalRead(pin);
  }
 if (count == 1)
 {
 Serial.write('A');
 }
 else if (count == 4)
 {
 Serial.write('B');
 }
 delay(20);
}
//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 == 'A')
 {
 digitalWrite(led[0], 1);
 }
 else if (message == 'B')
 {
 digitalWrite(led[2], 1);
 digitalWrite(led[5], 1);
  digitalWrite(led[7], 1);
 }
}
delay(20);
 digitalWrite(led[0], 0);
 digitalWrite(led[1], 0);
 digitalWrite(led[2], 0);
 digitalWrite(led[3], 0);
 digitalWrite(led[4], 0);
 digitalWrite(led[5], 0);
 digitalWrite(led[6], 0);
 digitalWrite(led[7], 0);
}

6. Kondisi [Kembali]

Percobaan 1 (Komunikasi UART Menggunakan Arduino - sesuai rangkaian modul) erco

baan 

HTML klik disini

Gambar Hardware  klik disini

Gambar Simulasi  klik disini

Video Demo  klik disini

Listring Program  klik disini

Tidak ada komentar:

Posting Komentar