Senin, 21 Juni 2010

Pemrograman Sensor PING >> Pemrograman LCD dengan Bahasa C menggunakan CodeVisionAVR pada Mikrokontroler ATMEGA8535


    Dari hasil file yang telah di generate tersebut kita akan mendapatkan hasil file yang sudah siap digunakan. Untuk LCD, kita hanya perlu menambahkan sedikit skrip. Namun file tersebut masih belum bisa kita mamfaatkan untuk mengoperasikan sensor ping.

   Skrip yang akan kita tambahkan kedalam blog kita kurang lebih seperti ini:

#include
#include
#include


#define ping1 PORTA.0
#define in_ping1 PINA.0
#define kecepatan 34.4F

float jarak;
unsigned char* str[21];
unsigned int counter;


// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Place your code here
  counter++;
}

Dan Program Utamanya seperti berikut:

while (1)
      {
      // Place your code here
      TCNT0 = 0;
      counter = 0;
      DDRA = 0xFF ;   
      ping1=1; 
      delay_us(5);
      ping1 = 0;
      DDRA = 0x00;
      while(in_ping1 == 0);
      TCCR0 = 0x01; 
      while(in_ping1== 1);
      TCCR0=0x00;
      jarak = (((((float)counter*256)+TCNT0)/1400)/2)*kecepatan;
      
       lcd_clear();
       lcd_gotoxy(0,0);
       lcd_putsf("jarak1 = ");
       ftoa(jarak,2,str);
       lcd_gotoxy(9,0);
       lcd_puts(str);
      delay_ms(100);

      
      };
}


    Simpan File ini dan kemudian Downloadkan ke Mikrokontroler ATMEGA8535.Kemudian hubungkan Mikrokontroler dengan Sensor PING dan LCD. Sensor PING dihubungkan ke PortA.0 dan LCD di PortC.  Dan operasikan Sistem Mikrokontroler ATMEGA8535 dan Sensor Ping. Jika benar maka LCD akan menampilkan data jarak yang diambilnya. Tingkat akurasi jarak yang diambil dapat dipastikan dengan sebuah penggaris. Jika jarak yang di Ambil kurang presisi maka kita dapat menambahkan nilai Hold Off sebesar 750 us.
    Ingat Jarak minimal sensor PING ini sekityar 3 cm dan maksimal sekitar 3 meter. Jadi kondisikan jarak anda dalam rentang tersebut.


13 komentar:

  1. ikut belajar interface disini .. link 'Mikrokontroler Indonesia' sudah terpasang juga.. cek di sini

    BalasHapus
  2. Salam kenal dari Nindrianto...thanks dah berkunjung dan komen ke blog saya...sukses ya...

    BalasHapus
  3. terima kasih atas support dan dukungan anda terhadap blog ini! terima kasih juga atas bantuannya!

    BalasHapus
  4. mantap...keren blognya mas...banyak tulisannya...salam kenal ya mas...

    BalasHapus
  5. thanks untuk komentarnya mas fahmizaleeits. apa yang ditulis disini tak lebih dari yang saya ketahui saja...mohon dukungannya...




    "lagi males nih buat artikel"

    BalasHapus
  6. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  7. ralat: untuk file header ini
    #include
    #include
    #include

    seharusnya terdpat
    mega8535.h (atau tipe mikro yang digunakan)
    stdio.h (header untuk io)
    delay.h (HEADER UNTUK jeda waktu)

    ketiga file header tersebut terdapat dalamkurung <>

    BalasHapus
  8. kok ada salahnya d bgn whilex???

    BalasHapus
  9. klo ada tulisan place your code artix apa ganz??

    BalasHapus
  10. Lengkapnya Place Your Code Here.

    yang artinya "Tempat anda meletakkan code program anda mas"

    BalasHapus
  11. Sebisa mungkin hindari akun anonim dalam membuat komentar. Terima Kasih

    BalasHapus
  12. dalam #include
    file header atau method yg digunakan klo gk salah ada delay, jenis mikro dan stdlib
    misalnya
    #include"mega8535.h"
    #include "stdlib.h"
    #include "delay.h"

    //stdlib digunakan karena sintax ftoa berada pada method tersebut..

    salam robotika...

    BalasHapus
  13. gan, ad gak ya pemrograman sensor ping->At89s51->output.a buzzer or suara
    mnggunakan bhasa Assembler??/
    mhon bntuan.a gan or ksih info2.a

    BalasHapus

Need Your Comments, Please !!!