Latest Post :
Loading...
Home » » logika Dasar Pemograman bahasa C mikrokontroller

logika Dasar Pemograman bahasa C mikrokontroller

Sunday, 29 May 2011 | 0 comments

ayoo!! kita belajar pemograman bareng-bareng dari pada bengong ajha dikosan,, dan mengasah ketajaman logika nya.. mungkin ini terasa aneh dan simpel...(tenang ajha ini masih 0,2% dari bahasa pemograman yang asli). dan jika kita bisa menguasai pemograman 25% ajja di bidang mikrokontroller !! wuihhhhh udah hebat banget boy!! ithu udah bisa buat robot kecil-kecilan thu, cemilan tiap arie aja main-main logika dengan simulasi led (lampu).. oke,, aku kasih tahu dikit bocoran kedepan kalo bisa nguasain pemograman di level 10% (udah bisa nguasain logika dasar "if, elseif, for, else, array, pointer, dll") itu aja uda bisa banget buat robot line follower "robot pengikut baris", rotating led "animasi led yang berputar" robot pengangkat barang berdasarkan warna, kalo animasi led(lampu) apalagi !! itu beberapa nama project yang uda aku buat, mungkin kedepannya akan terposting vidio nya,, maklum lagi sibuk (lagie magang nie soallnya)... jadi sebelum mengenal lebih jauh tentang bahasa c, terlebih dulu kita mengenal struktur/format penulisan program c. sehingga kita mempunyai gambaran/logika tentang bagian-bagian dalam pembuatan program.

  • berikut adalah contoh program, catatan :
    • titik mewakili tulisan program yang sama atau sejenis


ini contoh program nya :


/*
program sederhana untuk memahami penulisan format bahasa c
by creator "FADEL MELBONE" (manzulil fajri)
*/

#include                                        //file include io
#include .....                                                   //prepocesor include
#define on 1                                                   //menggantikan 1 dengan kata on
#define 0ff 0                                                  //prepocesor define
...

unsined char data;                                         //variabel global
...

void inisialisa(void);                                      //prototype fungsi
unsigned int kuadrat (unsigned char);
...

unsigned char x_pangkat_y (char x,char y)   //fungsi
{
    char z;                                                    // variabel lokal
    ...
    ...
}

int main(void)                                           //fungsi utama(wajib)
{
    unsigned int temp;                                //variabel lokal
    ...
    inisialisasi()                                          //memamanggil fungsi inisialisasi
    ...
    temp=kuadrat(15);                             //memanggil fungsi kuadrat
    while(1)
    {
        ...
        ...
    }
return();
}
void inisialisasi (void)                              //fungsi
{
    unsigned int y;
    y=x*x;
    return(y);
}



PENJELASANNYA
_________________
  • A.   Bagian komentar keterangan program

Komentar digunakan untuk member komentar kepada program
Ø   /*……..*/ untuk komentar bentuk paragraph
Ø   // untuk komentar perbaris (sebelum enter)
  • B.       Bagian preprocessor

Preprocessor  ” #include “ biasanya digunakan untuk menyertakan file header “ .h “ atau file library.
Cara penulisan :
#include <…….>  untuk lokasi standar file yang disetting folder direktori compiler
#include “………” untuk lokasi file yang kita tentukan sendiri
#define digunakan untuk mendefinisikan konstanta atau makro
Ø  Cara penulisan : #define identifier konstanta
Ø  Contoh : #define fadel 1
o   Setiap kemunculan fadel maka akan digantikan dengan 1
  • C. Bagian deklarasi variable global

Variable global dideklarasikan diluar semua fungsi termasuk fungsi termasuk fungsi utama dan letaknya harus diatas. Sifat variabel global yaitu dapatta membuat fungsi diakses (dibaca atau ditulis) oleh semua pernyataan (statement) dalam program.

capen : Tipedata namavariabel;

  • D.  Bagian prototype fungsi

Mendeklerasikan fungdi yang ditulis dibawah fungsi main. Dan jika kita membuat fungsi diatas fungsi main maka kita tidak usah mendeklerasikan fungsi tersebut, langsung saja tulis seperti fungsi “x_pangkat_y”
Ø  Capen :
TipeDATA        namaFUNGSI (tipeDATA, …….); atau
Tipe DATA       namaFUNGSI              (TipeDATA       namaPARAMETER, ….);

o   Tipe data didepan nama fungsi adalah tipe data nilai balik (output) fungsi.
o   Tipe data didepan nama parameter adalah tipe data parameter (input fungsi)
  • E.     Bagian fungsi utama/main

Fungsi utama yang dieksekusi dengan urutan mulai dari atas kebawah dan akan loncat-loncat bergantung pada intruksi lompatan goto atau instruksi pemanggilan fungsi atau terjadinya interrupsi jika diaktifkan.
Ø  Capen :
Ø  Untuk fungsi tanpa nilai balek(output) dan tanpa parameter (input)
o   NamaFUNGSI  ( );
Ø  Untuk fungsi dengan nilai balek (output) dan tanpa parameter (input)
o   VariablePENAMPUNG = namaFUNGSI  ( );
Ø  Untuk fungsi dengan nilai balik (output) dan dengan parameter (input)
o   VariablePENAMPUNG = namaFUNGSI (Variabel_atau_konstanta, …..);
  • F.      Bagian subprogram /fungsi

Fungsi yang telah diprototipe kan ditulis dibawah fungsi “main” .  prototype fungsi berguna untuk memudahkan programmer  dalam membuat program yang lumayan besar. Jika kita membuat program dan tanpa kita prototype kan maka harus ditulis diatas fungsi “main”  dan ini menyulitkan untuk dibaca dan diperbaharui sehingga kita butuh prototype fungsi.
Ø  Prototipe terbagi dalam dua kategori yaitu :
  • 1.       Kategori deklarasi (declaration)

Deklarasi adalah membuat dan member tahu kpd compiler tentang sesuatu yang digunakan nanti dalam penulisan program agar diigunakn semestinya dan tidak dianggap error atau asing.
Ø  Contohnya :
o   #include . . . . . . .
o   #define . . . . . . . .
Variabel global

  • 2.       Kategori pernyataan (statement)

Pertyataan adalah membuat instuksi-instruksi program dengan menggunakan keyword seperti operasi aritmatika, logika, operasi bit, atau instuksi percabangan dan looping pembuatan fungsi.


Huft !! capek juga nih, padahal baru dieketik
semoga bermanfaat !!
SALAM LOGGER (logika delger)

MOHON SERTAKAN LINK SUMBER INI, JIKA TEMAN LOGGER INGIN MENG-SHARE NYA KE WEBSITE TEMAN LOGGER !!

THANKS !!

Share this article :

No comments:

 
Support : Creating Website | D'ELGER Template | FadeL
Copyright © 2013. LOGIKA D'ELGER - All Rights Reserved
Template Modify by Creating Website
Proudly powered by Blogger