اطلاعیه

Collapse
No announcement yet.

جابجایی آدرس شروع در IAR

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

    جابجایی آدرس شروع در IAR

    چطور میشه آدرس شروع برنامه رو در نرم افزار IAR به 0x2000 تغییر داد؟!

    #2
    پاسخ : جابجایی آدرس شروع در IAR

    سلام
    منم همین سوال رو دارم اما تو نرم افزار Keill uvision .
    کسی نیست جواب بده؟ oo:
    ask One Question

    دیدگاه


      #3
      پاسخ : جابجایی آدرس شروع در IAR

      با سلام
      من هم بنا به دلایلی می خواهم که در برنامه آدرش شروع را خودم تعیین کنم و مثلا از سکتور 2 شروع کنم
      سرچ کردم و اینجا را پیدا کردم و دیگه یک موضوع جدید باز نکردم اگه دوستان جواب گرفتید یا کسی می دونه لطفا کمکم کنید .

      با تشکر

      دیدگاه


        #4
        پاسخ : جابجایی آدرس شروع در IAR











        اون قسمت relocate بدرد شما میخوره
        تنها موردی که همه آدما یقین دارن خدا در حقش زیاد لطف کرده
        داشتن عقله زیادتر از دیگر آدم ها است

        دیدگاه


          #5
          پاسخ : جابجایی آدرس شروع در IAR

          ممنون از شما
          ولی درعمل نفهمیدم چطوری کار می کند
          در حالت عادی که هیچ تغییری ندادم برنامه را JLINK که پرگزام می کنم آدرس شروع روی 9E88 46C0 است ( مه اصلا نمی دانم چرا این عدد است )
          بعد که محلی را که شما فرمودید را تغییر می دهم این آدرس مقادیر 46C0 تعییر می کند ولی اصلا مناسبتی با مقدار داده شده من ندارد .
          میشه بیشتر کمک کنید

          دیدگاه


            #6
            پاسخ : جابجایی آدرس شروع در IAR

            نوشته اصلی توسط داریوش عباسی
            ممنون از شما
            ولی درعمل نفهمیدم چطوری کار می کند
            در حالت عادی که هیچ تغییری ندادم برنامه را JLINK که پرگزام می کنم آدرس شروع روی 9E88 46C0 است ( مه اصلا نمی دانم چرا این عدد است )
            بعد که محلی را که شما فرمودید را تغییر می دهم این آدرس مقادیر 46C0 تعییر می کند ولی اصلا مناسبتی با مقدار داده شده من ندارد .
            میشه بیشتر کمک کنید
            من دقیقا منظور شما را از آدرس شروع متوجه نشدم . آدرس شروع فقط از مکان اینتراپت شماره صفر یعنی اینتراپت ریست باید باشه . بردار ریست بصورت پیش فرض آدرس صفر را برمیگرداند . که میشه بردار های وقفه را در کورتکس ریمپ کرد . ولی آنچه من توضیح دادم نوشتن برنامه سورس و کد بایک آفست در داخل فلش مموری است
            تنها موردی که همه آدما یقین دارن خدا در حقش زیاد لطف کرده
            داشتن عقله زیادتر از دیگر آدم ها است

            دیدگاه


              #7
              پاسخ : جابجایی آدرس شروع در IAR

              با تشکر مجدد
              برای استفاده از بوت لودر دوم در برنامه ( بعدا خواهم نوشت ) می خواهم که برنامه را وقتی می خواهم بنویسم مثلا از سکتور 2 در فلش شروع شود نه از سکتور 0

              دیدگاه


                #8
                پاسخ : جابجایی آدرس شروع در IAR

                میشه سکتور را تعریف کنی ؟
                پس همونی که گفتم مقدار جابجایی سورس در فلش رو تایین کن و برنامه را دانلود کن به میکرو
                تنها موردی که همه آدما یقین دارن خدا در حقش زیاد لطف کرده
                داشتن عقله زیادتر از دیگر آدم ها است

                دیدگاه


                  #9
                  پاسخ : جابجایی آدرس شروع در IAR

                  نوشته اصلی توسط aliila
                  میشه سکتور را تعریف کنی ؟
                  پس همونی که گفتم مقدار جابجایی سورس در فلش رو تایین کن و برنامه را دانلود کن به میکرو
                  مهندس جان همین کار رو می کنم و حتی با falsh magic هم که پرگزام می کنم برنامه همیشه از آدرس 0 سکتور صفر اجرا میشه کار دیگه ای هم باید بکنم ؟

                  دیدگاه


                    #10
                    پاسخ : جابجایی آدرس شروع در IAR

                    یک کار دیگه هم می خوام بکنم که شبیهه می خوام توی برنامه به یک آدرس خاص jump کنم و بقیه برنامه را از اون آدرس اجرا کنم این رو چطور انجام بدم ؟

                    دیدگاه


                      #11
                      پاسخ : جابجایی آدرس شروع در IAR

                      یک سوال

                      آیا شما میخواهید بردار وقفه ها را هم جابجا کنید ؟


                      فرض کن تونستید سورس تون را از آدرس 0x2000 نوشتید . حالا برای این جای خالی چه برنامه ای دارید ؟

                      نوشته اصلی توسط داریوش عباسی
                      می خوام توی برنامه به یک آدرس خاص jump کنم و بقیه برنامه را از اون آدرس اجرا کنم این رو چطور انجام بدم ؟
                      خوب جامپ کنید . با سی برنامه مینویسید یا اسمبلی ؟ تو اسمبلی خیلی راحت بنویسید b 0x520 تو سی هم فکر کنم کلا موضوع منتفیه چون اصلا معنی نداره .
                      تنها موردی که همه آدما یقین دارن خدا در حقش زیاد لطف کرده
                      داشتن عقله زیادتر از دیگر آدم ها است

                      دیدگاه


                        #12
                        پاسخ : جابجایی آدرس شروع در IAR

                        وقت بخیر

                        کد:
                        #pragma location=0xc60
                        __root __flash char insdat[]={"DATE : 93.06.05"};
                        با قرار دادن این پیش دستور میتونید آدرس قرار گرفتن کد رو در iar تغییر بدید !!.

                        دیدگاه


                          #13
                          پاسخ : جابجایی آدرس شروع در IAR

                          نوشته اصلی توسط taktrashe
                          وقت بخیر

                          کد:
                          #pragma location=0xc60
                          __root __flash char insdat[]={"DATE : 93.06.05"};
                          با قرار دادن این پیش دستور میتونید آدرس قرار گرفتن کد رو در iar تغییر بدید !!.
                          آقا یک کم توضبح بدید این را دقیقا کجای برنامه بذارم .

                          دیدگاه


                            #14
                            پاسخ : جابجایی آدرس شروع در IAR

                            نوشته اصلی توسط داریوش عباسی
                            آقا یک کم توضبح بدید این را دقیقا کجای برنامه بذارم .
                            دوست من روشی که taktrashe گفتند برای قرار دادن یک متغیر در آدرس دلخواهی در فلش هست و برای کار شما مناسب نیست.
                            شما باید فایل ICF کامپایلر رو تغییر بدی (IAR).
                            linker<-options<-project تب config.
                            هم میتونی آدرس شروع برنامه رو تغییر بدی و هم آدرس شروع اینتراپت رو.

                            دیدگاه


                              #15
                              پاسخ : جابجایی آدرس شروع در IAR

                              آقا دست شما درد نکنه راه حلشه همین بود تست کردم و درست کار می کنه و فعلا باهاش مشکلی ندارم
                              حالا یک سوال دیگه
                              اگه توی خود برنامه بخوام حالا به یک آدرس خاص jump کنم چکار باید بکنم

                              دیدگاه

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