اطلاعیه

Collapse
No announcement yet.

محدودیت رم در کیل!

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

    محدودیت رم در کیل!

    تو کیل برای میکروی sam7x256 یه برنامه نوشتم که بعداز تعریف یک آرایه char[1024]l پایه ی 1 از پورت بی رو یک میکنه و البته به آرایه مقدار میدم.میکرو بدون مشکل کار میکنه ولی اگه مقدار آرایه رو 2048 یا بیشتر قرار بدم میکرو هنگ میکنه و همینطور اگه اینتجر با 512 قرار بدم.
    مگه این میکرو 64 کیلو رم نداره؟ پس چرا با این مقدار جزیی هنگ میکنه؟
    اگه به آرایه ها به هر طریقی مقدار بدم این اتفاق میوفته!
    کد:
    #include <at91sam7x256.h>
    
    int main (void){
    
    char buf[1024]="Hello World";
    
    *AT91C_PMC_PCER = (1<<AT91C_ID_PIOB);
      *AT91C_PIOB_PER = (1 << 0) | (1 << 1);
      *AT91C_PIOB_OER = (1 << 0) | (1 << 1);
      *AT91C_PIOB_SODR = (1 << 1);
      *AT91C_PIOB_CODR = (1 << 0);
      return 0;
    
    
    }

    #2
    پاسخ : محدودیت رم در کیل!

    سلام
    من الان تو IAR برنامه زیر را نوشتم و یک آرایه 10000 تایی char تعریف کردم و مشکلی نداره برنامه بدون مشکل کامپایل می شود و بر روی میکرو هم پروگرام کردم و به درستی کار می کند. مشکل شما احتمالا از خود keil می باشد که به درستی کرک نشده است چون من اصلا با keil کار نمی کنم نمی توانم با آن تست کنم.
    کد:
    #include <Atmel/ioat91sam7x256.h>
    void delay (void);
    void main ()
    {
    //--------------------start up--------------------------
    AT91C_BASE_WDTC->WDTC_WDMR = AT91C_WDTC_WDDIS; // AT91C_WDTC_WDDIS=(1<<15)
    AT91C_BASE_RSTC->RSTC_RMR=0xA5000001;
    //--------------------speed up--------------------------
    AT91C_BASE_CKGR->CKGR_MOR = 0xF01;
    AT91C_BASE_CKGR->CKGR_PLLR = 0x2903FFC; 
    AT91C_BASE_PMC->PMC_MCKR = 0x3;    
    AT91C_BASE_PMC->PMC_SCER = 0x1;
    //-----------------------------------------------------
    AT91C_BASE_PMC->PMC_PCER = ( 1<<AT91C_ID_PIOB ); // AT91C_ID_PIOB=3 
    //------------------------------------------------------
    char buf[10000]="Hello World";
    AT91C_BASE_PIOB->PIO_PER=(1<<0);
    AT91C_BASE_PIOB->PIO_OER=(1<<0);
    AT91C_BASE_PIOB->PIO_SODR=(1<<0);
    while(1)
    	{
        delay();
        AT91C_BASE_PIOB->PIO_CODR=(1<<0);
        delay();  
        AT91C_BASE_PIOB->PIO_SODR=(1<<0);
        } 
    }
    void delay (void)
    {
     unsigned int i,j;
     for (i=0;i<1000000;i++)
     { 
     j=AT91C_BASE_PMC->PMC_SCSR;
     j=j; 
     }
    }

    دیدگاه


      #3
      پاسخ : محدودیت رم در کیل!

      سلام آقا حامد
      متشکر که رسیدگی می کنید. با قسمت پشتیبانی کیل تماس گرفتم میگن مشکل از برنامه نویسی خودت!! رجیسترهای محلی گفت که داخل استک ذخیره میشه ولی استک که از انتهای رم شروع میشه و من هیچ تنظیماتی برای اون ندیدم! حالا منتظر جوابشونم مثل اینکه ناراحت شدن گفتم کامپایلرشون باگ داره

      دیدگاه


        #4
        پاسخ : محدودیت رم در کیل!

        شاید آنها فکر می کنند که شما دارید از نسخه اصلی استفاده می کنید که میگن مشکل از برنامه نویسی و این حرفا می باشد. چون من چند جا دیدم که بچه هایی که از نسخه کرک شده استفاده می کنند فکر کنم برنامشون که از 10 کیلو بایت بیشتر میشد دیگر KEIL کامپایل نمی کرد.

        دیدگاه


          #5
          پاسخ : محدودیت رم در کیل!

          سلام

          این لینک دانلود کرک این کرک تا ورژن 4.21 نیز کاملا تست شده است اگر دانلود نشد از قسمت دانلود نرم افزار در انجمن می توانید دانلود کنید

          لینک up.iranblog.com/images/kq8thx5nl2w4r7lev7.rar

          با سپاس
          http://vz.iminent.com/vz/39a77668-19...h-fishing.giff

          دیدگاه


            #6
            پاسخ : محدودیت رم در کیل!

            به نام خدا سلام من همچین مشکلی با KEIL ندارم در ضمن تنظیمات استک در برگه استارتاپ قرار دارد
            آيا كسى كه وعده نيكو به او داده‏ايم و او به آن خواهد رسيد، مانند كسى است كه از كالاى زندگى دنيا بهره‏مندش گردانيده‏ايم [ولى‏] او روز قيامت از [جمله‏] احضارشدگان [در آتش‏] است؟ (61)(سوره قصص)

            دیدگاه


              #7
              پاسخ : محدودیت رم در کیل!

              متشکر از پاسخ هاتون

              دیشب کلی با مسئولای کیل صحبت کردم تا به نتیجه رسیدم.
              حق با اونا بود تنظیمات پیش فرض کیل برای ذخیره ی اون مقدار آرایه زیاد بود باید استک رو با توجه به نیازتون تعریف کنید.
              من مشکلم این جوری حل شد و هر کسی در این باره راهنمایی بخواد با کمال میل پاسخ میدم.البته اگه با راهنمایی خط قبل هنوزم کارش راه نیفتاده

              دیدگاه

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