Bahasa C PDF
Bahasa C PDF
BAHASA C
Pada saat ini sudah dikembangkan bahwa untuk membuat pemrograman
mikrokontroler menggunakan bahasa level tinggi bukan menggunakan bahasa
assembly maupun bahasa mesin. Salah satu bahasa level tinggi yang banyak
digunakan adalah bahasa C. Ada beberapa software pemrograman mikrokontroler
yang menggunakan bahasa C sebagai bahasa pemrogramannya seperti Codevision
AVR dan WinAVR.
16
// penulisan program utama
void main(void)
{
// Port B initialization Port B sebagai output
PORTB=0x00;
DDRB=0xFF;
dataout=00;
// Penulisan program ada di dalam while (1)
while(1)
{
PORTB=dataout; // PB = dataout
delay_ms(100); // tunda selama 100 ms
dataout=dataout+1; // dataout ditambah 1;
}
}
1.3.2. INDENTIFIERS
Dalam pemrogramaman bahasa C sangat perlu sekali untuk diketahui
dalam pemberiah nama atau Identifier yang diberikan pada variabel, fungsi, label
atau objek lain. Dalam pemberian nama dapat mengandung huruf yaitu besar A
sampai Z dan huruf kecil a sampai z dan angka 0 sampai 9 dan karakter ( _ ).
Nama yang digunakan bersifat Case sensitive yaitu membedakan antara huruf
besar dan huruf kecil. Dan untuk nama dapat mencapai maksimal 32 karakter.
1.3.3. KONSTANTA
Dalam pemrogramam bahasa C ada beberapa cara dalam penulisan
konstanta yaitu sebagai berikut: Penulisan untuk Integer dan long integer ditulis
dalam bentuk decimal (123), bila ditulis dalam bentuk biner maka harus didahului
0b seperti 0b10101001, dan jika ditulis dalam bentuk hexadecimal maka harus
didahului 0x seperti 0xA9, sedangkan untuk konstanta karakter harus dilingkungi
oleh tanda kutip seperti ‘a’.
17
1.3.4. TIPE DATA
Untuk tipe tipe data yang dimiliki oleh pemrograman bahasa C
ditunjukkan dalam Tabel 1.4 berikut ini.
1.3.5. OPERATOR
Dalam pemrograman operator merupakan intruksi khusus yang digunakan
untuk variable. Adab beberapa yang sering digunakan yaitu operator kondisi atau
pembanding seperti yang ditunjukan dalam Tabel 1.5, operator atirmatika
ditunjukkan dalam Tabel 1.6, operator logika ditunjukkan dalam Tabel 1.7,
operator bitwise ditunjukkan dalam Tabel 1.8, operator Assignment ditunjukkan
dalam Tabel 1.9.
18
Tabel 1.5. Daftar Operator Kondisi (Andrianto,2008;22)
Operator Kondisi Keterangan
< Lebih kecil
<= Lebih kecil atau sama dengan
> Lebih besar
>= Lebih besar atau sama dengan
== Sama dengan
!= Tidak sama dengan
19
Tabel 1.9. Daftar Operator Assignment(Andrianto,2008;23)
Opereator Assignment Keterangan
= Untuk memasukkan nilai
+= Untuk menambah nilai dari keadaan semula
-= Untuk mengurangi nilai dari keadaan semula
*= Untuk mengalikan nilai dari keadaan semula
/= Untuk melakukan pembagian terhadap bilangan
semula
%= Untuk memasukkan nilai sisa bagi dari pembagian
bilangan semula
<< = Untuk memasukkan shift left
>> = Untuk memasukkan shift right
&= Untuk memasukkan bitwise AND
^= Untuk memasukkan bitwise XOR
\= Untuk memasukkan bitwise OR
Y
A >30
P B =0xF F
T
20
Dan dengan cara penulisannya sebagai berikut:
if(_uji_benar_atau_salah_)
{_eksekusi_blok_ini_jika_benar_; } ;
seperti contoh:
if (A>30) // jika A lebih besar 30 maka PB = 0xff;
{ PORTB = 0xff;}
Y
A>30
T
P B = 0 x0 0 P B = 0 xF F
21
Y
P B =0xFF
A >30 A =P A
P B = 0 x ff
A = P A
Y
A > 3 0
22
Dan cara penulisannya sebagai berikut:
do
{_selama_benar_blok_ini_akan_selalu_dieksekusi_;}
while (_uji_benar_atau_salah_);
Seperti contoh:
do
{ PORTB = 0xff; // PB = 0xff
A = PINA;} // A= PORTA
while (A > 30); // selama A > 30 kerjakan blok diatasnya
f. Perintah for (…. ; …. ; ….) {…} digunakan untuk perulangan dengan kondisi
dan syarat yang telah ditentukan. Biasanya digunakan perulangan dengan
jumlah tertentu dengan flowcart ditunjukkan dalam Gambar 1.9.
I= 1
Y
P B = d a ta o u t
I< 1 0 D a ta o u t+ +
i+ +
Contoh Soal:
23
1. Ada berapa jenis memori yang dimiliki ATMega16? Sebutkan.
Jawab:
Ada 3 yaitu: RAM, EEPROM dan Flash Memori Program
2. Ada berapa port yang dimiliki oleh ATMega16?
Jawab:
Ada 4 port yaitu Port A, Port B, Port C dan Port D
Latihan:
1. Buat flowcart dan program untuk menghitung 1 sampai 10 dengan
menggunakan instruksi :
a. while
b. for
24