Advertise here

Sabtu, 16 Maret 2019


Setelah memahami simulasi dan membuat rangkaian pada proteus, selanjutnya mencoba membuat proyek LED 8 bit, ini adalah dasar pemograman GPIO arduino sebagai OUTPUT yang akan mengeluarkan data ke pin 2, 3, 4, 5, 6, 7, 8 ,& 9.  Pertama kali yang anda lakukan sebelum memulai pemograman adalah :

Menentukan pin berapa saja yang mau digunakan?
Menentukan mode pin sebagai INPUT atau OUTPUT?
Menentukan mode running program?

Ok, sekarang kita akan menjawab agar anda dapat memahami maksud dari pertanyaan diatas, yang pertama adalah menentukan pin yang digunakan yaitu pin 2, 3, 4, 5, 6, 7, 8 ,& 9, yang kedua karena kita ingin menyalakan LED maka pin-pin tersebut kita jadikan OUTPUT, hal ini disebut dengan proses inisialisasi. ketiga adalah melakukan setup pin-pin tersebut pada fungsi void setup. Sehingga penulisan pemograman untuk void setup seperti berikut:
// Inisialisasi Pin 2-9 Sebagai Output.
void setup() {
  pinMode(2,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(4,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(8,OUTPUT);
  pinMode(9,OUTPUT);
}    
  
Pada tutorial ini saya memberikan 2 program untuk menyalakan lampu LED agar anda dapat menganalisa pergram keduanya dan mengetahui perbedaanya. Cara kerja Kode Program_1 adalah dengan menggeser nyala LED dari Kiri kekanan dan berulang. Cara kerja Program_2 adalah Mengeser nyala LED dari kiri kekanan kembali ke kiri lagi dan seterusnya. Kode programnya adalah sbb:

Kode Program_1: Running LED Shift Left
// Inisialisasi Pin 2-9 Sebagai Output.
void setup() {
  pinMode(2,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(4,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(8,OUTPUT);
  pinMode(9,OUTPUT);
}    
// Program Utama Running LED Geser Kanan
void loop() {
  digitalWrite(9, HIGH); 
  delay(100);             
  digitalWrite(9, LOW);   

  digitalWrite(8, HIGH); 
  delay(100);             
  digitalWrite(8, LOW);    
 
  digitalWrite(7, HIGH); 
  delay(100);             
  digitalWrite(7, LOW);   
 
  digitalWrite(6, HIGH); 
  delay(100);             
  digitalWrite(6, LOW);   
 
  digitalWrite(5, HIGH); 
  delay(100);             
  digitalWrite(5, LOW);   
 
  digitalWrite(4, HIGH); 
  delay(100);             
  digitalWrite(4, LOW);   
 
  digitalWrite(3, HIGH); 
  delay(100);             
  digitalWrite(3, LOW);   
 
  digitalWrite(2, HIGH); 
  delay(100);             
  digitalWrite(2, LOW);   
}

Kode Program_2: Running LED Shift Left-Right
      // Running LED Geser Kiri Kanan
void setup() {
  // Set-Up Pin 6-13 sebagai Output
  for (int i=2; i<=9; i++){
  pinMode(i,OUTPUT);
  }
}

// Program Utama
void loop() {
  for (int i=2; i<=9; i++)
  {
  digitalWrite(i, HIGH); 
  delay(100// Running LED Geser Kiri Kanan
void setup() {
  // Set-Up Pin 6-13 sebagai Output
  for (int i=2; i<=9; i++){
  pinMode(i,OUTPUT);
  }
}

// Program Utama
void loop() {
  for (int i=2; i<=9; i++)
  {
  digitalWrite(i, HIGH); 
  delay(100);             
  digitalWrite(i, LOW);   
  }
  for (int i=8; i>=3; i--)
  {
  digitalWrite(i, HIGH); 
  delay(100);             
  digitalWrite(i, LOW);   
  }
}

Kode Program_3: Strobo Light
void setup() {
  // Set-Up Pin 6-13 sebagai Output
  for (int i=2; i<=9; i++){
  pinMode(i,OUTPUT);
  }
}

// Program Utama
void loop() {
  digitalWrite(9, HIGH);  
  digitalWrite(8, HIGH);   
  digitalWrite(7, HIGH); 
  digitalWrite(6, HIGH);
  delay(100);
  digitalWrite(8, LOW);   
  digitalWrite(9, LOW); 
  digitalWrite(7, LOW);    
  digitalWrite(6, LOW);   
  delay(100);
  digitalWrite(9, HIGH);  
  digitalWrite(8, HIGH);   
  digitalWrite(7, HIGH); 
  digitalWrite(6, HIGH);
  delay(100);
  digitalWrite(8, LOW);   
  digitalWrite(9, LOW); 
  digitalWrite(7, LOW);    
  digitalWrite(6, LOW);   
  delay(100);
  digitalWrite(5, HIGH);  
  digitalWrite(4, HIGH);   
  digitalWrite(3, HIGH); 
  digitalWrite(2, HIGH);
  delay(100);
  digitalWrite(5, LOW);   
  digitalWrite(4, LOW); 
  digitalWrite(3, LOW);    
  digitalWrite(2, LOW);   
  delay(100);
  digitalWrite(5, HIGH);  
  digitalWrite(4, HIGH);   
  digitalWrite(3, HIGH); 
  digitalWrite(2, HIGH);
  delay(100);
  digitalWrite(5, LOW);   
  digitalWrite(4, LOW); 
  digitalWrite(3, LOW);    
  digitalWrite(2, LOW);   
  delay(100);

}

Rangkaian:



Comments 0

Advetise banner