PIC 16F877 HAFIZA SORUNU

Katılım
14 Tem 2012
Mesajlar
28
Puanları
1
Yaş
33
Merhaba arkadaşlar ben bi konuda PIC C ile bi program hazırlamak istiyorum, fakat yazdığım program biraz uzun olduğu için programı derlemek istediğimde hata sorunu değil de derleme sorunu veriyor. Sanırım fazla hafıza kapsadığı için öyle oluyor. bu sorunu halletmek için ne yapmalıyım, 16 serisinde 877 nin hafızasının en fazla olduğunu düşünüyorum. Yardımcı olursanız sevinirim...
 
S.A.
arkadaşın dediği gibi 18f452, 18f4520 gibi ürünlere geçin ilk başlarda insanı ürpertir ama bence gecikmeyin.
 
Hitech C kullan , olmadı Hitech C pro kullan derim. Ayrıca kodunu nasıl yazdıgında önemli , fonksiyonel yazma yöntemiyle kodunu %20%50 azaltabilirsin. Bu ne demek , bu şu demek ;

Bir tusa 10 ms falan basılmış mı diye bakmak gerekir gürültüden korunmak için. Bunun için bir kod yazarsın , her satıra bu kodu yazmak yerine bunu bir fonksiyon yaparız.

Misal ; a=tusabasma( tus, zaman ) şeklinde cagırırız. Bu yerden çok kazandırır. Misal belkide bunu 20 yerde kullanırdın kodunda.

Seviyeni bilmeiyorum , ama tavsiyem bu. Belkide çok üst level birine saçma birşey önerdim.

2. Yöntem.
Hi tech c cok daha az yer kaplar derim. Saygılarımla...
 
Sorun mesajı tam olarak nedir? memory user gauge ne gösteriyor?
 
out of rom a segment or the program is too large MAIN, diye hata bi derleme hatası veriyor. 18F hiç kullanmadım daha önceki uygulamalarda 16F serisi kullandığım için yabancı geliyor bana !
 
S.A.
18f452 877 ile aynı sayılır kormayın suya girmeyince yüzme öğrenilmiyor.
 
Aynen ayrıca hitech-c için de microchip desteğini çekti artık,buda demek oluyorki artık bu compiler güncellenmeyecek.Kod optimizasyonu için register düzeyinde kod yazmak faydalı olacaktır,bunuda ise ister ccs c de,ister basic te istediğiniz gibi yazabilirsiniz.

Ve lütfen artık şu hantal-yavaş-düşük hafızalı 16f serileri yerine yüksek performanslı ve fiyat olarakta 16f serisinden daha ucuz 18f serisi veya muadili işlemcileri kullanın,yazık bu zamana ve paraya.
 


"register düzeyinde kod yazmak faydalı olacaktır" derken sayın kumanda-cı ?

Bir de pic16F XLP serileri bayagı ucuz , içlerinde 16 MHZ osilotorde geliyor. Zaten bu işler için 4 MHZ bile yetiyorda o da ayrı mesele.

Ama altını çizerek bir daha tekrarlamak istiyorum CCS C kodları kesinlikle çok yer kaplıyor ! Önümde 2-3 proje yaşadım , 18F4620 nin içine sığamadım ROM olarak. Tavsiyem Hitech C den destek kalkmışsa C18 falan vardı veya C++ serileri var yeni onlara geçin derim. Nacizane...

16F serisinden içinde epromum olmayan 1,3 dolarlık mı ne 25 bacaklı bir entegre datasheeti , bu çok iş görür, bu arkadaş için değil tabi ki ama ilgilenler olursa bir eklemek istedim.
üstelik XLP teknolojisi batarya uygulamaları için kaçınılmaz gibi.

http://ww1.microchip.com/downloads/en/DeviceDoc/41417B.pdf
 
Son düzenleme:
18F452 serisinde derlemede sorun olmadı fakat Lcd pinlerini 877 için mesela RB7 ye bağlı olanı aynen 452de aynı pine bağlayıp diğer pinleri de aynı şekilde olacak şekilde fakat lcd ye veri gelmiyor. bağlantı şeması mı değişik acaba yoksa lcd kütüphanesinden lcd.c dosyasında herhangi bi değişiklik yapmam gerekiyor mu ?
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…