ezmoce
Üye
- Katılım
- 31 Mar 2008
- Mesajlar
- 22
- Puanları
- 1
- Yaş
- 39
arkadaşlar ben sinüz ten ornek alıp sinus tepe değerine ulaştiğinda pic in çikişini 1 yapan program yazacam (pek pic bilgim yok) ben sinusun tepe değerini 5 v kabul edip şoyle bi program yazdım
DEFINE ADC_BITS 8 'A/D çevirim sonucu kaç bit olacak
DEFINE ADC_CLOCK 3 'Clock kaynağı (3=rc)
DEFINE ADC_SAMPLEUS 50 'Örnekleme zamanı mikro saniye cinsinden.
TRISB=0
PORTB=0
VERI var byte 'ADC den okunan digital değer.
sayi var byte
ADCON1=%00000010
'8 bit değişken tipi seçtik kullanacağımız değer 8 bit olacak.
BASLA:
ADCIN 0,VERI '0 nolu kanaldan Analog değeri oku ve VERI değişkenine aktar.
BAK:
IF ADCON0.2=1 THEN BAK
if VERI=50 and sayi=0 then
sayi=sayi+1
portb=00000111
endif
if sayi>=1 then
portb=00000111
endif
GOTO BASLA
yalnız program işimi gormedi aceba programda yanlişin nerde olduğunu soyleyebilece veya yeni bir oneri sunabilecek varsa şimdiden teşekkurler
DEFINE ADC_BITS 8 'A/D çevirim sonucu kaç bit olacak
DEFINE ADC_CLOCK 3 'Clock kaynağı (3=rc)
DEFINE ADC_SAMPLEUS 50 'Örnekleme zamanı mikro saniye cinsinden.
TRISB=0
PORTB=0
VERI var byte 'ADC den okunan digital değer.
sayi var byte
ADCON1=%00000010
'8 bit değişken tipi seçtik kullanacağımız değer 8 bit olacak.
BASLA:
ADCIN 0,VERI '0 nolu kanaldan Analog değeri oku ve VERI değişkenine aktar.
BAK:
IF ADCON0.2=1 THEN BAK
if VERI=50 and sayi=0 then
sayi=sayi+1
portb=00000111
endif
if sayi>=1 then
portb=00000111
endif
GOTO BASLA
yalnız program işimi gormedi aceba programda yanlişin nerde olduğunu soyleyebilece veya yeni bir oneri sunabilecek varsa şimdiden teşekkurler