PIC16F877 ile araç yol bilgisayarı...

Katılım
10 Şub 2008
Mesajlar
14
Puanları
1
Yaş
40
Merhabalar;
Araç hızını ölçecek programı; timer0 sürekli saysın,içindeki değişkeni her kesmede bir artırsın,
daha sonra tekerdeki mıknatıs sensörün önünden geçince kesme altprograma geçip timer0 daki değişken
değerine gerekli işlemler sonucunda çıkan hız değerini ekrana yazdırsın diye düşündüm. programı CCS C
ile şu şekilde yazdım...


#include <16f877a.h>
#fuses RC,NOWDT,NOPROTECT,NOBROWNOUT,NOPUT
#use delay(clock=4000000)

#include <Lcd.c>

float k=0,k1=0;
int tur_sayisi=0;

// SENSORUN BAGLI OLDUGU KESME (RB0/INT)
#int_ext

void ext_kesmesi()
{
k=135.648/tur_sayisi;
tur_sayisi=0;
printf(lcd_putc,"\fHIZ = %.1f km/h \n",k);
}

// TIMER0 KESMESİ 25ms DE BİR KESME ÜRETİYOR
#int_timer0

void timer0_kesme()
{
set_timer0(159);
tur_sayisi++;
}

void main()
{
set_tris_d(0x00);
lcd_init();

printf(lcd_putc,"\fHIZ = 0.0 km/h \n",);

enable_interrupts(INT_timer0);
enable_interrupts(INT_EXT);
enable_interrupts(GLOBAL);

setup_timer_0(RTCC_INTERNAL|RTCC_DIV_256);
set_timer0(159);
ext_int_edge(L_TO_H);

while(1){}
}

---------------------------------------------------------------------------------
---------------------------------------------------------------------------------

buna alternatif çözüm gerekiyor. acaba hız ölçümü için ne gibi önerileriniz olabilir???






_________________________________________________

[size=10pt]
Arkaya mesaj atmak yasaktır.Lütfen yukarıdan düzenle şseçeneğini kullanınız.
[/size]


Bu mesaj en son " 22 mart 2008 " tarihinde, saat " 13:30 " arası görkem tarafından değiştirilmiştir.
 

Forum istatistikleri

Konular
129,808
Mesajlar
930,303
Kullanıcılar
452,610
Son üye
rockman41

Yeni konular

Geri
Üst