ccs c rom hatası lütfen yardım edin

Başlatan husam685, 26 Aralık 2011, 23:35:05

husam685

slm arkadaşlar ccs c ile pıc 16f877 a kodlarını derlediğimde Out of ROM, A segment or the program is too large program bu şekilde uyarı alıyorum ne yapmam lazım yardımcı olursanız sevinirim. örnek verirseniz sorunu nasıl çözebileceğim hakkında çok sevinirim. şimdiden tesekkürler

skara1214

yazdığın kod çok uzun demek ya daha büyük roma sahip bir pic kullancaksın(18f452 ,877a nın 2 katı roma sahip) yada Kodun birazını fonksiyon olarak birazını da mainin içine yazarak çözebilirsin ben öyle yapmıştım.
Herkes ölür ama herkes gerçekten yaşamaz

husam685

18f452 piyasada kolay bulunur mu cunku ben hep 16f877a ile çalıştımda o yuzden sordum ayrıca 18f452 yi bi deneyeyim sorunla karsılasırsam buraya yazarım tekrar ilginiz için tesekkür ederim

skara1214

Alıntı yapılan: husam685 - 26 Aralık 2011, 23:45:15
18f452 piyasada kolay bulunur mu cunku ben hep 16f877a ile çalıştımda o yuzden sordum ayrıca 18f452 yi bi deneyeyim sorunla karsılasırsam buraya yazarım tekrar ilginiz için tesekkür ederim
evet piyasada çokça bulunur 18f452 fiyatı biraz daha pahalıdır sadece ama 2 kat fazla rom 2 kat daha hızlı çalışma v.s gibi avantajları var.
Herkes ölür ama herkes gerçekten yaşamaz

RcALTIN

bu mikrodenetleyici piyasasında hakkında kaynağın en çok olduğu, en yaygın kullanılan ürün her zaman en kazık fiyatlı olan oluyor galiba... ne 16f877 ne de 18f452 10-15tl para edecek mcular değiller ama adları yayılmış bir kere. eğer sadece kendinizi geliştirmenin peşinde değilseniz çok daha uygun fiyata çok daha iyi özellikli mcu lar bulabilirsiniz microchip'in sitesinde yapacağınız kısa bir araştırmayla... derleyicimi de değiştirebilirim derseniz nxp'nin armları ve daha nice farklı markanın ürünleri var şaşılacak derecede uygun fiyatlara, tabi yeni sulara yelken açmak gerekiyor...
KİMSEYİ ENGELLEDİĞİM YOK, ÖZEL İLETİ DEVRE DIŞI !

smartcard

Alıntı yapılan: skara1214 - 26 Aralık 2011, 23:42:01
yazdığın kod çok uzun demek ya daha büyük roma sahip bir pic kullancaksın(18f452 ,877a nın 2 katı roma sahip) yada Kodun birazını fonksiyon olarak birazını da mainin içine yazarak çözebilirsin ben öyle yapmıştım.

Evet skara1214 dediği doğrudur.Benim de çok uzun bir fonksiyonum vardı. Kodu main altına taşıyınca derlendi.

omereliusuk

hocam ccs kodları bandlara yerleştirmeye çalışıyor. her band 2kb bu bandı aştığın zaman %40 ta bile olsan farketmiyor out of memory hatası alıyorsun.  en azından bu bende böyle oldu.
kodlar üzerinde oynadığım zaman hatta hiç oynamadan
atıyorum:
x();
y();
z();
derlenmiyor; out of memory ........
ama
z();x();y();
gibi sadece yerlerini değiştirdiğim zaman %50 değerine ulaşıyorum.

tabi yazdığınız kodlar gerçekten de %100 'e ulaşmışsa o daha ayrı bir konu. o zaman ya benim yaptığım gibi bazı özellikleri iptal edeceksiniz. ya da daha fazla Rom bellege sahip mikrodenetleyicilere geçeceksiniz. kolay gelsin.