Kamis, 09 Juni 2016

Pengujian Sismin Arduino Mega 2560 (Kombinasi LED)


Pengujian ini dilakukan untuk mengetahui indikasi bekerja atau tidaknya keluaran dari masing-masing port digital yang ada di Arduino Mega 2560, seta menguji kemampuan port analog menerima masukan. Dimana indikator yang digunakan adalah dengan menggunakan lampu led, dan masukan analog berupa potensiometer.
Konfigurasi Pengujian Sismin Arduino Mega 2560 (kalau Gambar kurang jelas Pin yang digunakan bisa diliat di kode program)


Proses pengujian ini dilakukan dengan membuat kode program (sketch) pada software IDE (integrated development environtment) Arduino yang kemudian akan di upload kedalam flash memory mikrokontroler. Pada proses upload, yang harus dilakukan adalah meng-compile program dari bahasa processing ke kode biner untuk mengetahui bahwa kode program sudah benar (done compiling) atau masih terdapat error. Selanjutnya memasang USB arduino ke PC untuk melakukan proses upload program kedalam mikrokontroler, USB arduino berfungsi juga sebagai komunikasi serial. 



Pada pengujian ini, indikator led yang digunakan disusun menggunakan  konfigurasi common anoda. Program pengujian dibuat untuk melakukan beberapa kombinasi logika high dan low pada pin digital, serta pengolahan data analog yang mempengaruhi percepatan dari logika high-low pada pin analog Arduino.

Berikut ini contoh kode program (sketch) menggunakan bahasa C untuk menyalakan LED secara berurutan, dan potensiometer untuk mengatur percepatan dari penyalaan LED sebagai indikator bahwa pin digital dan pin analog sistem minimum Arduino Mega 2560 bekerja dengan baik.  

Berikut ini contoh listing program yang digunakan untuk pengujian pin digital dan pin analog Arduino Mega 2560:


byte ledPin[]={4,5,6,7,8,9,10,11,12,13}; // membuat array untuk pin LED
int ledDelay;                        // delay untuk perpindahan LED
int direction=1;
int currentLED=0;
unsigned long changeTime;
int potPin=2;

void setup(){

  for(int x=0;x<10;x++){                   // mengeset semua pin menjadi output

    pinMode(ledPin[x],OUTPUT);}
    changeTime=millis();
}

void loop(){
  ledDelay=analogRead(potPin);
  if((millis()-changeTime)>ledDelay){             //jika telah ledDelay ms
    changeLED();                                                   // dari perubahan terakhir
    changeTime=millis();
  }
}

void changeLED(){
  for(int x=0;x<10;x++){                   // mematikan semua LED
    digitalWrite(ledPin[x],LOW);     
  }
  digitalWrite(ledPin[currentLED],HIGH);   //menyalakan LED saat ini
  currentLED+=direction; //
  if(currentLED==9){direction=-1;}               //selisih dengan nilai arah
  if(currentLED==0){direction=1;}                //mengubah arah jika telah mencapai akhir
}
 


Dari hasil pengujian di atas indikator led dan potensiometer bekerja sesuai dengan program yang diinputkan ke dalam flash memory mikrokontroler, dimana pada saat Arduino menyala led akan otomotasis menyala bergantian yang kecepatannya dipengaruhi oleh besarnya nilai dari potensiometer. Semakin kecil nilai potensio maka kecepatan high-low dari led semakin cepat, dan sebaliknya.

Untuk Code Program bisa didownload DISINI. 

Selamat Mencoba....
Semoga Bermanfaat...

Tidak ada komentar:

Posting Komentar

Related Posts Plugin for WordPress, Blogger...