Hi-Tech Pic Programlama Dersi

Başlatan FxDev, 18 Ağustos 2009, 01:45:04

papylon


Programı aşağıda ki gibi yazdığımda, yani statik tanımlı fonksiyonu ana fonksiyon döngüsünün altında yazdığımda bu hatayı veriyor.
void main(void)
{
	TRISB=0x00;
	PORTB=0x00;
	for(;;)
	{
		if (RB7)func();
	}
}
static void func (void)
{
		RB0 = !RB0;
		while (RB7);
		DelayMs(20);
}

Fakat statik fonksiyonu, ana fonksiyon döngüsünün üstünde yazarsam sorun yok ve program derleniyor.

static void func (void)
{
		RB0 = !RB0;
		while (RB7);
		DelayMs(20);
}
void main(void)
{
	TRISB=0x00;
	PORTB=0x00;
	for(;;)
	{
		if (RB7)func();
	}
}

Benim anlamadığım şeyse @FxDev'in yazdığı bütün interrupt fonksiyonları static olarak tanımlı ve ana fonksiyon döngüsünün altında yazılmışlar. Bu durumda neden hata vermiyor? Bu durum sadece interrupt fonksiyonuna mı özgü birşey?

M_B

Fonksiyonlarını alt kısımda yazmak istersen
oncelikle en ust kısımda Fonksiyon Protipi ni tanımlaman lazım
Nasıl mı aşağıdaki gibi
#include <htc.h>
#include "delay.h"

static void func (void);

void main(void) 
{ 
   TRISB=0x00; 
   PORTB=0x00; 
   
   for(;;) 
   { 
      if (RB7)func(); 
   } 
} 

static void func(void) 
{ 
      RB0 = !RB0; 
      while (RB7); 
      DelayMs(20); 
}  


Bu şekilde yapınca derlemede sorun olmuyor.
Ansi C normalde bu şekilde kullanılmasını öneriyormuş
Elimdeki kıtap ta bu şekilde diyor.
Nette gordugum tum programlarda yukardaki gibi yapmışlar.

Mehmet
İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

papylon

Anlattıklarınızı daha iyi kavramaya başladım, bir iki de program yazıp deneme yapınca taşlar yerine oturmaya başaldı.

Teşekkür ederim…

dijital74

@FxDev üstad;

Çalışmanızı şöyle bir gözden geçirdim. CCS C ile C'ye ufak da olsa bir başlangıç yapmıştım, kitabınızla da inşaallah Hi-Tech hakkında fikir sahibi olacağım.

Ben çalışmanızı kişisel kullanım için basıp bir kitap haline getirip okumak istedim, fakat pdf'nizin güvenlik ayarlarından dolayı yapamadım. Çalışmanızın basılmasını istemiyor musunuz ? Ya da buna müsaade eder misiniz? Ben rızanızı almadan basma işini zorlamak istemedim. Saygılar...

hasangurlek

Alıntı yapılan: "dijital74"@FxDev üstad;

Çalışmanızı şöyle bir gözden geçirdim. CCS C ile C'ye ufak da olsa bir başlangıç yapmıştım, kitabınızla da inşaallah Hi-Tech hakkında fikir sahibi olacağım.

Ben çalışmanızı kişisel kullanım için basıp bir kitap haline getirip okumak istedim, fakat pdf'nizin güvenlik ayarlarından dolayı yapamadım. Çalışmanızın basılmasını istemiyor musunuz ? Ya da buna müsaade eder misiniz? Ben rızanızı almadan basma işini zorlamak istemedim. Saygılar...

Verilen emeğe gösterdiğin saygıdan dolayı tebrikler.
http://www.cyber-warrior.org, Although they like whiteness, sometimes twilight is required...  Hala evlilermi bilinmez ama kesinlikle artık uygun değiller !!!

gogge

Emeklerinize sağlık. Kaynak sıkıntısının bu kadar fazla olduğu bir konuda bilgilerinizi bizimle paylaşıyorsunuz. Bu davranışınız övgüyü hak ediyor. Teşekkürker.

MC_Skywalker

Emeklerinize sağlık. Böyle faydalı bir çalşmayı bizler ile paylaştığın için teşekürler.

bu güzel dökümanı print edebilmeyi isterdim.

dogustokat

çok teşekkürler

sanırım benim gibi pic e  yeni başlayan birçok arkadaşın zaman kazanmasını sağladın.

net teki en kapsamlı ve açık anlatımlı türkçe  kaynak. (hoş bu şekilde ingilizcede bulamadım ya )

Tabii ki algoritma ve şemasıyla olmasıda ayrı bi güzellik

birde hi-tech c için kapsamlı bi kaynak önerebilirmisin.?

sağol kardeş...

Digimensch

Kitabinizda bahsettiginiz ve sizin derleyici olarak kullandiginiz Hi-Tide'yi indirebilecegimiz bir Link verirseniz sevinirim.
Hi-Tech'in cesitli verisonlari var ama Aktuel Hi-Tide programini bulamadim.
Link verirseniz hemen inririp denemelere gecmek istiyorum..


saygilarimla

MC_Skywalker

http://www.htsoft.com/downloads/demos.php adresinden kayıt olup lite versionunu indire bilirsin. ben konuları çalışırken bu şekilde kullanıyorum.

XX_CİHAN_XX

Ben 45 günlük 9.65PL1 PRO versiyonunu kullanıyorum hiç dandik lite ile vakit kaybetme bence. Bu sürüm hem legal hem pro hemde hatasız derleme yapan mükemmel bir sürüm.
45 gün sonra mı? Kaldırıp tekrar kuruyorum  :lol:
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

Digimensch

Tam Linkini versen cok sevinirim bu 45 günlük deneme versionun

XX_CİHAN_XX

Buyur.
http://rapidshare.com/files/312832377/HCPIC-pro-9.65PL1-45gunlukFULL.zip.html

Yüklerken en üstteki 45 günlük modu seçiyorsun diğerlerine dokunmadan kuruyorsun.
Kolay gelsin - İyi bayramlar.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

Digimensch

Tesekkürler sizinde Bayraminiz mübarek olsun.
Fakat verdiginiz Linkteki Programi Windows7'ye kurarken  MSVCP71.dll'nin eksik oldugunu veren bir Mesaj veriyor ve Install yarida kaliyor...

Birde install sirasinda
**HI-TIDE Integrrated Development Environment
**Free! - HI-TECH C PRO for the PIC 18 MCU Family Compiler
**Free! - HI-TECH PRO for the PIC32 MCU Family Compiler

diye 3 secenek cikiyor ben bu secenekleride secmelimiyim??

XX_CİHAN_XX

Ben XP de kullanıyorum başka bir windowsta hiç denemedim. Muhtemelen uyumlu değildir. Ama W7 de XP ye uyumluluk modu diye birşey vardı. Oraya geçip bir deneyin isterseniz. Yine olmazsa yapıcak birşey yok uyumlu bir sürüm aramalısınız.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.