Pic C CCS de pointer hatası

Başlatan tnen, 02 Ağustos 2004, 11:57:56

tnen

char menu[2][10] = {"file", "edit"};
char *ptr[10];
ptr = menu ;
pic C CCS bu atamayı kabul etmiyor.ANSI C ' de bu atama yapılabiiyor.
Bu tanımlamayı CCS de kabul ettirebilirmiyim bunun için ne yapmam gerekir.Yardımlarınızı bekliyorum Herkese selamlar.

Erkan Gench

yapmaya çalıştığınız menu içindeki file ve edit'e ayrı ayrı erişmekse file için menu[0] edit içinde menu[1] kullanabilirsiniz. ne yazıkki ccs ansi c'ye çok uyumlu değil bazı şeyler pic için çok uygun olmadığından veya beceremediklerinden :) eklenmemiş (mesela recursive fonksiyonlar)

yani printf(lcd_putc,"%s",menu[0]); satırı lcd'ye 'file' yazacaktır.
Zorluklar, zamanında yapmamız gerekip de yapmadığımız kolay şeylerin birikmesiyle oluşur. Henry Ford ----------- Ya Rabbi Filistin'deki ve dünyanın her tarafındaki Müslüman kardeşlerime yardım et.

tnen

int i = 0;
printf(lcd_putc, "%s", menu);
yazdığımda olmuyor.

lcd_putc'yi kullanarak _lcd_puts() diye fonsiyon oluşturdum,
diziyi char menu[] olarak tanımladığım zaman dizi elemanlarını ekranda görüyorum.
char const olarak tanımladığım zaman ekrana ASCII karakterler çıkıyor.

Erkan Gench

bu kodda hiç bi sorun yok

#include <16F877.h>
#device adc=8
#use delay(clock=4000000)
#fuses NOWDT,XT, PUT, NOPROTECT, BROWNOUT, NOLVP, NOCPD, NOWRT, NODEBUG

#include <LCD.C>

void goster(void);
const char menu[2][10]={"file","edit"};
int1 i=0;

void main()
{
   setup_adc_ports(NO_ANALOGS);
   setup_adc(ADC_OFF);
   setup_psp(PSP_DISABLED);
   setup_spi(FALSE);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   lcd_init();
/*	while(true)
	{
		printf(lcd_putc,"\f%s",menu[i]);
		i=~i;
		delay_ms(300);
	}*/
	goster();
}

void goster(void)
{
	while(true)
	{
		printf(lcd_putc,"\f%s",menu[i]);
		i=~i;
		delay_ms(300);
	}

}
Zorluklar, zamanında yapmamız gerekip de yapmadığımız kolay şeylerin birikmesiyle oluşur. Henry Ford ----------- Ya Rabbi Filistin'deki ve dünyanın her tarafındaki Müslüman kardeşlerime yardım et.

Erkan Gench

merhaba tnen ne oldu sorunu halledebildinmi?
Zorluklar, zamanında yapmamız gerekip de yapmadığımız kolay şeylerin birikmesiyle oluşur. Henry Ford ----------- Ya Rabbi Filistin'deki ve dünyanın her tarafındaki Müslüman kardeşlerime yardım et.

tnen

2 boyutlu menü dizisi gibi başka dizilerim de olacak ve istediğim zaman istediğim diziye, diziyi pointera atarak erişecem. amacım birden çok diziye aynı pointerla erişmek.Gonderdigin kod icin teşekkürler ama bi isime yaramadı.Sorun devam ediyor.

Erkan Gench

hocam o zaman size hiç vakit kaybetmeden iar'a geçmenizi tavsiye ediyorum inanın hiç sorununuz kalmaz. o olmazsa en azından hitech kullanın çünkü ANSI C uyumluluğu CCS den çok daha iyi.
Zorluklar, zamanında yapmamız gerekip de yapmadığımız kolay şeylerin birikmesiyle oluşur. Henry Ford ----------- Ya Rabbi Filistin'deki ve dünyanın her tarafındaki Müslüman kardeşlerime yardım et.

tnen

Saol hocam iar nedir ? Cahiliğimi bağısla ama nereden bulurum ben bunu?

pikpikde

http://www.iar.com/

http://www.iar.com/Products/EW/

The IAR Embedded Workbench IDE with its C/C++ compiler and C-SPY debugger is the most complete and easy-to-use set of development tools available today for professional embedded applications

Erkan Gench

iar bildiğim en profesyonel embedded sistem programlama yazılımları üreten firma. pic'in yanısıra onlarca ayrı microcontroller için yazılım üretiyorlar.

ama son bi şans olarak sorularını birde ccs'nin forumuna sormayı dene istersen (ingilizce)

http://www.ccsinfo.com/forum/index.php
Zorluklar, zamanında yapmamız gerekip de yapmadığımız kolay şeylerin birikmesiyle oluşur. Henry Ford ----------- Ya Rabbi Filistin'deki ve dünyanın her tarafındaki Müslüman kardeşlerime yardım et.

Erkan Gench

ya hocam kusura bakma ama cevaplarını tekrar okuyunca gördüm. amacım birden çok diziye tek bir pointer'la erişmek demişsin e sen menu[2][10] gibi bir tanım yaptığın zaman menu[2] pointer'ıyla birden çok diziye erişiyorsun işte sorun nedir ben gerçekten anlamış değilim. verdiğim program sen de nasıl çalıştı. proteusta çalıştırınca lcd ekrarına sırayla edit ve file yazıları yazması lazım.

ben programın doğru çalıştığını fakat senin asıl istediğinin bu olmadığını düşündüm eğer program çalışmadıysa mesaj at duruma tekrar bir bakalım.
Zorluklar, zamanında yapmamız gerekip de yapmadığımız kolay şeylerin birikmesiyle oluşur. Henry Ford ----------- Ya Rabbi Filistin'deki ve dünyanın her tarafındaki Müslüman kardeşlerime yardım et.

tnen

Merhaba hocam senin programın çalışmasında bir problem yok da ben bunu istemiyorum.

tnen

Merhaba dostlar Pic C ile ilgilenmeyi bıraktım simdilik Hepinize kolay gelsin

anafor

iar programı çok enteresan geldi bu programın crack'lisini nerden bulabiliriz bilen varsa bizi aydınlatabilirmi? eğer bana emaille ulaştırabilecek olan varsa anafor2004@yahoo.com mail adresim ........

axanc

const char menu[4][16]={"1","2","3","4"};
int1 i=0;

void main() {

	lcd_init();

   while(true)
   {
      i=3;
      lcd_putc(menu[i]);
      delay_ms(1300);
   }

}

üstat bu kodları yazınca 2 gösteriyor... ??
Uzmanlık: Bilgisayar Müh. öğrenci Derleyici: PicBasic Pro Compiler Ver. 2.45 Program: Proteus 6.2.5 ve MCSP