اطلاعیه

Collapse
No announcement yet.

مشکل eeprom در iar

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

    مشکل eeprom در iar

    سلام
    میخواستم یه عدد رو بزارم تو eeprom با دستور
    کد:
    __eeprom
    که مشابه eeprom jتو کد ویژن هستش اما جواب نمیده و میگه eeprom تو intel standard نمیاد :
    کد:
    Error[e133]: The output format intel-standard cannot handle multiple address spaces. Use format variants (-y -O) to specify which address space is
    نمیدونم باید چی کار کنم منابع انگلیسیم گشتم چیزی دستگیرم نشد avr freack و .. هم گشتم اما چیزی دستگیرم نشد
    تو user guid خود iar هم همین شکل رو داشت دقیقا اما بدون error
    به صفحه Linker که میرم و output رو factory reset میکنم کمپایل میشه اما دیگه hex نمیده!!که ببینم کمپایل کرده اصلا درسته برنامم یا نه ! مثل اینکه تو datasheet iar هم یا خروجی پیش فرض جواب گرفته اما hex نمیده که تو پروتئوس بریزم . avr studio هم که یاهاش پروگرم میکنم این پسوند d90 رو نمیشناسه . اچمز شدم اگه این مشکل حل نشه باید بیخیال این کمپایلر بشم چون خیلی با eeprom کار دارم اما چند روز وقت گذاشتم همه هدراشو نوشتم دلم خیلییییی میسوزه
    یه کتاب iar arm هم خونه دارم اما دریغ از یه مثال کار با eeprom !
    این کدمه:
    کد:
    #include <ioavr.h>
    __eeprom char epr; 
     
    void main()
    {
     DDRB=0x00;
     DDRD=0xff;
     DDRA=0x00;
    while(1)
    {
     if((PINA&0x01)==0x01)
      {
       epr=PINB;
       while(!(PINA&0x01));
      }
     else
     {
      PORTB=epr;
     }
    }
    }
    عین همین برنامه تو codevision جواب میده
    اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
    هيتلر

    #2
    مشکل eeprom در iar

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

    دیدگاه


      #3
      پاسخ : مشکل eeprom در iar

      دوستان کسی میتونه کمک کنه؟؟؟ :sad:
      اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
      هيتلر

      دیدگاه


        #4
        پاسخ : مشکل eeprom در iar

        علت ایجاد خطا این است که فایل hex ایجاد شده در مد Debug نمی تواند همزمان اطلاعات flash و eeprom را که از دو نوع مختلف هستند در خود نگه دارد. برای حل مشکل خود در نوار سمت چپ پروژه مد Release را انتخاب کنید که در اینصورت فولدری به همین نام در مسیر پروژه ایجاد می شود و بعد از کامپایل، فایل های مربوط به flash و eeprom در آن ایجاد می شوند. در صورت قرار دادن پروژه در مد Release باید توجه کنید که کلیه تنظیمات پروژه باید از ابتدا انجام شود (مانند نوع میکروکنترلر و CSTACK و ...).
        اوژن: به معنای افکننده و شکست دهنده است
        دانایی، توانایی است-Knowledge is POWER
        برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
        وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
        قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
        اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
        ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

        دیدگاه


          #5
          پاسخ : پاسخ : مشکل eeprom در iar

          نوشته اصلی توسط طراح
          علت ایجاد خطا این است که فایل hex ایجاد شده در مد Debug نمی تواند همزمان اطلاعات flash و eeprom را که از دو نوع مختلف هستند در خود نگه دارد. برای حل مشکل خود در نوار سمت چپ پروژه مد Release را انتخاب کنید که در اینصورت فولدری به همین نام در مسیر پروژه ایجاد می شود و بعد از کامپایل، فایل های مربوط به flash و eeprom در آن ایجاد می شوند. در صورت قرار دادن پروژه در مد Release باید توجه کنید که کلیه تنظیمات پروژه باید از ابتدا انجام شود (مانند نوع میکروکنترلر و CSTACK و ...).
          سلام ممنون از پاسختون جناب طراح . من پروژه زو روی release قرار دادم و دوباره تنظیمات رو انجام دادم و فولدر release هم ایجاد شد اما بازم eeror Intel رو گرفتم تنظیماتی که انجام میدم : نوع میکرو , cstack=0x60 ,heapstak= 0xff,و در linker انتخاب intel standard و تیدیل .d90 به hex هستش. باید چیزای دیگهای هم تنظیم شه؟ اینم برنامم :
          کد:
          #include <ioavr.h>
          
          __eeprom unsigned char epr;
           
          void main()
          {
           DDRB=0x00;
           DDRD=0xff;
           DDRA=0x00;
          while(1)
          {
           if((PINA&0x01)==0x01)
            {
             epr=PINB;
             while(!(PINA&0x01));
            }
           else
           {
            PORTB=epr;
           }
          }
          }
          اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
          هيتلر

          دیدگاه


            #6
            پاسخ : مشکل eeprom در iar

            در مد Release نباید گزینه تولید فایل Hex در مسیر Linker/Extra output فعال باشد و آن را غیرفعال کنید.
            اوژن: به معنای افکننده و شکست دهنده است
            دانایی، توانایی است-Knowledge is POWER
            برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
            وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
            قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
            اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
            ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

            دیدگاه


              #7
              پاسخ : پاسخ : مشکل eeprom در iar

              نوشته اصلی توسط طراح
              در مد Release نباید گزینه تولید فایل Hex در مسیر Linker/Extra output فعال باشد و آن را غیرفعال کنید.
              Extra output غیرفعال هستش . فقط output روشنه و گزیرنه standard intel هستش و override روی .hex تنظیمه :cry:
              اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
              هيتلر

              دیدگاه


                #8
                پاسخ : مشکل eeprom در iar

                فایل های کامل پروژه خود را قرار دهید تا نحوه تنظیمات آن را بررسی کنم.
                اوژن: به معنای افکننده و شکست دهنده است
                دانایی، توانایی است-Knowledge is POWER
                برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                دیدگاه


                  #9
                  پاسخ : پاسخ : مشکل eeprom در iar

                  نوشته اصلی توسط طراح
                  فایل های کامل پروژه خود را قرار دهید تا نحوه تنظیمات آن را بررسی کنم.
                  ممنون جناب کی نژاد این فایل پروژست
                  http://www.mediafire.com/download/meic2gtdoqfrptb/EEprom.zip
                  37kB
                  اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
                  هيتلر

                  دیدگاه


                    #10
                    پاسخ : مشکل eeprom در iar

                    مشکل شما این است که از گزینه Factory Settings استفاده کرده اید و این امر باعث پاک شدن یکسری تنظیمات اساسی پروژه شده شامل بخش Linker/Extra options شده است. بنابراین بهترین کاری که می توانید انجام دهید این است که در یک Folder جدید این پروژه را از نو تشکیل دهید و با رعایت مواردی که گفته شد، آن را در مد Release کامپایل کنید که در اینصورت فایل های Hex مربوط به Flash و eeprom بصورت مجزا ایجاد خواهند شد. ضمنا از تغییر بیمورد تنظیمات کامپایلر جدا خودداری کنید و اگر سوالی بود در همینجا مطرح کنید.
                    اوژن: به معنای افکننده و شکست دهنده است
                    دانایی، توانایی است-Knowledge is POWER
                    برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                    وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                    قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                    اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                    ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                    دیدگاه


                      #11
                      پاسخ : پاسخ : مشکل eeprom در iar

                      نوشته اصلی توسط طراح
                      مشکل شما این است که از گزینه Factory Settings استفاده کرده اید و این امر باعث پاک شدن یکسری تنظیمات اساسی پروژه شده شامل بخش Linker/Extra options شده است. بنابراین بهترین کاری که می توانید انجام دهید این است که در یک Folder جدید این پروژه را از نو تشکیل دهید و با رعایت مواردی که گفته شد، آن را در مد Release کامپایل کنید که در اینصورت فایل های Hex مربوط به Flash و eeprom بصورت مجزا ایجاد خواهند شد. ضمنا از تغییر بیمورد تنظیمات کامپایلر جدا خودداری کنید و اگر سوالی بود در همینجا مطرح کنید.
                      جناب کی نژاد این کارارو انجام دادم خط به خط که کد رو نوشتم کمپایل کردم متوجه یه چیزی شدم
                      این کد کمپایل میشه:
                      کد:
                      #include <ioavr.h>
                      __eeprom char i;
                      int main()
                      {
                       DDRC=0x00;
                       DDRA=0x00;
                       DDRC=0xFF;
                       while (1)
                       {
                        if((PINA&0x01)==0x01)
                        i=PINB; 
                       }
                      }
                      اما این کد بازم همون ارور رو میده
                      کد:
                      #include <ioavr.h>
                      __eeprom char i;
                      int main()
                      {
                       DDRC=0x00;
                       DDRA=0x00;
                       DDRC=0xFF;
                       while (1)
                       {
                        if((PINA&0x01)==0x01)
                        i=PINB;
                        else
                         PORTC=i; 
                       }
                      }
                      وقتی داخل i میریزم مشکل نداره اما از i میخوام بخونم ارور میده حتی i رو به عنوان ورودی sprintf هم دادم باز این ارور رو داد انگار نمیتونه بخونه اما میتونم توش عدد بریزم
                      اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
                      هيتلر

                      دیدگاه


                        #12
                        پاسخ : مشکل eeprom در iar

                        جناب کی نژاد من دیگه بیخیال این شدم .
                        اگه بخواد سر هر چیزی همه تنظیمات رو از من بگیره فعلا صلاح نیست با این سطح معلوماتم سراغش برم .
                        یه درخواست داشتم ازتون مدتی هست من یه تاپیک زدم برای i2c . مدتهاست میخوام i2c رو راه بندازم اما نصفه نیمه میشه گفتم . از این فرصت که اینجا پیش اومده یکی سو استفاده کنم بگم اگه میشه به این تاپیک به نیم نگاهی بندازید . این موضوع یه جورایی با ابروی منم در ارتباطه و تا حالا کسی جوابم رو نداده

                        http://www.eca.ir/forum2/index.php?topic=78617.0

                        ممنون بابت لطفتون
                        اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
                        هيتلر

                        دیدگاه


                          #13
                          پاسخ : مشکل eeprom در iar

                          من نمونه کد دوم شما را با همان شکل کامپایل کردم و بدون هیچ مشکلی فایل های مربوطه ایجاد شد. بنابراین می توان نتیجه گرفت که مشکل اصلی از نسخه IAR شماست که احتمالا به دلیل نحوه crack شدن چنین خطایی را نشان می دهد. در این رابطه می توانید از نسخه زیر استفاده کنید:

                          http://www.eca.ir/forum2/index.php?t...7064#msg407064

                          همچنین اگر قرار باشد به این زودی خسته شوید و به اصطلاح از میدان در بروید که در کارهای عملی و پروژه های بزرگ از این دست مشکلات زیاد است و کسی موفق تر است که پشتکار بیشتری در غلبه بر مشکلات و صورت مسئله های مختلف از خود نشان دهد. در مورد تاپیک دیگر هم در یک فرصت مقتضی آن را بررسی می کنم.
                          اوژن: به معنای افکننده و شکست دهنده است
                          دانایی، توانایی است-Knowledge is POWER
                          برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                          وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                          قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                          اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                          ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                          دیدگاه


                            #14
                            پاسخ : پاسخ : مشکل eeprom در iar

                            نوشته اصلی توسط طراح
                            من نمونه کد دوم شما را با همان شکل کامپایل کردم و بدون هیچ مشکلی فایل های مربوطه ایجاد شد. بنابراین می توان نتیجه گرفت که مشکل اصلی از نسخه IAR شماست که احتمالا به دلیل نحوه crack شدن چنین خطایی را نشان می دهد. در این رابطه می توانید از نسخه زیر استفاده کنید:

                            http://www.eca.ir/forum2/index.php?t...7064#msg407064

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

                            دیدگاه


                              #15
                              پاسخ : مشکل eeprom در iar

                              سلام مجدد
                              ورژنی که معرفی کرده بودید رو گرفتم . تو Uninstall داخل control panel ورژن رو زده 6.11 توی about نرم افزار زده 6.3.0!!نمیودم کدومش درسته
                              با اینم کمپایل کردم اما بازم جواب نداد :cry:
                              نحوه کرک:
                              به قسمت NEW_KeyGens رفتم به فولدر AVR_crack و انترنت رو قطع کردم
                              1- runme.bat اجرا کردم
                              2-Installserial: کپی کردم
                              3- copy کردن نوشته داخل txt : "EWAVR" version "2.25_WIN", no expiration date, exclusive
                              کپی کردن کد بدون # و نوشتم تو قسمت Licence
                              4- نصب
                              5- اجرای فایل irkg.exe
                              اشکهايي که پس از هر شکست ميريزيم همان عرقيست که براي پيروزي نريخته ايم.
                              هيتلر

                              دیدگاه

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