mıcro c derleme sorunu

Başlatan acemi, 24 Ekim 2018, 21:16:06

acemi

 merhaba  arkadaşlar  mıcro c derleyicisinde  derleme yaptıgımda  hata alıyorum sorun nedir  Undeclared identifier 'TRISD' in expression
Undeclared identifier 'PORTD' in expression MyProject.c   bunun gibi hatalar .  mıcro c  kütüphane icerisindeki hazır kodlarda böle hata vermiyor. yardımcı olurmusunuz

ete

MikroC den hiç anlamam ama soruna mantık kullanarak cevap verebilirim.
Kullanacağın Pic ile derlemede seçtiğin pic aynımı kontrol et ve o pic de PORTD varmı onuda kontrol et.
Ete

acemi

hocam port olarak sadece  A  kullansamda  degişen bir şey yok uyarı aynı, şöyle birşey oluyor nedense bu hataları sadece 12f675 de alıyorum  16 f serisi yada 18f serisinde bu hatalar yok , TRISA=0;   12 f seirsinde  direk böyle alti çizgili cıkıyor ve derleme hata verip o bahsetmiş oldugum hata uyarısı cıkıyor

F®T

"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

acemi

büyük kücük harf hepsini denedim hata veriyor

MC_Skywalker

MyProject.c  içeriğini ve derleyicinin verdiği hataların tam metnini görmeden konuşmak afaki olur. 
ya bu C dosyasında yada include ettiğin H dosyadında bir tutarsızlık olabilir.

MB_77

#6
bu mesaj tarafımdan silinmiştir.

acemi

#7
void main() {
  TRISA=0B000000;
  PORTA=0;


  while(1)
   {
   PORTA.RA=1;
   DELAY_MS(100);
   PORTA.RA=0;
   DELAY_MS(100);

  }
}




library  manager  deki kütüphaneler işaretli , sigorta ayarlarıda tam

ete

Bu gibi durumlarda biraz da data sheet'e bakmakta yarar görürüm.
Port isimlendirmede Mikrochip bazen farklı adlandırmalar kullanıyor. Örneğin data sheet'e bakarsan 12F675 de port adı GPIO ve tris registeri ise TRISIO dur. Ama yine 8 pin serisinden olan 12F1822 ye bakarsan onda da Port adı PORTA ve port yönlendirme registeri ise TRISA şeklinde isimlendirildiğini görebilirsin. Bu durumde senin derleyici kütüphanesinde 12F675 için verilmiş port adı olan PORTA yanlış oluyor bana göre. Muhtemelen bu kütüphane başka bir işlemciden kopyalanmış gibi gözüküyor. Tabiiki C dili derleyicileri kullanımda farklı ama derledikten sonra da farklı isimler aldırabilirler. Bu nedenle bence yapılacak iş öncelikle o kütüphanede PORTA görülen yere GPIO ve TRISA gürülen yerede TRISIO yazım yeniden derleme yapmak uygun olacaktır. Tabiiki program içinde pinleri kontrol edeb komutlarıda kontrol etmek gerekir.

Ete

MC_Skywalker

#9
void main() 
{

TRISIO =0B00000000;
GPIO=0;


  while(1)
   {
   GPIO.0=1;
   DELAY_MS(100);
   GPIO.0=0;
   DELAY_MS(100);

  }
}


Birde böyle dene

acemi

ETE hocam  dediginiz gibi şu şekilde yaptigimda oldu teşkkürler .   MC_Skywalker dediginiz gibi yapınca olmadı

Powered by EzPortal