اطلاعیه

Collapse
No announcement yet.

کامپایلر IAR

Collapse
این موضوع برجسته شده است.
X
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    پاسخ : کامپایلر IAR

    برای دسترسی به بیت ها در آرایه ها از روش های مختلفی می توان استفاده کرد. به عنوان یک نمونه در کد زیر آرایه ای متشکل از 64 بیت در 8 بایت تعریف می شود که بیت های هر آرایه قابل دسترسی هستند:

    کد:
    typedef struct
     {
     unsigned char bit0:1,
     bit1:1,
     bit2:1,
     bit3:1,
     bit4:1,
     bit5:1,
     bit6:1,
     bit7:1;
     }bit_t;
     bit_t a[8];
     a[0].bit0=0;
     a[0].bit1=1;
     a[1].bit7=1;
     a[7].bit2=0;
    اوژن: به معنای افکننده و شکست دهنده است
    دانایی، توانایی است-Knowledge is POWER
    برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
    وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
    قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
    اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
    ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

    دیدگاه


      پاسخ : کامپایلر IAR

      سلام
      اگر امکان دارد بطور دقیق نحوه تنظیم RSTACK & CSTACK در IAR با توجه به برنامه نوشته شده با ذکر یک مثال توضیح دهید (البته در تاپیک های دیگه توضیح داده شده ولی باز هم بطور کامل مشخص نیست مقدار دقیق آن چگونه مشخص میشود .
      با سپاس

      دیدگاه


        پاسخ : کامپایلر IAR

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

        دیدگاه


          پاسخ : کامپایلر IAR

          میشه منظورتون رو دقیق تر مطرح کنید ؟
          نوشته اصلی توسط طراح
          در جزئیات آن، در هر مرحله حداکثر مصرف RSTACK و CSTACK نمایش داده شده است.
          چیزی که توی فایل map میبینیم اینه (البته توی سطرهای آخر )


          دیدگاه


            پاسخ : کامپایلر IAR

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

            دیدگاه


              پاسخ : کامپایلر IAR

              یه سری کتابخونه داشتم تو IAR 5.40 ولی الآن تو IAR 6.10 کار نمیکنه
              برای هر تابع مینویسه:
              unidentified external"اسم تابع"

              بعد ورودی خروجی هاش رو کم و زیاد میزنیم به اون گیر میده
              مشکل چیه؟

              دیدگاه


                پاسخ : کامپایلر IAR

                نوشته اصلی توسط شهریار رجب زاده
                یه سری کتابخونه داشتم تو IAR 5.40 ولی الآن تو IAR 6.10 کار نمیکنه
                برای هر تابع مینویسه:
                unidentified external"اسم تابع"

                بعد ورودی خروجی هاش رو کم و زیاد میزنیم به اون گیر میده
                مشکل چیه؟
                همین الآن فهمیدم باید داخل compiler فایل ها رو add کنیم

                دیدگاه


                  پاسخ : کامپایلر IAR

                  با سلام
                  اگر امکان دارد
                  #define TC_EnableEventDelay( _tc ) ( (_tc)->CTRLD |= TC0_EVDLY_bm )

                  توضیح دهید که چه معنی دارد ؟

                  دیدگاه


                    پاسخ : کامپایلر IAR

                    این یک ماکرو است
                    یک ماکرو تابع نیست
                    یعنی شما وقتی از TC_EnableEventDelay( _tc ) استفاده میکنی دقیقا یعنی از این ریجستر ( (_tc)->CTRLD |= TC0_EVDLY_bm استفاده کردی
                    هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
                    بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
                    میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

                    تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

                    دیدگاه


                      پاسخ : کامپایلر IAR

                      با سپاس لطفا در مورد خود این علائم <- توضیح دهید .

                      دیدگاه


                        پاسخ : کامپایلر IAR

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

                        دیدگاه


                          پاسخ : کامپایلر IAR

                          آیا کتابخانه فونت lcd گرافیکی (بجز 5*8 ترجیحا IAR) وجود دارد ؟

                          دیدگاه


                            پاسخ : کامپایلر IAR

                            اگر امکان دارد در مورد uint8_t a یا uint16_t i توضیح دهید که چه نوع متغییر و تعریفی می باشد ؟

                            دیدگاه


                              پاسخ : کامپایلر IAR

                              نوشته اصلی توسط mehdi210
                              آیا کتابخانه فونت lcd گرافیکی (بجز 5*8 ترجیحا IAR) وجود دارد ؟
                              برای فونت 8x8 کتابخانه های مختلفی وجود دارد که با تغییراتی قابل استفاده برای XMEGA است. در آینده سعی می کنم یک کتابخانه مناسب را در این مورد بازنویسی کنم.

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

                              دیدگاه


                                پاسخ : کامپایلر IAR

                                با درود
                                من یک ارایه ثابت تعریف کردم در iar
                                به شکل زیر
                                کد:
                                const char id[7]="100003";
                                حالا میخوام این ارایه رو از خارج iar و بدونه کامپایله مجدد تغییر بدم
                                فایل هگز تولیدی رو باز کردم ولی چیزی شبیه به مقدار متغییر پیدا نکردم جز دو مورد که عینا در کد تکرار شده و فک نمی کنم که مقدار برنامه باشه
                                کد:
                                1B[color=red]100003[/color]8720E004
                                حال راه چاره چیست ؟
                                هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
                                بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
                                میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

                                تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

                                دیدگاه

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