Bismillahirahmanirahim.
ane newbie nih gan,ini trit pertama ane.
ane mau share tentang cara memprogram "home made" Arduino.
buat agan yang belum tau arduino,ane kasih mukadimah dulu nih.
Mukadimah
Spoiler for Logo Arduino:
Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang.(Sumber)
Arduino sebenarnya adalah perangkat lunak IDE(Integrated Development Environment ). Sebuah perangkat lunak yang memudahkan kita mengembangkan aplikasi mikrokontroler mulai dari menuliskan source program, kompilasi, upload hasil kompilasi, dan uji coba secara terminal serial.(Sumber)
Spoiler for Arduino UNO:
Arduino IDE adalah softwareuntuk meng-compile program yang akan di upload ke Arduino UNO.
Ini penampakan softwarenya gan.
Spoiler for Arduino IDE:
Disitulah tempat kira menuliskan program yang kita inginkan.
Arduino sendiri menggunakan bahasa C yang telah disederhanakan.
banyak banget syntaxatau susunan program sederhana yang mudah kita mengerti.
contohnya:
pinMode(pin, mode)
digitalWrite(pin, value)
digitalRead(pin)
delay(ms)
dan disana juga banyak example atau contoh contoh program sederhana yang bisa langsung kita coba di Arduino UNO. Sumber
dan lain lain,pokoknya lebih simpel deh.
Permasalahannya gini Arduino IDE hanya kompatibel dengan produknya,sedangkan harga produknya tuh mahal gan di deket kampus ane harga Arduino UNO itu sekitar Rp.175.000-Rp. 250.000.
gak terjangkau bagi kantong anak kosan.
sedangkan kalo kita bikin sendiri cuma habis sekitar Rp.70.000-Rp.90.000.
itulah kenapa ane mau nge-share cara mrogram ATmega16 menggunakan software Arduino IDE.
pin_arduino.h adalah file yang digunakan oleh Arduino IDE untuk men-Define(menyatakan) setiap pin pada mikon untuk digunakan.
Spoiler for pin_arduino.h:
sebelah kiri adalah ATmega8 dan sebelah kanan adalah ATmega16
Spoiler for pin_arduino.h:
biasanya ane kalo mrogram pake CodeVisionAVR itu harus menyatakan PORTdan DDR untuk menentukan setiap pin pada mikon menjadi Input atau Output.
contoh:
PORTA=0x1F;
DDRA=0x40;
PORTD=0b00001100;
DDRD=0b01110000;
tetapi di arduino cuma tinggal.
pinMode(3,OUTPUT)
pinMode(4,INPUT)
kelar urusan
ini ane kasih program yang terdapat di pin_arduino.h untuk ATmega16.
// digital pins are also used for the analog output (software PWM).
// Analog input pins are a separate set.
// these arrays map port names (e.g. port B) to the
// appropriate addresses for various functions (e.g. reading
// and writing)
const uint16_t PROGMEM port_to_mode_PGM[] = {
NOT_A_PORT,
(uint16_t) &DDRA,
(uint16_t) &DDRB,
(uint16_t) &DDRC,
(uint16_t) &DDRD,
};
file ini berfungsi ketika kita akan mengupload program
berisi pengaturan fuse bitmikon,programmer untuk meng-upload,dan keterangan kapasitas Flash Memory
buka file board.txt yang ada di C:\Program Files\Arduino\hardware\arduino\avr
kita scroll ke paling bawah.
nah disitu kita tambahkan untuk board atmega 16.
ini ane kasih code-nya