Anda di halaman 1dari 7

PENGENALAN CV AVR, ARDUINO, AVR OSP II, PROLIFIC DAN

MIKROKONTROLER
Arif Rifan1*) Putri Wiranda 2)
1*)
Praktikan Laboratorium Teknik Instrummentasi, Program Studi Teknik Pertanian
2)
Asisten Laboratorium Teknik Instrumentasi, Program Studi Teknik Pertanian
*)
arif.rifan99@gmail.com

ABSTRAK
Pembuatan alat ukur atau instrumentasi memerlukan suatu rangkaian elektronika yang didalamnya
terdapat komponen elektronika. Selain memerlukan rangkaian elektronika atau hardware, alat ukur
juga memerlukan komponen software. Software alat ukur dibuat dalam bentuk bahasa program yang
nantinya akan dimasukkan ke dalam suatu mikrokontroler untuk menampilkan hasil pembacaan
sensor. Untuk itu dalam praktikum ini dilakukan pembuatan bahasa program menggunakan CV AVR
dan Arduino yang kemudian program tersebut diunduh ke dalam mikrokontroler menggunakan AVR
OSP II. Tujuan dilakukan praktikum Pengenalan CV AVR, Arduino, AVR OSP II, Prolific dan
Mikrokontroler yaitu mampu mengetahui fungsi dari CV AVR, Arduino, AVR OSP II, Prolific dan
Mikrokontroler serta hubungan dari ketiga software tersebut dan mahasiswa mampu menghasilkan
bahasa program suatu alat ukur. Alat yang digunakan ialah mikrokontroler, LCD, dan laptop serta
bahan berupa software CV AVR, Arduino, AVR OSP II, Prolific dan Proteus. Berdasarkan praktikum
yang dilakukan diketahui bahwa software CV AVR digunakan untuk membuat bahasa program alat
ukur dan program tersebut disuntikkan ke dalam mikrokontroler melalui software AVR OSP II. Pada
mikrokontroler akan ditampilkan hasil pengukuran. Begitiupun yang dilakukan pada Arduino.

Kata Kunci: Arduino, AVR OSP II, CV AVR, mikrokontroler, sensor.

PENDAHULUAN Perangkat pengembang suatu sistem


mikrokontroler sangat penting untuk
Pembuatan alat ukur atau instrumentasi
melakukan ekperimen dengan mikrokontroler
memerlukan suatu rangkaian elektronika yang
yang dipilih, mikrokontroler bekerja dalam
didalamnya terdapat komponen elektronika.
bahasa mesin sedangkan manusia sulit untuk
Salah satu komponen yang terdapat dalam alat
mengerti bahasa mesin. Software yang sering
ukur seperti sensor. Alat ukur ini
digunakan yaitu C, Basic, atau Assembler,
mengkonversi besaran fisik menjadi besaran
selanjutnya dengan bantuan Compiler program
listrik berupa tegangan atau tahanan yang
akan diterjemahkan dalam bahasa mesin
dapat dibaca oleh manusia.
(Toyib dan Juni, 2016).
Selain memerlukan rangkaian elektronika
Berdasarkan uraian di atas, maka perlu
atau hardware, alat ukur juga memerlukan
dilakukan praktikum Pengenalan CV AVR,
komponen software. Software alat ukur dibuat
Arduino, AVR OSP II, Prolific dan
dalam bentuk bahasa program yang nantinya
Mikrokontroler agar mahasiswa mampu
akan dimasukkan ke dalam suatu
mengetahui fungsi dari CV AVR, Arduino,
mikrokontroler untuk menampilkan hasil
AVR OSP II, Prolific dan Mikrokontroler serta
pembacaan sensor.
hubungan dari ketiga software tersebut dan
Komponen software alat ukur dapat
mahasiswa mampu menghasilkan bahasa
dibuat dalam berbagai aplikasi seperti software
program suatu alat ukur.
C, Basic atau Assembler yang mendukung
Tujuan dan Kegunaan Praktikum
Compiler. Compiler akan menerjemahkan
Tujuan dilakukan praktikum Pengenalan
program ke dalam bahasa mesin. Salah satu
CV AVR, Arduino, AVR OSP II, Prolific dan
software yang dapat digunakan untuk
Mikrokontroler yaitu mampu mengetahui
membuat program seperti Code Vision AVR.
fungsi dari CV AVR, Arduino, AVR OSP II,
Prolific dan Mikrokontroler serta hubungan
dari ketiga software tersebut dan mahasiswa d. Pada layar CodeWizardAVR pilih AVR
mampu menghasilkan bahasa program suatu Chip Type AT90, ATtiny, ATmega,
alat ukur. FPSLIC lalu klik OK.
Sedangkan kegunaan dari praktikum ini
adalah sebagai bahan acuan dalam pembuatan
bahasa program yang digunakan dalam mini
project.

METODOLOGI PRAKTIKUM
Alat
Alat yang digunakan pada praktikum Gambar 31. Layar CodeWizardAVR.
Pengenalan CV AVR, Arduino, AVR OSP II,
Prolific dan Mikrokontroler ialah sistem e. Pada layar CodeWizardAVR klik tool bar
minimum mikrokontroler, LCD dan laptop. chip kolom bagian chip ubah menjadi
Bahan ATmega32 dan pada kolom bagian clocknya
Bahan yang digunakan pada praktikum ubah menjadi 16,000000.
Pengenalan CV AVR, Arduino, AVR OSP II,
Prolific dan Mikrokontroler ialah software CV
AVR, Arduino, AVR OSP II, Prolific dan
proteus.

Prosedur Praktikum
Adapun prosedur kerja pada praktikum
CV AVR, AVR OSP II dan mikrokontroler, Gambar 32. Layar Code Wizard AVR chip.
yaitu: f. Pada layar CodeWizardAVR klik tool bar
1. Software CV AVR ports kolom lalu klik bagian ports C ubah
a. Menyiapkan alat dan bahan. semua bit dari in menjadi out
b. Membuka software CV AVR

Gambar 33. Layar Code Wizard AVR


ports.
Gambar 29. Tampilan awal CV AVR. g. Pada layar CodeWizardAVR klik tool bar
c. Mengklik create a new file or project Alphanumeric LCD lalu mengceklis enable
kemudian plilih project lalu OK, setelah Alphanumeric LCD support kemudian
itu klik Yes. mengubah port A menjadi port C

Gambar 30. Tampilan create a new file Gambar 34. Layar CodeWizardAVR
or project. Alphanumeric LCD.
h. Pada layar CodeWizardAVR klik tool bar
ADC lalu mengceklis ADC enable. Pada
bagian kolom volt. Ref pilih AREF pin dan
pada kolom Clock pilih 1000,000 kHz.

Gambar 39. Memilih menu file example.

Gambar 35. Layar Code Wizard AVR


ADC.
c. Pilih menu hello world pada liquid
i. Klik tool bar generate program lalu save file
krystal.
sebanyak tiga kali.

Gambar 36. Save file.


Gambar 40. Hello world.
j. Tampilan bahasa program pada CV AVR
setelah menyimpan file.
d. Menampilkan data.

Gambar 37. Tampilan bahasa program


pada CV AVR.. Gambar 41. Tampilan data arduino.

2. Software arduino e. Menulis nama, nim dan kelompok pada


a. Membuka software Arduino. tampilan data arduino.

Gambar 38. Tampilan menu arduino.


Gambar 42. Tampilan nama, nim dan
kelompok pada data arduino.
b. Memilih menu file lalu memilih example.
f. Mengunduh file pada data arduino.

Berdasarkan praktikum yang telah


Gambar 43. Tampilan pada saat mengunduh dilakukan dapat diketahui bahwa software CV
file data arduino. AVR dapat digunakan untuk membuat suatu
bahasa program C yang kemudian dapat
g. Mengupload file pada data arduino. mengubah menjadi bahasa mesin. Dari bahasa
program yang telah dibuat yang kemudian
diuji meggunakan rangkaian sensor suhu yang
telah dibuat pada software Proteus. Setelah
pengujian menggunakan Proteus, maka dapat
dilakukan pengujian pada rangkaian
mikrokontroler Arduino untuk membaca dan
menampilkan data pada LCD. Hal ini sesuai
dengan pernyataan Prihatmoko (2016), bahwa
data tersebut oleh Arduino diubah menjadi
Gambar 44. Tampilan pada saat mengupload data digital untuk dapat diolah dan dihasilkan
file data arduino. keluaran berupa kipas yang menyala untuk
mendinginkan ruangan serta tampilan data
suhu secara realtime menggunakan LCD.
HASIL DAN PEMBAHASAN Syntax untuk mengatur posisi penempatan
a. Hasil pada CV AVR tulisan dapat menggunakan lcd_gotoxy (0,0);
artinya data yang ditampilkan akan berada
pada kolom pertama dan baris pertama
sedangkan. Penempatan tulisan pada LCD
menggunakan pengaturan garis x dan y dimana
x adalah baris dan y adalah kolom. Sedangkan
untuk menampilkan tulisan pada LCD dapat
digunakan code lcd_putsf(“xxxx”);.
b. Hasil pada Proteus Syntax untuk mengatur nyala LED dapat
dilakukan pada software CV AVR dengan
mengatur port-port yang telah disediakan.
Mikrokontroler berfungsi sebagai
pengontrol rangkaian elektronik dan
menyimpan program yang telah dibuat untuk
rangkaian elektronik. Mikrokontroler terdiri
dari beberapa komponen seperti processor,
c. Display pada LCD memori, input dan output yang menjadi satu
sehingga biasa disebut sebagai sistem
komputer. Mikrokontroler ini dapat
mengerjakan satu atau lebih tugas yang
dimasukkan kedalammnya. Hal ini sesuai
pendapat Chamim (2010), bahwa
mikrokontroler adalah sebuah sistem komputer
yang seluruh atau sebagian besar elemennya // Alphanumeric LCD functions
dikemas dalam satu chip IC, sehingga sering #include <alcd.h>
disebut single chip microcomputer.
Mikrokontroler merupakan system computer #define ADC_VREF_TYPE 0x00
yang mempunyai satu atau beberapa tugas
yang sangat spesifik. Elemen mikrokontroler // Read the AD conversion result
tersebut diantaranya adalah pemroses unsigned int read_adc(unsigned char
(processor), memori, input dan adc_input)
{
KESIMPULAN ADMUX=adc_input | (ADC_VREF_TYPE &
0xff);
Berdasarkan praktikum yang telah dilakukan, // Delay needed for the stabilization of the
dapat disimpulkan yaitu: ADC input voltage
1. CV AVR merupakan sebuah software yang delay_us(10);
digunakan untuk membuat sebuah bahasa // Start the AD conversion
program C yang kemudian dapat diubah ADCSRA|=0x40;
menjadi bahasa mesin. Untuk pengujian // Wait for the AD conversion to complete
dan penggunaannya dibutuhkan sebuah while ((ADCSRA & 0x10)==0);
mikrokontroler dan Arduino. ADCSRA|=0x10;
2. Bahasa program yang dihasilkan berupa return ADCW;
bahasa program sensor sudut. }

DAFTAR PUSTAKA // Declare your global variables here


unsigned char buf[33];
Mochtiarsa, Y. dan Bahtiar, S. 2016. void main(void)
Rancangan Kendali Lampu {
Menggunakan Mikrokontroler // Declare your local variables here
ATMega328 Berbasis Sensor Getar. float a,b,s;
Sekolah Tinggi Manajemen // Input/Output Ports initialization
Informatika dan Komputer Cikarang: // Port A initialization
Cikarang. // Func7=In Func6=In Func5=In Func4=In
Prihatmoko, D. 2016. Perancangan dan Func3=In Func2=In Func1=In Func0=In
Implementasi Pengontrol Suhu // State7=T State6=T State5=T State4=T
Ruangan Berbasis Mikrokontroller State3=T State2=T State1=T State0=T
Arduino Uno. Jurnal SIMETRIS: PORTA=0x00;
Jepara. DDRA=0x00;
Toyib, R. dan Juni H. 2016. Aplikasi Remote
Kontrol Cpu/Laptop Jarak Jauh // Port B initialization
dengan Media Serial Handphone // Func7=Out Func6=Out Func5=Out
dengan Mikrokontroler. Jurnal Func4=Out Func3=Out Func2=Out
Pseudocode: Bengkulu. Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0
LAMPIRAN State3=0 State2=0 State1=0 State0=0
PORTB=0x00;
Lampiran 1. Bahasa Program di CV AVR DDRB=0xFF;
#include <mega32a.h>
#include <stdio.h> // Port C initialization
#include <stdlib.h> // Func7=Out Func6=Out Func5=Out
#include <math.h> Func4=Out Func3=Out Func2=Out
#include <delay.h> Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0 ADMUX=ADC_VREF_TYPE & 0xff;
State3=0 State2=0 State1=0 State0=0 ADCSRA=0x84;
PORTC=0x00;
DDRC=0xFF; // SPI initialization
// SPI disabled
// Port D initialization SPCR=0x00;
// Func7=Out Func6=Out Func5=Out
Func4=Out Func3=Out Func2=Out // TWI initialization
Func1=Out Func0=Out // TWI disabled
// State7=0 State6=0 State5=0 State4=0 TWCR=0x00;
State3=0 State2=0 State1=0 State0=0
PORTD=0x00; // Alphanumeric LCD initialization
DDRD=0xFF; // Connections are specified in the
// Project|Configure|C
TCCR0=0x00; Compiler|Libraries|Alphanumeric LCD menu:
TCNT0=0x00; // RS - PORTC Bit 0
OCR0=0x00; // RD - PORTC Bit 1
// EN - PORTC Bit 2
TCCR1A=0x00; // D4 - PORTC Bit 4
TCCR1B=0x00; // D5 - PORTC Bit 5
TCNT1H=0x00; // D6 - PORTC Bit 6
TCNT1L=0x00; // D7 - PORTC Bit 7
ICR1H=0x00; // Characters/line: 20
ICR1L=0x00; lcd_init(20);
OCR1AH=0x00;
OCR1AL=0x00; while (1)
OCR1BH=0x00; {
OCR1BL=0x00; // Place your code here
lcd_gotoxy (0,0);
ASSR=0x00; lcd_putsf ("arif");
TCCR2=0x00;
TCNT2=0x00; a=read_adc (0);
OCR2=0x00; b=(float) a*5000/1024;

MCUCR=0x00; lcd_gotoxy (0,1);


MCUCSR=0x00; sprintf (buf, "sudut=%0.0f\xdf",s);
lcd_puts (buf);
// Timer(s)/Counter(s) Interrupt(s) }
initialization }
TIMSK=0x00;
Lampiran 2. Bahasa Program di Arduino
// USART initialization
// USART disabled //YWROBOT
UCSRB=0x00; //Compatible with the Arduino IDE 1.0
//Library version:1.1
ACSR=0x80; #include <Wire.h>
SFIOR=0x00; #include <LiquidCrystal_I2C.h>
// ADC initialization LiquidCrystal_I2C lcd(0x27,20,4); // set the
// ADC Clock frequency: 1000,000 kHz LCD address to 0x27 for a 16 chars and 2 line
// ADC Voltage Reference: AREF pin display
void setup()
{
lcd.init(); // initialize the lcd
lcd.init();
// Print a message to the LCD.
lcd.backlight();
lcd.setCursor(3,0);
lcd.print("Hello, world!");
lcd.setCursor(2,1);
lcd.print("Ywrobot Arduino!");
lcd.setCursor(0,2);
lcd.print("Arduino LCM IIC 2004");
lcd.setCursor(2,3);
lcd.print("Power By arif");
}

void loop()
{
}