Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

osccal registeri

Başlatan bircan, 02 Mayıs 2011, 10:30:37

bircan

mrb 12f675 ile seri bilgi gondermek istiyorum. denemelerde bazi sonuclar almaya basladim fakat istikrar goremedim. programi inceledigimde bir sorunla karsilasmadim fakat forum da buna benzer konularla ugrasan arkadaslar programin dahili osilator taniminin yaninda osccal_1k 1 kullanmanin gerekli oldugunu soyluyorlar. osccal registerinin kullanmamanin nedeni ve bu register hakkinda bilgisi olan var mi?
GEREK YOK HER SOZU LAF ILE BEYANA , BIN SOZ EDER BIR BAKIS BAKISTAN ANLAYANA... MEVLANA

Tagli

O register dahili osilatörün hız kalibrasyon ayarı. Bu veri fabrika çıkışında belirleniyor ve bir RETLW komutu olarak program hafızasının son alanında saklanıyor. Programın başında, bu verinin program hafızasından okunarak OSCCAL register'ına yazılması gerekiyor. Bahsettiğin komutun yaptığı iş de bu.

Bazen programlama sırasında, hafızanın sonundaki kalibrasyon değeri silinebiliyor. Bu durumda sorunlarla karşılaşabilirsin. İçi boş bir alana yapılacak CALL komutu çok acayip şeylere sebep olabilir :)

Sorunun hızdan veya kalibrasyondan kaynaklandığını düşünüyorsan, PIC'i dışarıdan kristal bağlayarak çalıştır. Bu şekilde sonuca ulaştıktan sonra dahili osilatör kullanmayı deneyebilirsin.
Gökçe Tağlıoğlu

Maxim

ayrıca osccal değeri hız ile ilgili konularda direk olarak ilgilidir,
seri iletişim bunlardan biri
eğer kalibrasyon değeri yanlış ise seri iletişimde aksamalar başlayacaktır

Tagli

Hocam bu OSCCAL'daki değer, hızda ne kadar oynamaya sebep oluyor? Yani yüzde kaç etkisi var? Az önce merak edip datasheet'e baktım ama göremedim.
Gökçe Tağlıoğlu

ete

12F675 işlemcide yanlışlıkla sildiğim kalibrasyon değerini yeniden bulmak amacı ile basit bir program yazıp denemeler yapmıştım.
Bu denemelerde yaptığım iş OSC pinlerinden çıkış vereni aktif edip oscal değerine bağlı olarak çıkan frekansı ölçmek ve ona görede iki buton ile oscal değerini artırıp azaltmak şeklinde bir çalışma idi. Bu çalışmada gördümki, oscal değerini azaltarak frekansı (olması gereken 4Mhz ama pic OSC/4 ile çıkışa 1Mhz vermektedir) 800Khz seviyelerine kadar düşürmüştüm. Amacım doğru frekansı yakalamak olduğundan fazla indirmedim . Üst seviye olarakda 1,2MHz hatta 1,3Mhz seviyelerine kadar çıkılabiliyor. Buda gösteriyorki kalibrasyon değerinin silinmiş olması ile picin dahili OSC ile doğru frekans üretmesi kesinlikle mümkün değil. Büyük sapmalar söz konusu olabilir buda direk olarak seri haberleşmeyi büyük ölçüde etkiler.

Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com