Ngoprek Arduino Seadanya (Hiks)

Ini malam kedua berkutat dengan Arduino. Kemarin ada kesulitan cara upload sketch ke board Arduino. Rupanya hanya karena harus menggunakan sudo saat menjalankan program Arduino dan kemudian memilih port komunikasi yang tepat. Sayangnya saat mau experimen tidak punya piranti dan komponen elektronika pendukung. Wah, jadinya sedih, hiks…

Karena semangat belajar (dan bermain) tinggi, maka daku pun banyak menjelajah dunia internet. Dan daku pun memutuskan belajar pemrograman sketch Arduino terlebih dahulu. Berhubung tidak ada modal apa-apa, daku pun memilih belajar komunikasi serial antara Arduino dengan PC.

Programnya sederhana saja kok, yaitu untuk menyalakan LED, membuat LED nge-blink dan mematikannya. Semuanya diperintahkan dari PC. Jika kita mengirim angka 1, maka LED menyala. Jika angka 2, maka LED akan blink 5 kali. Untuk mematikan bisa mengirim angka yg lain. Kebetulan Arduino sudah punya LED onboard yang terletak di pin 13 dan bisa langsung digunakan tanpa perlu menambah resistor.

Sederhana banget ya? Tapi menyenangkan untuk bahan belajar microcrontroller dengan Arduino. Tantangan berikutnya adalah mengaplikasikannya dalam kehidupan kita. Untuk itulah teknologi ada.

Di bawah ini source code-nya. Di-modifikasi dari contoh yang tersedia.

/*
Belajar komunikasi Arduino dgn PC
*/

int led = 13;

void setup() {
  Serial.begin(9600);
  pinMode(led, OUTPUT);
}

void loop() {
  // wait availability
  while (Serial.available() == 0);
  // read the input
  int val = Serial.read() - '0';
  
  // LED ON, BLINK, OFF
  if (val == 1) {
    Serial.println("LED dinyalakan.");
    digitalWrite(led, HIGH);
  }
  else if (val == 2) {
    Serial.println("LED blink 5x.");
    for (int i = 0; i <= 4; i++) {
      digitalWrite(led, HIGH);
      delay(100);
      digitalWrite(led, LOW);
      delay(100);
    }
  }
  else {
    Serial.println("LED dimatikan. Tekan angka 1 utk menyalakan.");
    digitalWrite(led, LOW);
  }
  Serial.flush();
}
Iklan

3 pemikiran pada “Ngoprek Arduino Seadanya (Hiks)

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.