hi-tech ve 16F676 problemi

Başlatan nonstradam, 22 Eylül 2006, 08:58:56

nonstradam

Hi-Tech PICC V9.50 ile 16f676 için derleme yaptığımda aşağıdaki gibi bir hata ile karşılaşıyorum. PIC i değiştirip 16f628 veya herhangi bir PIC i seçip derlediğimde hata ortadan kalkıyor. acaba bu hi-tech in bir problemimi yoksa benim atladığım bir noktamı var. anlamadım gitti.

Program bu kadar basit ama hatayı anlamadım.sadece 16f676 da bu problemi veriyor. başka bir işlemcide böyle bir problem yok

#include <htc.h>
#include "delay\delay.h"

void
main(void)
{
   while(1)
   {
      PORTC=0xFF;
      DelayMs(250);
      PORTC=0;
      DelayMs(250);
   }
}


hata şu :   (800) undefined symbol "osccal_val"
   (876) syntax error [startup.as]

nonstradam

arkadaşlar böyle bir problemle karşılaşan olmadımı daha önce

piedos

Alıntı yapılan: "nonstradam"Hi-Tech PICC V9.50 ile 16f676 için derleme yaptığımda aşağıdaki gibi bir hata ile karşılaşıyorum. PIC i değiştirip 16f628 veya herhangi bir PIC i seçip derlediğimde hata ortadan kalkıyor. acaba bu hi-tech in bir problemimi yoksa benim atladığım bir noktamı var. anlamadım gitti.

Program bu kadar basit ama hatayı anlamadım.sadece 16f676 da bu problemi veriyor. başka bir işlemcide böyle bir problem yok

#include <htc.h>
#include "delay\delay.h"

void
main(void)
{
   while(1)
   {
      PORTC=0xFF;
      DelayMs(250);
      PORTC=0;
      DelayMs(250);
   }
}


hata şu :   (800) undefined symbol "osccal_val"
   (876) syntax error [startup.as]


#include <htc.h> den önce
#define oscval_val (senin osilatör frekansın)

yazmayı dene, bir de 628 de internal Rc osilatör var, 876 ise yok buna da dikkat et
Einstein: "Only two things are infinite, the universe and human stupidity, and I'm not sure about the former."

nonstradam

malesef hocam olmadı yine aynı yine aynı iki gündür kafayı yedim. aynı hatayı 16f630 da da verdi.

arslan74

#define	XTAL_FREQ	4MHZ

#include <pic.h>
#include "delay.h"


//__IDLOC(0105);

__CONFIG(INTOSCIO & WDTDIS & CPROTECT & MCLRDIS & PWRTEN & BOREN  );


void
main(void)
{


	OSCCAL = _READ_OSCCAL_DATA();


Şeklindeki gibi bir kod başlarsan hiç bir sorunla karşılaşmassın. Bu kalıb 16F676 için yazılımış ve test edilmiş koddan alıntıdır.

Selamlar.

birkan

main blogunun içine

OSCCAL = _READ_OSCCAL_DATA();

yazınca olması ama bende bir iki saat uğraştım yapamadım. Hi-tech in eski sürümleri ile bir deneyin isterseniz. Yukardaki kod bende hata veriyor program sürümüm 9.5

birkan

sayın nonstradam eve geldim geleli hala uğraşıyorum kafama takıldı bir kere. Çünkü Hi-Tech den başka derleyici kullanmıyorum. 9.5 versiyonunu silip 8.02 pl1 i kurdum problemsiz derledi. 8 li versiyonlardan birini kurarsan problem çıkacağını sanmıyorum. Forumda vardır. Geçmiş olsun ikimizede  ;)

arslan74

Ben 8.05pl2 version kullaniyorum gayet memnunum. Size tavsiye ederim.

aslan_korhan

Hitec'den anlamam ama bu olay benim PicBasic'te başıma gelmişti.

__CONFIG(INTOSCIO & WDTDIS & CPROTECT & MCLRDIS & PWRTEN & BOREN  ) gibi birşey yazdığım zaman bana hatta mesajı verip derleme yapmıyordu.

Bunu çözmek için kullandığım PIC'in .lib gibi uzantılı dosyaları vardı PBP247'nin içesinde. Bunu bulup notdefterinde açtım.
Bunun içersinde zaten bu Config olayı yazıyordu.
Yani ben tekrar yazdığımda çakışıyordu. Bu satırı buradan sildikten sonra istediğim gibi çalışıyor şimdi.
Ama bunu her PIC için ayrı ayrı yapmam gerekti.

Belki buna benzer bir olay olmuş olabilir...
Dünyada 10 çeşit insan vardır. Binary bilen ve bilmeyenler.