PIC de dahili kristalden 32MHz

Başlatan Ali_54, 28 Ocak 2014, 16:06:01

Ali_54

http://ww1.microchip.com/downloads/en/DeviceDoc/39761b.pdf

Sayfa 28 figure 2.8 de işlemcinin clock diagramı var. dahili kristal 8MHz. Bu değer Postscalerle bölünüyor. Yani max 8Mhz kullanabiliriz.

Ama ben gidip
#use delay(internal=32000000)
yani 32MHz yazdım. derleyici eyvallah dedi derledi. işlemciye attım hakkatende hızlandı. (pwm in hızlandığını farkettim. PWM formulunde Fosc var)

Skobum yok Gözümle gördüm scopta ta teyit ettim diyemiyorum ama, böyle ise 32MHz nasıl nasıl mümkün olabilir?
1 harf öğretenin 4 gün kölesi olurum.

selimkoc

PIC 18 serisinde PLL diye bir teknik var. Bu teknikle girişe bağladığın 4Mhz ve üzeri frekansları 48 Mhz kadar yükseltebiliyorsun.

Ali_54

1 harf öğretenin 4 gün kölesi olurum.

LukeSkywalker

Alıntı yapılan: Ali_54 - 28 Ocak 2014, 16:11:12
Dahiliden de mümkün mü ki?
Belirttiğiniz blok diyagramda mümkün gözüküyor.

Ali_54

Bu güne kadar max. 8MHz yazıyordum oraya. bir niğmeti daha öğrenmiş oldum. mesela 8 16 32 kabul ediyor. 64 te hata verdi.

PLL in bazı çevre birimlerini etkilemediğini okudum. (bende pwm hızlandı ama) PLL konusunu nerden öğrenebilirim?
1 harf öğretenin 4 gün kölesi olurum.

LukeSkywalker

OSCCON ve OSCTUNE registerlarından gerekli ayarlamaları yaptınız mı PLL için?
Datasheette 25. sayfadan itibaren osilatör kullanımıyla ilgili gerekli bilgiler mevcut.

camby

ana clock değişiyor , ana clock ile çalışan tüm birimler etkilenir.

Dahili yada harici osilatör ile PLL kullanılabilir.

Yanlız dahili olan kristal değil R-C osilatördür. Töleransı kristal kadar iyi değildir.

PLL ile olarak yine datasheet'tekileri incelemeniz yeterli olur.

Erol YILMAZ

Dahiliden ne mümkün ne değil diye datasheete bakman lazım.

CCS yüksek seviyeli kolaylık yapmış.... Senin ne yapmak istediğini tahmin etti ve bir fonksiyon bile yazmadan PLL çalıştı.

yldzelektronik

Alıntı yapılan: Allegro - 28 Ocak 2014, 16:29:12
Dahiliden ne mümkün ne değil diye datasheete bakman lazım.

CCS yüksek seviyeli kolaylık yapmış.... Senin ne yapmak istediğini tahmin etti ve bir fonksiyon bile yazmadan PLL çalıştı.

Katıldığımı ifadeten bir şey daha söyleyeyim.Derleme sonrasında asm çıktısına bakarsanız oscon gibi gerekli registerlere gerekli değer atamalarının yapıldığı kodların üretildiğini görebilirsiniz.Ccs böyle işleri kendi hallediyor.
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

Ali_54

teşekkürler.

peki asm çıktısına ve hangi registere ne yazıldığına nerden bakabilirim? Bu güne kadar hiç işim düşmedi ama bunu öğrenmeliyim.
registerleri görmek için hex dosyasına mı bakacağım?
1 harf öğretenin 4 gün kölesi olurum.

RaMu

Ccsc açıksa;
Compile menüsündeki c/asm list e tıklayarak veya
solda programın dosyalarını gösteren kutudan output kısmındaki projeadıxxxx.lst dosyasını tıklayarak,
ccsc den bakmak istemiyorsan;
programı kaydetmiş olduğun dosyada bulunan projeadıxxx.lst adlı dosyayı herhangibir text editörü ile açarak
asm çıktısını görebilirsin,
asm çıktısının olabilmesi için programın başarılı olarak derlenmesi gerekir.
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

yldzelektronik

@Ramu'nun kilerin yanında proteusu aç,hangi denetleyici için derlediysen onu ekle, gerekli ayarları yap(kristal hızı belirt,cof dosyasını göster) sonra duraklatma tuşuna bas.Mcuya sağ tıkla ve en alta picxx cpu yazar.oraya gel ve açılan menüde source code işaretle.Kaynak kod üzerinde sağ tıklı ve assembyle halini göstermesi için gereken yere tıkla (adını hatırlamıyorum.ctrl+d yazıyordu.). Yine aynı yerden register i aç.Sonra F11 ile adım adım debug yap.Orada her kodun register isimleriyle karşılığını görürsün.
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

Mr.Java

Ben PLL tekniğinin sadece USB Haberleşme'de etkinleştiriyorum.Öyle olması gerekmiyor mu ?

LukeSkywalker

Alıntı yapılan: Fkarizmatik - 28 Ocak 2014, 22:23:35
Ben PLL tekniğinin sadece USB Haberleşme'de etkinleştiriyorum.Öyle olması gerekmiyor mu ?
Hayir. Pll ile üretilen frekansi diger cevre birimlerde de kullanabilirsiniz. Usb icin 48 Mhz şart ama...