Senin, 17 Februari 2014

Pengenalan Bahasa C dan Software CVAVR

Lab sheet 01
Topik : Pengenalan Bahasa C dan Software CVAVR

A.      Struktur Bahasa C pada CVAVR.
Penggunaan mikrokontroler yang diterapkan diberbagai alat rumah tangga ,otomotif, sampai dengan kendali, membuat mikrokontroler mulai masuk didunia pendidikan. Banyak varian dan type dari mikrokontroler yang di pelajari  dan digunakan didunia pendidikan. Salah satu varian yang banyak dipelajari dan digunakan adalah produk dari ATMEL dengan type keluarga AVR. Banyak software yang dapat digunakan untuk memprogram mikrokontroler keluarga AVR, dengan bahasa pemrograman masing-masing.
Salah satu bahasa pemorograman yang dikembangkan atau digunakan dunia pendidikan adalah bahasa C dengan struktur dan kemudahan yang dimilikinya. Perkembangan bahasa pemrograman yang dimulai dari bahasa tingkat rendah  (bahasa assembly/bahasa mesin) sampai dengan bahasa tingkat tinggi (salah satunya bahasa C). Bagi mikrokontroler bahasa assembly merupakan bahasa yang mudah untuk diterjemahkan bagi prosesornya, sehingga dikatakan sebagai bahasa tingkat rendah. Sedangkan bahasa tingkat tinggi merupakan bahasa yang sulit diterjemahkan oleh prosesor yang ada di dalam mikrokontroler. Pemilihan bahsa C sebagai bahasa pemrograman untuk mikrokontroler dikarenakan mudah dipahami dan diterjemahkan bagi user atau programmer.
Bahasa C memiliki struktur pemrograman yang khusus, selain itu bahasa C memiliki sifat case sensitive. Artinya tersebut adalah bahwa penulisan kata/word program sangat sensitive dengan mendeteksi perbedaan capital tidaknya huruf yang digunakan. Satu huruf yang berbeda pada satu kata yang diulang, menyebabkan software tidak akan bisa meng-compile seluruh program yang dibuat.
Setiap bahasa pemrograman memiliki type data masing-masing. Type data merupakan jangkauan suatu data yang mampu/dapat dikerjakan/diolah oleh mikroprosesor dalam program yang dibuat. Penggunan type data ini juga harus sesuai kebutuhan dan di sesuaikan dengan fungsi setiap data. Pemilihan penggunaan type data dapat mempengaruhi besarnya memory file yang dibuat. Berikut daftar type data yang dapat digunakan dalam pemrograman bahasa C;

Type
Size(bits)
Range(jangkauan)
Bit
1
0 , 1
Bool,_Bool
8
0 , 1
char
8
-128 sampai 127
unsigned char
8
0 sampai 255
signed char
8
-128 sampai127
Int
16
-32768 sampai 32767
short int
16
-32768 sampai 327676
unsigned int
16
0 sampai 65535
signed unt
16
-32768 sampai 326767
Long int
32
-2147483648 sampai 2147483648
unsigned long int
32
0 sampai 4294967295
signed long int
32
-2147483648 sampai 2147483648
Float
32
±1.145e-38 sampai 3.402e38
Double
32
±1.145e-38 sampai 3.402e38
Penggunaan type data bersamaan dengan variable data yang akan digunakan. Penulisan type data sesuai sruktur data dapat dilihat sebagai berikut:
bit data_1;                  terdapat variable dengan nama data_1 dengan type data bit
int data_2;                  terdapat variable dengan nama data_2 dengan type data integer

Selain tipe data, bahsa C memiliki struktur penulisan akan symbol-simbol opersai aritmatik. Setiap penggunaan syimbol-simbol aritmatik  memilliki fungsi masing masing. Berikut table simbol- simbol aritmatik yang digunakkan salam bahasa C;

Operator
Keterangan
Operator
Keterangan
+
Penjumlahan
-
Pengurangan
*
Perkalian
/
Pembagian
%
Modulus
++
Penjumlahan berkelanjutan
--
Pengurangan berkelanjtan
=
Sama dengan/memberi nilai
==
Nilainya sama dengan
~

!

!=
Hasil tidak sama dengan
< 
Lebih kecil
> 
Lebih besar
<=
Hasil lebih kecil sama dengan
>=
Hasil lebih besar samadengan
&
Dan/AND
&&
AND(dua kondisi)
ǀ
Or
ǁ
OR(duakondisi)
˄
Factor pangkat
?:

<< 
Geser bit kekiri
>> 
Geser bit kekanan
-=
Hasil pengurangan sama dengan
+=
Hasil penjumlahan sama dengan
/=
Hasil bagi sama dengan
%=
Hasil modulus sama dengan
&=
Hasil peng-AND-and sama dengan
*=
Hasil perkalian sama denbgan
˄=
Hasil pangkat sama dengan
ǀ=
Hasil peng-OR-an sama dengan
>>=
Hasil penggeseran bit kekanan sama dengan
<<=
Hasil penggeseran bit kekiri sama dengan

Instruksi-instruksi bahasa pemrograman yang ada pada bahasa C tidak semuanya digunakan dalam pemrograman mikrokontroler. Struktur dan urutan penulisan program hampir sama untuk keduanya. Struktur bahasa C memiliki kepala program, dan tubuh program, sedangkan tubuh program bisa terdiri dari induk program dan anak program. Berikut struktur sederhana dari pemrograman bahasa C.
                #include<stdio.h>                          
                #include<conio.h>                                                          Kepala program
                Int data1();
Void main ()       
{
……                                             Induk program
……
}
                                                                                                   Tubuh program
Int data()
{
……                                            Anak program                                                                            
}
Penggunaan struktur penulisan bahasa pemrograman bahasa C dapat tersusun dari sebuah tubuh  program yang dapat terdiri dari sebuah induk  program. Dan satu atau lebih anak program. Anak progam memiliki fungsi untuk mengerjakan satu blog diagram yang sering digunakan secara berulang-ulang. Anak program akan diakses oleh induk  program  sesuai dengan kebutuhanakan sub bagian program tersebut. Sedangkan kepala program berfungsi untuk menyertakan  file acuan/library guna mengolah (compile/build)  program yang  telah dibuat.
Penulisan struktur bahasa C didalam CVAVR  dapat dilihat seperti dibawah ini:
#include <mega16.h>                    penyertaan file                                   kepala program
int data1();                          deklarasi global variabel
void main ()
{
int data2();                          deklarasivariabel
……
PORT=0xFF;             
DDRC=0x00;              inisialisasi port
…..                                                                                             induk program                                 tubuh program
while(1)
                {
…..                        subrutin
…..
};
}



Deklarasi sebuah variable dapat digolongkan menjadi dua, yaitu local variable dan global variable. Local variable dipakai dan hanya dapat diakses pada sub program tempat mendeklarasikannya, sedangkan global variable dipakai dan dapat diakses seluruh bagian program. Inisialisasi PORT digunakan untuk memfungsikan  PORT yang dituju sebagai masukan/keluaran serta nilai defaultnya. Sedangkan bagian sub rutin adalah blok program yang akan selalu dikerjakan terus menerus oleh mikroprosesor selama mikrokontroler hidup.
Beberapa Instruksi-instruksi dalam bahasa C yang sering digunakan dapat ditulis sebagai berikut:

No.
Fungsi
Bahasa Pemrograman
1.
Syarat
if (kondisi)
    {
     ……. (aksi yang dikerjakan)
     };
2.
Percabangan
if (kondisi)
    {
     ……. (aksi yang dikerjakan)
    }
else if (kondisi)
    {
     ……. (aksi yang dikerjakan)
    }
     …….
     …….
else
    {
     ……. (aksi yang dikerjakan)
     };

3.
Percabangan
switch (variable)
     {
     case nilai_variabel_ke-1
            {
            ……. (aksi yang dikerjakan)
            }
     case nilai_variabel_ke-2
           {
            ……. (aksi yang dikerjakan)
           }
     …….…….
     …….…….
     default:
           {
           ……. (aksi yang dikerjakan)
            }
      }
4.
Melompat
gotoalamat_tujuan;
…….…….…….…….
…….…….…….…….
alamat_tujuan:
…….…….…….…….
…….…….…….…….

5.
Melompat keluar dari perulangan
break;
6.
Perulangan
while (kondisi)
    {
     ……. (aksi yang dikerjakan)
    }
7.
Perulangan
do
    {
     ……. (aksi yang dikerjakan)
     }
while (syarat);
8.
Perulangan
for (nilai_awal,syarat,operasi++/--)
    {
     ……. (aksi yang dikerjakan)
     };

Dan masih banyak lagi instruksi program lainnya (ref: Pemrograman Bahasa C, Abdul Kadir).
B.      Pengenalan Software Code Vision AVR (CVAVR)
Code Vision AVR merupakan sebuah cross-compiler C, Integrated Development Environtment (IDE),dan Automatic Program Generator yang didesain untuk microcontroller buatan Atmel seri AVR. Cross-compiler C mampu menerjemahkan hamper semua perintah dari bahasa ANSI C, sejauh yang diijinkan oleh arsitektur dari AVR, dengan tambahan beberapa fitur untuk mengambil kelebihan khusus dari arsitektur AVR dan kebutuhan pada sistem embedded.

Code Vision AVR juga mempunyai Automatic Program Generator bernama CodeWizardAVR, yang mengijinkan anda untuk menulis, dalam hitungan menit, semua intruksi yang diperlukan untuk membuat beberapa fungsi-fungsi tertentu. Dengan fasilitas ini mempermudah para programmer pemula untuk belajar pemrograman microcontroller menggunakan CVAVR.Secara garis besar bagian-bagian CVAVR dapat diuraikan sebagai berikut ini :




Massage Window
 
 


 

Project
Navigation

Editor
Window
 

 







Untuk memulai menulis program didalam  Software CVAVR terlebih dahulu melalui langkah-langkah sebagai berikut :

1.       

File       New         Pilih Project

2.       Selanjutnya akan muncul window konfirmasi menggunakan AGP CodeWizard AVR               Yes

 



Window CodeWizardAVR digunakan untuk pengaturan PORT dan fasilitas sesuai dengan
fungsi yang diinginkan
 





4.     
Setelah selesai dengan pengaturan padaCodeWizard AVR pilih File      Generate, Save and Exit (Catatan: pemberian nama file sebanyak 3x; dengan nama file yang sama; hindarikalimat yang panjang, capital dan spasi)

Selesai pemberian nama file, akan muncul window utama editor program sebagai berikut


Program Editor
 







1 komentar:

Posting Komentar