Anda di halaman 1dari 7

MODUL PRAKTIKUM

PEMOGRAMAN BAHASA C UNTUK


MIKROKONTROLER

Untuk Mata Kuliah Praktikum Digital dan Mikroprosesor

Dosen Pembina
I Made Wirawan

Asisten Praktikum
Sudianto

UNIVERSITAS NEGERI MALANG


FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
S1 PENDIDIKAN TEKNIK INFORMATIKA
2013
PEMOGRAMAN BAHASA C
UNTUK MIKROKONTROLER

TUJUAN
 Mengingat kembali statemen program dalam bahasa C.
 Mengelompokkan program berdasarkan bagian-bagian dalam bahasa C.

BAHASA C

Bahasa C luas digunakan untuk pemrograman berbagai jenis perangkat,


termasuk mikrokontroler. Bahasa ini sudah merupakan high level language,
dimana memudahkan programmer menuangkan algoritmanya. Struktur
penulisan bahasa C secara umum terdiri atas empat blok, yaitu header,
deklarasi konstanta global dan atau variable, fungsi dan atau prosedur (dapat di
bawah program utama), dan program utama.
STRUKTUR PENULISAN CONTOH

/* HEADER untuk memanggil library yang akan


digunakan */
#include < [library1.h] > // Opsional #include <mega8535.h>
#include < [library2.h] > // Opsional #include <stdio.h>

#define [nama1] [nilai] ; // Opsional


#define [nama2] [nilai] ; // Opsional

/* Deklarasi konstanta dan atau variabel global */ unsigned char dt, xx;
[global variables] // Opsional char buf[33];

/* Deklarasi fungsi dan atau prosedur */ unsigned char lampu (unsigned char
[functions] // Opsional bitn)
{
PORTA=bitn & 0x3C;
}
/* Program utama */
void main(void) void main (void);
{ {
/* Deklarasi konstanta dan atau variabel lokal */ char data;
[Isi Program Utama] PORTA=0x00;
} DDRA=0xF0;
While (1)
{

};
}
ALAT DAN BAHAN YANG DIGUNAKAN
 1 set PC/Laptop yang sudah berisi program Code Vision dan Khazama
 1 buah catu daya DC +5V
 1 buah multimeter
 1 buah ISP Downloader AVR
 1 buah sistem minimum AVR
 1 buah I/O
 1 buah kabel printer USB
 1 buah kabel pita hitam

PROSEDUR

1. Perhatikan program berikut. Tunjukkan tempat blok bagian program


tersebut.
Program 1
#include <mega8535.h>
#include <delay.h>
// Declare your global variables here
void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
PORTA=0x00;
DDRA=0xFF;
while (1)
{
// Place your code here
PORTA=0x0f;
delay_ms(10000);
PORTA=0xf0;
delay_ms(10000);
}
}
Program 2
#include <mega8535.h>
// Declare your global variables here
void main(void)
{
// Declare your local variables here
unsigned char datain;
// Input/Output Ports initialization
// Port A initialization
PORTA=0x00;
DDRA=0xFF;
// Port B initialization
PORTB=0xFF;
DDRB=0x00;
while (1)
{
// Place your code here
datain=PINB;
PORTA=datain;
}
}

Program 3
#include <mega8535.h>
#include <delay.h>
// Declare your global variables here
unsigned char bil[10] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d,
0x07, 0x7f, 0x6f};
void main(void)
{
// Declare your local variables here
int kiri, kanan, i;
// Input/Output Ports initialization
// Port A initialization
PORTA=0x00;
DDRA=0xFF;
// Port B initialization
PORTB=0xF0;
DDRB=0xF0;
while (1)
{
// Place your code here
kiri=0;
kanan=0;
for (kiri=0;kiri<10;kiri++)
{
for (kanan=0;kanan<10;kanan++)
{
for(i=0;i<100;i++)
{
PORTB.7=0;
PORTB.6=1;
PORTA=bil[kiri];
delay_ms(5);
PORTB.7=1;
PORTB.6=0;
PORTA=bil[kanan];
delay_ms(5);
}
}
}
}
}

2. Ketiklah program berikut dan betulkan program jika keluar pesan Error.
Tuliskan baris program yang salah dan tuliskan kembali baris program
yang sudah dibetulkan.

Program 4
#include <mega8535.h>
#include <delay.h>
// Declare your global variables here
void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
PORTA=0x00;
DDRA=0xFF;
while (1)
{
// Place your code here
PORTA=ob00001111;
delay_ms(1000);
PORTA=0b1111000o;
delay_ms(1000);
}
}
Program 5
#include <mega8535.h>
// Declare your global variables here
void main(void)
{
// Input/Output Ports initialization
// Port A initialization
PORTA=0x00;
DDRA=0xFF;
// Port B initialization
PORTC=0xFF;
DDRC=0x00;
while (1)
{
// Place your code here
datain=PINC;
PORTA=datain;
}
}

Program 6
#include <mega8535.h>
// Declare your global variables here
unsigned char bil[10] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f,
0x6f};
void main(void)
{
// Declare your local variables here
int kiri, kanan, i;
// Input/Output Ports initialization
// Port A initialization
PORTA=0x00;
DDRA=0xFF;
// Port B initialization
PORTB=0xF0;
DDRB=0xF0;
while (1)
{
// Place your code here
PORTB.7=1;
PORTB.6=0; //AKTIFKAN SEVEN SEGMEN KANAN
PORTA=0x6d; // DATA ANGKA 5
delay_ms(100);
PORTB.7=0; // AKTIFKAN SEVEN SEGMEN KIRI
PORTB.6=1;
PORTA=0x5b // DATA ANGKA 2
delay_ms(100)
}
}
DATA HASIL PERCOBAAN

1. Tampilan output Program 1 sampai 3


2. Tampilan output Program 4 sampai 6

ANALISA DATA

1. Analisa output Program 1 sampai 6


2. Pembenahan Program 4 sampai 6

KESIMPULAN

Anda mungkin juga menyukai