Membuat Library Pada Arduino
Library adalah sebuah program yang umumnya berupa file .h (header) dan file .cpp, didalam file .h berisi tentang class-class yang nantinya akan dijelaskan pada file .cpp.
Dinamakan sebagai Library mungkin karena fungsinya yang mirip dengan perpustakaan, dimana didalam perpustakaan sendiri berisi tentang buku-buku yang dapat kita jadikan sebagai referensi, sehingga ketika kita menulis sebuah buku atau karya ilmiah, umumnya nama buku dan pengarang akan kita tulis pada buku/karya ilmiah kita. Begitu juga dengan library pada Arduino atau umumnya bahasa pemrograman, karena didalam Library tersebut terdapat class-class, kita dapat memanggil class-class tersebut pada program yang kita buat sehingga lebih simple, dengan syarat-nya kita memasukkan nama library yang akan digunakan, misalnya #include <Servo.h> atau #include <EEPROM.h> dan lain sebagainya.
Pada kesempatan kali ini, saya akan membahas tentang cara membuat Library di Arduino, artikel ini terinspirasi dari blog http://blog.ulindev.com/tutorial-membuat-library-pada-arduino/ library yang akan dibuat adalah tentang penyalaan LED, pemadaman LED, dan LED berkedip. Program yang dibuat adalah sebagai berikut
LED13.h
Library adalah sebuah program yang umumnya berupa file .h (header) dan file .cpp, didalam file .h berisi tentang class-class yang nantinya akan dijelaskan pada file .cpp.
Dinamakan sebagai Library mungkin karena fungsinya yang mirip dengan perpustakaan, dimana didalam perpustakaan sendiri berisi tentang buku-buku yang dapat kita jadikan sebagai referensi, sehingga ketika kita menulis sebuah buku atau karya ilmiah, umumnya nama buku dan pengarang akan kita tulis pada buku/karya ilmiah kita. Begitu juga dengan library pada Arduino atau umumnya bahasa pemrograman, karena didalam Library tersebut terdapat class-class, kita dapat memanggil class-class tersebut pada program yang kita buat sehingga lebih simple, dengan syarat-nya kita memasukkan nama library yang akan digunakan, misalnya #include <Servo.h> atau #include <EEPROM.h> dan lain sebagainya.
Pada kesempatan kali ini, saya akan membahas tentang cara membuat Library di Arduino, artikel ini terinspirasi dari blog http://blog.ulindev.com/tutorial-membuat-library-pada-arduino/ library yang akan dibuat adalah tentang penyalaan LED, pemadaman LED, dan LED berkedip. Program yang dibuat adalah sebagai berikut
LED13.h
#ifndef LED13_H
#define LED13_H
#include <Arduino.h>
class LED13{
public:
LED13();
~LED13();
void led_nyala();
void led_padam();
void led_blink(int waktu);
};
#endif
LED13.cpp
#include "LED13.h"
const int LED_PIN = 13;
//constructor
LED13::LED13(){
Serial.begin(9600);
pinMode(LED_PIN, OUTPUT);
}
//destructor
LED13::~LED13(){} //tanda tilde ( ~ ) berguna untuk menjelaskan destructor
//class-class yang nantinya dapat kita panggil
void LED13::led_nyala(){
Serial.println("LED_Menyala");
digitalWrite(LED_PIN, HIGH);
}
void LED13::led_padam(){
Serial.println("led_padam");
digitalWrite(LED_PIN, LOW);
}
void LED13::led_blink(int waktu){
Serial.println("Blinking LED");
led_nyala();
led_padam(); }
kemudian program yang dibuat di Arduino adalah sebagai berikut:
#include <LED13.h>
LED13 led; //mendefinisikan LED13 menjadi led
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
led.led_nyala(); //memanggil class led_nyala
delay(900);
led.led_padam();
delay(1000);
led.led_blink(1000);
}
dengan menggunakan Library, maka program yang dibuat pada Arduino IDE menjadi lebih sederhana, kemudian memori yang digunakan juga lebih sedikit seperti pada Gambar-gambar berikut
Dari Gambar diatas, kita dapat melihat bahwa nama dari variable mempengaruhi pemakaian memori, tetapi jika kita menggunakan library, maka berapa panjang-pun nama library, memori yang digunakan tetap.
Gan, punya saya kok hasilnya, 'does not name a type' ya?
ReplyDeletebaris berapa gan??, masalahnya di file .c atau file .h nya ?
ReplyDeleteThank you for the article!
ReplyDeleteBagaimana cara memastikan library kompatibel dengan Arduino IDE dan board yang digunakan? Visit Us Telkom University
ReplyDeleteuntuk memastikannya bisa coba di compile aja, untuk boardnya mungkin harus sama versi nya, misalnya beberapa librari yang bisa digunakan di arduino mega tidak bisa digunakan di arduino due, karena chip yang digunakan nya berbeda
Delete