Bacalah

Learning is forever

RSS Feed

Going where this year?

Insert Data Biner dan Menampilkannya di LCD pake CodevisionAVR

4 Comments
Posted by Taufiq on January 7, 2011 at 8:17 am

Karena ATMega32 yang langka dan saya punyanya ATMega16, saya memutuskan untuk mengconvert program line follower saya ke C. Di C, memori programnya lebih sedikit, sekitar 50% dari Bascom. Tapi saya menemukan kesulitan ketika mau masukin data biner sensor ke variabel (misalnya kita namain sensor)

Kalo di Bascom kan perintahnya bisa gini

If Dataadc0 > Vref0 Then
Sensor.0 = 1
End If
If Dataadc0 < Vref0 Then
Sensor.0 = 0
End If
di Codevision gak bisa gitu. Terus kalo mau nampilin data nya di lcd 16×2 tinggal gini

lcd bin(sensor)

Dan ternyata itu fungsi bawaan dari Bascom.

Setelah saya konsultasi sama Mas Eju, Mas Trianto, dan Andra, akhirnya saya dapet pencerahan. Untuk masukin data biner, tu gini kalo di Codevision

for(i=0;i<8;i++)
{
if (dataadc[i] > vref[i])
{
sensor|=1<<i;
}

if (dataadc[i] < vref[i])
{
sensor&=~(1<<i);
}
}

Dan untuk menampilkannya di lcd, kita bikin fungsi sendiri

void lcd_bin(unsigned char databyte)
{
register unsigned char i;
unsigned char buff[8];

for (i=0;i<8;i++)
{
if ((databyte &(1<<i))==0)
{
buff[i]=48;
}
else
{
buff[i]=49;
}
}

for (i=8;i>0;i–)
{
lcd_putchar(buff[i-1]);
}
}

dan cara pakai fungsinya tinggal gini

lcd_bin(sensor);

Hehehe. Makasih banyak buat para master yang sudah ngebantuin saya. Ternyata coding pake C lebih fleksibel dan menyenangkan, karena kita bisa berkereasi bikin fungsi2 sendiri tanpa bergantung banget sama si compiler.

You can leave a comment, or trackback from your own site.

4 Comments

  • On January 7, 2011 at 9:38 am LinX said

    itulah asiknya C..bisa melakukan suatu hal yang berhubungan sama biner, and,or,not, geser kiri,geser kanan,dll 😀

    Reply

  • On January 7, 2011 at 10:14 am fajr said

    mangstab bro!!!
    coding di hardware juga asik kok..hehe

    Reply

  • On January 7, 2011 at 6:27 pm Prima said

    wow,perintah biner jadi lebih panjang ya ternyata di C

    oh iya pik, nggo aku memenuhi ATMEGA16 aja syusyah

    Reply

  • On January 8, 2011 at 2:30 pm topx666 said

    @linx : iyo mas suhu,tapi kadang njlimet jg je. harus banyak berguru dengan para master seperti anda ni.

    @chip : pengalaman PKM ya mas suhu? hehe

    @prima : iyo prim, tapi tu fungsi hasil kreasi sendiri. mungkin anda bisa menciptakan algoritma fungsi yg lebih pendek prim. hehe

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *