Home > Elektronika, Pemprograman, Robotik & Mikrokontroler > Aplikasi Bahasa C Pada Mikrokontroler dan Robotika (Part 1)

Aplikasi Bahasa C Pada Mikrokontroler dan Robotika (Part 1)

1.Pendahuluan

Bahasa C++ dapat kita terapkan pada berbagai alat elektronika, contohnya dapat kita terapkan di robotik dan mikrokontroler. saya tidak akan membahas lebih detail tentang skematik mikrokontroler(karena yang membuat nya bukan saya, mikrokontroler yang digunakan buatan kakak kelas saya, kang manda), namun garis besar nya adalah :

Mikrokontroler merupakan sebuah chip yang telah terintegrasi yang didalamnya terdapat sistem input/output(I/O) dan Memori dengan kapasitas kecil yang dapat digunakan untuk mengendalikan alat lainya. misalnya pada percobaan kali ini kita mengendalikan nyala atau matinya beberapa buah LED dengan menggunakan switch.gambar di atas merupakan mikrokontroler yang saya gunakan dalam percobaan ini yaitu mikrokontroler 8535. Untuk memprogram Micro, maka digunakan software khusus dengan dasar bahasa C, yaitu Code Vision AVR yang dapat di unduh disini

Berikut konfigurasi Port nya :

PORT A = Tidak Digunakan

PORT B = Tidak Digunakan

PORT C = LED

PORT D = Switch

Berikut program untuk menyalakan LED (kedap-kedip) :

#include <mega8535.h>

#include <delay.h>

void main(void){

DDRC=0xFF;   //Port C di set sebagai output

PORTC=0xFF;  // karena agar led menyala harus diberi logika 1(5Volt) sesuai dengan rangkaian

while(1)

{

PORTC=0b00000000;   // Port C diberi logika 0= nyala

delay_ms(500);   // Tunda selama 0,5 Detik

PORTC=0b11111111;   //port C diberi logika 1 = Mati

delay_ms(500);  // Tunda Selama 0,5 Detik

}

}

Berikut program untuk menyalakan LED  dengan Switch :

#include <mega8535.h>

#include <delay.h>

void main(void){

DDRC=0xFF;   //Port C di set sebagai output

PORTC=0xFF;  // karena agar led menyala harus diberi logika 1(5Volt) sesuai dengan rangkaian

DDRD=0x00;

PORTD=0xFF;

while(1)

{

if(PIND.0==0){

PORTC=0b00000000;   // Port C diberi logika 0= nyala

delay_ms(500);   // Tunda selama 0,5 Detik

PORTC=0b11111111;   //port C diberi logika 1 = Mati

delay_ms(500);  // Tunda Selama 0,5 Detik

}

if(PIND.1==0){

PORTC=0b10101010;   // Port C diberi logika 0= nyala

delay_ms(500);   // Tunda selama 0,5 Detik

PORTC=0b01010101;   //port C diberi logika 1 = Mati

delay_ms(500);  // Tunda Selama 0,5 Detik

}

}

}

 

PROGRAM LANJUTAN

#include <mega8535.h>
#include <delay.h>
#define sw1 PIND.0
#define sw2 PIND.1
#define sw3 PIND.2
#define sw4 PIND.3
#define led PORTC

void main(void){
int i;
DDRC=0xFF;
PORTC=0xFF;

DDRD=0x00;
PORTD=0xFF;

while(1){
if(sw1==0){
for(i=0;i<5;i++){
led=0x00;
delay_ms(1000);

led=0xff;
delay_ms(1000);
}
}

if(sw2==0){
led=0b00000000;
delay_ms(1000);

led=0b00011000;
delay_ms(1000);

led=0b00111100;
delay_ms(1000);

led=0b01111110;
delay_ms(1000);

led=0b11111111;
delay_ms(1000);
}

if(sw3==0){
for(i=0;i<5;i++){
led=0b01010101;
delay_ms(1000);

led=0b10101010;
delay_ms(1000);
}
led=0b11111111;
delay_ms(1000);
}

if(sw4==0){
for(i=0;i<5;i++){
led=0b11111110;
delay_ms(500);

led=0b11111101;
delay_ms(500);

led=0b11111011;
delay_ms(500);

led=0b11110111;
delay_ms(500);

led=0b11101111;
delay_ms(500);

led=0b11011111;
delay_ms(500);

led=0b10111111;
delay_ms(500);

led=0b01111111;
delay_ms(500);

led=0b01111111;
delay_ms(500);

led=0b10111111;
delay_ms(500);

led=0b11011111;
delay_ms(500);

led=0b11101111;
delay_ms(500);

led=0b11110111;
delay_ms(500);

led=0b11111011;
delay_ms(500);

led=0b11111101;
delay_ms(500);

led=0b11111110;
delay_ms(500);

led=0b11111111;
}
}
};
}

About these ads
  1. irel
    March 9, 2012 at 4:55 pm

    mas octav…mu tanya nich, saya pingen buat simulasi di proteus untuk menghidupkan led berdasarkan sensor yang sudah berbentuk pulsa, yang saya tanyakan bisakah sinyal pulsa dari sensor saya gunakan sebagai input untuk logika 0 (pada saat falling edge)==led nyala !! sedangkan pada saat 1 (rising edge)==led mati, apakah bisa mas octav??? codingnya gimana???

  2. rashif
    September 3, 2012 at 2:01 pm

    mas octav saya baru kls sd dan ada robotika yang saya mau tak tanya in kalo buat roboot kayak diatas bahannya apa aja….?

    • rashif
      September 3, 2012 at 2:02 pm

      kls 5

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s