20 mhz calisan 16f877 aadc hizi?

Başlatan erkan614, 21 Temmuz 2008, 19:03:56

erkan614

iyi calismalar
xt osc ile calisan f877 icin adc peryodu ne yazilmali?
ayrica pause 500 yazdigimizda 500 ms beklemedigi kkesin peki bu bekleme nekadar oluyor?

mucitotomasyon

20 mhzlık bir pic in adc bölme oranını datashett den bakarak ögrenebilirsin

erkan614

ben onu sormadım
pbp hs_osc seçiminde zamanları karıştırıyor. pause 15000 normalde 15 saniye beklemesi gerekirken 3-5 saniye arası bekliyor.
ayrıca pbp de
define adc_bits 10
define adc_clock 3
define adc_seampleus 100

yapınca 20 mhz de problem çıkartmasın ilerde

ayrıca 220 v kontaktor bobini ile adc nin pot kablosunu yanyana getirdiğimde pic parazit kapıp kendi kendine çıkışlarını aktif yapıyor.

pot kablosu ile adc kablosunu ayırdım ayrıca 220 v bobinli kontaktoru 24v dc ye çevirdim şuan bi sorun yok.

anlamadığım nokta pcb nin hemen altında inverter ustunde smps çalışıyor onlardan parazit almadı ama kontaktor bobininin kablosundan parazit aldı dogrusu kafam karıştı biraz

einstain90

define adc_bits 10
define adc_clock 2
define adc_seampleus 100
Her işte her zaman bir aksilik çıkar.Siz yeterki pes etmeyin...

tyildizak

Alıntı yapılan: "erkan614"
pbp hs_osc seçiminde zamanları karıştırıyor. pause 15000 normalde 15 saniye beklemesi gerekirken 3-5 saniye arası bekliyor.
Alt alta 3 tane "pause 5000" hatta 15 x "pause 1000" denediniz mi acaba? Sonuç aynı mı olur?

erkan614

Alıntı yapılan: "tyildizak"
Alıntı yapılan: "erkan614"
pbp hs_osc seçiminde zamanları karıştırıyor. pause 15000 normalde 15 saniye beklemesi gerekirken 3-5 saniye arası bekliyor.
Alt alta 3 tane "pause 5000" hatta 15 x "pause 1000" denediniz mi acaba? Sonuç aynı mı olur?
sonuç ayni daha önceden denemiştim hs osc yapınca zamanlar karışıyor

files

sigortayı HS yaptınız,
peki kristalin 20 Mhz olduğunu bildiren her hangi birşey yazdınız mı? Yada kaç Mhz kristal ise onu

erkan614

'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [Erkan Bodur]                                     *
'*  Notice  : Copyright (c) 2008 [BODUR]                        *
'*          : All Rights Reserved                               *
'*  Date    : 17.03.2008                                        *
'*  Version : 1.1                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
@ DEVICE pic16F877
@ DEVICE pic16F877, WDT_ON
@ DEVICE pic16F877, PWRT_ON
@ DEVICE pic16F877, PROTECT_ON
@ DEVICE pic16F877, hs_OSC           
'****************************************************************
TrisA=%11111111
Trisb=%00001111
TRISC=%00000000
TRISD=%00000000
TRISE=%00000111            'inculuded psp control bits
'******************************************************************* 
on interrupt goto KESME
OPTION_REG=%00000001       'pull up aktif ps tmr0 için 1/4
INTCON=%10100000           'interrupt aktif tmr0 kesmesi aktif
TMR0=0
'ADCON0=%10000001
ADCON1=%10001110           'portA I/O ra0=an0 10 bit
DEFINE	ADC_BITS	10	    'A/D çevirim sonucu kaç bit olacak
DEFINE	ADC_CLOCK	2	    'Clock kaynağı (3=rc)
DEFINE	ADC_SAMPLEUS	100	'Örnekleme zamanı mikro saniye cinsinden.


programın şuanki configurasyon kısmı burası xtal'in 20 mhz olduğunu nerden belirtiyoruz

files

evet yazılmamış. bu durumda kodlar 4 Mhz olarak çalışmaya çalışacaktır. program kaç Mhz kristal taktığını nereden anlasın? şimdi 8Mhz kristal de takabilirsin. picin bunu anlaması mümkün değildir. o yüzen kodun içine kristali bildiren kısım eklenmelidir. aksi halde varsayılan kristal değeri dikkate alınır o da 4 Mhz.

Fakat tam olarak 20 Mhz ile mi deneme  yapıyorsunuz onu da yukarıdaki mesajlarınızdan anlayamıyoruz. HSyi kullanmak istediğinize göre tahminen böyledir .

tyildizak

Alıntı yapılan: "erkan614"
    Define OSC	20

@ DEVICE pic16F877