No oscillator calibration value found

Başlatan toma, 01 Ocak 2006, 16:09:39

toma

Herkese iyi Günler,

Öncelikle Bu başlığı yanlış yere actıysam Adminlerde özür diliyorum. Ben bu linkteki projeyi gerceklestirmeye calısıyorum.

PROJE

Yalnız projenin icindeki hex dosyasını IC-prog ile pic12f675'e atmaya calısırken "No oscillator calibration value found" diye bir hata veriyor. Bu konuda bana yardımcı olabilir misiniz?

Yardım eden arkadaslara simdiden cok tesekkür ediyorum..

mmengi

12F675 i ic-prog ile içini okuduğunda 03FF adresinde(en son byte) 34xx bi değer görebiliyormusun. Eğer göremiyorsan pic in osilatör kalibrasyon değerini silmişsin demektir.

Eğer dediğim adreste 3FFF(yani silinmişse) okuyorsan ilk önce file open ile yüklemek istediğin hex i aç ve 03FF adresine 34C8 değerini edit ile gir ve programlama yapmak istediğinde sana dosyada 34C8 değeri var kullanmak istiyormusun dediğinde evet de ve programla bu değer ortalama bi değer dir en azından test için işini görür.

Yok eğer 03FF de 34xx bi değer okuyorsan zaten hex i programlamak istediğinde dosyada 3FFF değeri var pic te ise 34xx değeri var onun yerine kullanmak istiyormusun diyecek o zaman hayır diyeceksin.

bu pic ler fabrikasyon olarak osilatör kalibrasyonu ölçülür ve pic flash hafızasının son byte ına yazılır bunu iyi saklamak lazım eğer silinmişse pic in osilatörünü internal rc clockout a ayarlayıp osc2 ucundan bir osilaskop yardımıyla 1mhz. yakalayacak şekilde 34xx değerler girerek 1mhz i deneye deneye yakalamak lazım.

Erol YILMAZ

Alıntı yapılan: "toma"Herkese iyi Günler,

Öncelikle Bu başlığı yanlış yere actıysam Adminlerde özür diliyorum. Ben bu linkteki projeyi gerceklestirmeye calısıyorum.

@toma,
Mesajin yeri yanlis değil ama basligin icerik hakkinda hicbir bilgi vermiyor.
3 ay sonra 1000 mesaj arasindan kendi mesajini bulup cevabi tekrar okumak istesen buyuk ihtimalle bulamayacaksin. Mesaj basliklarini daha ozel bilgi verecek sekilde ayarlarsan, Picproje olarak daha sistematik bir yapida ilerleyebiliriz.  

Calismalarinda basarilar...

Petek

Alıntı yapılan: "mmengi"12F675 i ic-prog ile içini okuduğunda 03FF adresinde(en son byte) 34xx bi değer görebiliyormusun. Eğer göremiyorsan pic in osilatör kalibrasyon değerini silmişsin demektir.
Şu işi ic-prog içerisine gömseler ne güzel olurdu. Silmeden önce 0x03ff adresini okuyup, sildikten sonra tekrar yazsa...

0x34XX  =  retlw XX

CCS gibi derleyicilerde senin düşünmene gerek yok ama assembler ile uğraşıyorsan 0x03ff adresini call yapacaksın, dönüşte w registerindeki XX değerini oscal registerine atacaksın. Bundan sonra calibre edilmiş osilatör ile çalışmaya başlarsın. Ben de ilk denememde bunları bilmeden silmişim. Sonradan 34a8 gibi bir rakam koydum. Zamanla kritik bir iş yapmıyor isen çok önemli değil ama uart haberleşme (emulasyonla) gibi zamanla kritik iş yapıyorsan frekansı kalibre at. Edemiyorsan mevcut girdiğin rakamın yapmak istediğine engel olup olmadığına bak.

Kalibre etme işini mmengi hocamın dediği gibi yap. İstersen pinlere buton bağla, butona basarak oscal içeriğini birer birer arttırarak değiştir. Osiloskoptan istediğin değeri alınca oscal içeriğini seri port ile bilgisayara gönder. Osiloskopun yoksa 0 dan başlayarak 255'e kadar sayıyı arttır, her degfasında seri olarak değeri PC ye de gönder. Hangi değerden başlayıp, hangi değere kadar PC ye düzgün rakam göndermiş isen bu ikisinin ortalaması senin aradığın rakam, yani 0x03ff e yerleştireceğin 0x34XX teki XX olacak  ;)

Kolay gelsin.
“Önyargıları yıkmak atomu parçalamaktan zordur” A.Einstein

Petek

Alıntı yapılan: "Erol"
@toma,
Mesajin yeri yanlis değil ama basligin icerik hakkinda hicbir bilgi vermiyor.
3 ay sonra 1000 mesaj arasindan kendi mesajini bulup cevabi tekrar okumak istesen buyuk ihtimalle bulamayacaksin. Mesaj basliklarini daha ozel bilgi verecek sekilde ayarlarsan, Picproje olarak daha sistematik bir yapida ilerleyebiliriz.  

Calismalarinda basarilar...
Belki de bu yüzden bir kaç adet soruyu sorulduktan bir yada iki gün sonra başka bir yerde tekrar sorulduğunu gördüğümü hatırlıyorum  8)  Bazıları da aynı gün birkaç grup başlığı altında soruyor 8) hani bunuı yapanda balık hafızası var diyemeyeceğim ama onlar bize kör muamelesi yapıyor gibi  8)
“Önyargıları yıkmak atomu parçalamaktan zordur” A.Einstein

toma

Başlığı hemen degistirdim. Uyarın icin sağol.. Haklısın.. ;)

Dediginiz byte'ı verdiginiz rakamla editledim. Ama programlamanın sonunda kontrol ederken Verified failde address 0000h hatası alıyorum. Bunu sormadan önce forumda arama yaptım ama tam bi sonuc alamadım. Cahilligimi mazur görün..

Yardımcı olabilir misiniz?

Petek

programlayıcı olarak hangisini kullanıyorsun? ic-prog ta programlayıcının doğru seçtin mi? Seçtiysen orada bir delay ayarı var 10 ms. gibi bir değerde duruyor. Onu 14 lere getir. Ama öncelikle programlayıcını düzgün olarak ic-prog a tanıt. Hangi çıkışların tersleneceğini ic-prog web sayfasından öğren. Tekrar dene.
“Önyargıları yıkmak atomu parçalamaktan zordur” A.Einstein

toma

programlayıcı olarak JDM kullanıyorum. Ayarlar zaten sitesinde gösterdigi gibi duruyor. Ama hala verify kısmında 0000h adresinde sorun veriyor.

Erol YILMAZ

@toma;

Programlayicin 16F84A  yi veya baska bir entegreyi programlayabiliyor mu? Yani ilk once onun dogrulugundan emin olmalisin...

Petek

Alıntı yapılan: "toma"programlayıcı olarak JDM kullanıyorum. Ayarlar zaten sitesinde gösterdigi gibi duruyor. Ama hala verify kısmında 0000h adresinde sorun veriyor.
COM1 yada COM2 yi doğru seçtin mi?

Proramlayıcının Vcc, Vpp, b6, b7 voltaj seviyelerini ölçtün mü? (USB-RS232 dönüştürücü kullanıyormusun?)

bahsettiğim delay ayarını 14-15 ms. lere getirdin mi?

Başka bir mikrokontrolörle de aynı sorunu yaşadın mı.

24c32 gibi bir seri eeprom okuyup yazabiliyormusun? (bunda hiç sorun olmaması gerek, zira sadece Vcc yetiyor)
“Önyargıları yıkmak atomu parçalamaktan zordur” A.Einstein

toma

usb-rs232 kullanmıyorum. Daha once aynı kart ile 16f84 programladım. Com portu olarak zaten tek alternatifim var.. Karttaki gerilim seviyelerini yarın okulda ölcecegim. Delay ayarını 14 e getirdim bir degisiklik olmadı..

(Yardımcı olmaya calıştıgınız icin çok tesekkür ederim..)

mod notu: Teşekkür yerine, sorununu, neyi nasıl hallettiğini, nasıl başardığını, öğrendiğini izah etmen/anlatman yetecektir

toma

Sorunum daha hallolmadı.. Halen aynı sorun devam ediyor. Gelen önerilere açığım.

Ben sadece arkadasların yardımcı olma cabalarına tesekkür etmistim. ;)

Petek

Alıntı yapılan: "toma"...Daha once aynı kart ile 16f84 programladım.
Peki programlayıcı aynı bilgisayara mı bağlıydı?
Alıntı Yap... Karttaki gerilim seviyelerini yarın okulda ölcecegim...
Şu anda kullandığın bilgisayara bağlı iken ölç. Basit bir avometre ile ölçebilirsin (Settings->Hardware_check).
“Önyargıları yıkmak atomu parçalamaktan zordur” A.Einstein

OG

Arkadaşın sorusuna engel olmadan araya bir soru gireyim.
Alıntı yapılan: "Petek"0x34XX  =  retlw XX
CCS gibi derleyicilerde senin düşünmene gerek yok ama assembler ile uğraşıyorsan 0x03ff adresini call yapacaksın, dönüşte w registerindeki XX değerini oscal registerine atacaksın.
PBP da bunu nasıl yapabiliriz.

Daha dün 100 adet 12F675 yazdım, düşünün her seferinde pic oku, hexi yükle, 3FFF'e tekrar yaz ve kayda başla. 100 adet arkadaşlar, zaman kaybını düşünün. Varmı çaresi?
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Petek

Alıntı yapılan: "OG"Arkadaşın sorusuna engel olmadan araya bir soru gireyim.
Alıntı yapılan: "Petek"0x34XX  =  retlw XX
CCS gibi derleyicilerde senin düşünmene gerek yok ama assembler ile uğraşıyorsan 0x03ff adresini call yapacaksın, dönüşte w registerindeki XX değerini oscal registerine atacaksın.
PBP da bunu nasıl yapabiliriz.

Daha dün 100 adet 12F675 yazdım, düşünün her seferinde pic oku, hexi yükle, 3FFF'e tekrar yaz ve kayda başla. 100 adet arkadaşlar, zaman kaybını düşünün. Varmı çaresi?
PBP da nasıl yapılır bilmiyorum ama bu bahsettiğim sizi 100 adet pic12f675 i yazarken çektiğiniz zahmetten kurtarmaz. Onun için ya kendi programlayıcınızı kendiniz yapacak ve işlemcileri silerken osilatör kalibrasyon değerini saklayacaksınız ya da bunu destekleyen yazılımları bekleyeceksiniz.
“Önyargıları yıkmak atomu parçalamaktan zordur” A.Einstein