اطلاعیه

Collapse
No announcement yet.

مشکلی عجیب در کامپایل برنامه

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکلی عجیب در کامپایل برنامه

    با عرض سلام خدمت دوستان برنامه ی زیر رو نوشتم خط خط بررسیش کردم فایلهای هدر رو هم به پوشه اضافه کردم اما برنامه 4 تا error میگیره هرکاری می کنم درست نمیشه بچه ها لطفا راهنمایی کنید ممنون
    کد:
    [left]#include <AT91SAM7X256.h>
    #include "lib_AT91SAM7X256.h"
    void wait (void) ;
    int main (void)
    {
    AT91F_PIO_CfgOutput(AT91C_BASE_PIOB, 0x0FF);
    const char segmnt[] = { 0x00000040, 0x00000079, 0x00000024, 0x00000030, 0x00000019, 0x00000012, 0x00000082, 0x000000F8, 0x00000000, 0x00000010};
     int a,cont= 0;
    	while(1)
    			{
    	AT91F_PIO_Setoutput(AT91C_BASE_PIOA,segmnt[cont]);
    	wait();
    	void wait (void){
    	for (a = 0;a <1000000;a++){
    	nop
    							 }
    					}
    	cont++ ;
    	if (cont==10) 
    	cont=0 ;
    			}
    }[/left]
    قم الکترونیک

    #2
    پاسخ : مشکلی عجیب

    سلام
    تو کمپایلر کیل متغییر ها رو باید اولین خط هر تابع معرفی کرد.
    من هر وقت مثلا وسطای برنامه متغییر رو معرفی میکنم گیر میده.
    به خط خاصی هم گیر نمیده که آدم بفهمه. :biggrin:
    چک کن شاید مشکل همین باشه.
    تولید کننده انواع تابلو فرمان آسانسور با تکنولوژی روز دنیا

    دیدگاه


      #3
      پاسخ : مشکلی عجیب

      نوشته اصلی توسط مجتبی صاحبی
      با عرض سلام خدمت دوستان برنامه ی زیر رو نوشتم خط خط بررسیش کردم فایلهای هدر رو هم به پوشه اضافه کردم اما برنامه 4 تا error میگیره هرکاری می کنم درست نمیشه بچه ها لطفا راهنمایی کنید ممنون
      کد:
      [left]#include <AT91SAM7X256.h>
      #include "lib_AT91SAM7X256.h"
      void wait (void) ;
      int main (void)
      {
      AT91F_PIO_CfgOutput(AT91C_BASE_PIOB, 0x0FF);
      const char segmnt[] = { 0x00000040, 0x00000079, 0x00000024, 0x00000030, 0x00000019, 0x00000012, 0x00000082, 0x000000F8, 0x00000000, 0x00000010};
       int a,cont= 0;
      	while(1)
      			{
      	AT91F_PIO_Setoutput(AT91C_BASE_PIOA,segmnt[cont]);
      	wait();
      	void wait (void){
      	for (a = 0;a <1000000;a++){
      	nop
      							 }
      					}
      	cont++ ;
      	if (cont==10) 
      	cont=0 ;
      			}
      }[/left]
      سلام
      هم مشکلی که دوستمون گفت وجود داره هم این که شما یه تابع (wait) رو قبل از تعریفش استفاده کردین و هم این که این تابع رو داخل یه تابع دیگه (main) تعریف کردین
      اولا تابع داخل یه تابع دیگه قابل تعریف نیست
      دوما قبل از استفاده باید تعریف شه البته یه راه وجود داره که قبل از تعریف تابع اون تابع رو فراخونی کنید
      موفق باشید
      زندگی یعنی امید و حرکت
      کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
      سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
      برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
      به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

      دیدگاه

      لطفا صبر کنید...
      X