اطلاعیه

Collapse
No announcement yet.

دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

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

    دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

    سلام
    در این پست قصد دارم به صورت مختصر در مورد دیباگ کردن برنامه های نوشته شده با کدویژن، توسط اتمل استودیوی 6 به بالا توضیح بدم.
    مستقیم میرم سر اصل مطلب.
    برای این کار باید یکی از نسخه ای اتمل استودیو 6.1 یا 7 رو نصب داشته باشید و همچنین یک نسخه از کدویژن ترجیحا 3.07 به بالا.
    در مرحله ی اول تو کد ویژن طبق روال قبلش یه پروژه ایجاد میشود.
    برای این کار file->new->project و بعد استفاده از کدویزازد تائید بشه و همچنین سری mega(بسته به نیاز) رو انتخاب کرده تا کدویزارد بالا بیاد.
    حالا نوبت تنظیمات، به عنوان مثال من 4 بیت آخر PORTA رو به عنوان خروجی تعیین کردم.
    بعد از این که کد خودتون رو Generate کردید و همه چیز save شد پروژه رو یه دور کامپایل کنید تا مطمئن بشید که ارور نداشته باشه.
    حالا نوبت به اتمل استودیو میرسه.
    بنده این کار ها رو، روی هر دو ورژن 6.1 و 7 انجام دادم و برای هردوشون یکسانه و درست هم جواب گرفتم.

    بعد از این که اتمل استودیو رو run کردید. به مسیر زیر بروید:
    File->Open->Open object file for debugging
    بعد از انجام عمل بالا پنجره Project Creation Wizard باز میشود.
    در این پنجر در قسمت Select the object file to debugging به ادرس پروژه برید و فایل با پسوند cof یا obj یا dbg رو انتخاب کنید ما اینجا از پسوند cof استفاده میکنیم به عنوان مثال test.cof.
    بعداز انتخاب فایل مورد نظر روی باتن next کلیک و به مرحله بعد بروید.
    بعد از این که next رو زدید به مرحله device selection میرسیم این قسمت برای انتخاب نوع پردازنده هست و برای انتخاب پردازنده میتوان در قسمت device family خانواده پردازنده رو انتخاب کرد برای مثال سری ATmega برای برای همون اتمگا هست. خیلی راحت میتونید تو این پنجره پردازنده خودتونو پیدا کنید و انتخابش کنید من در این مثال از مگا 32 استفاده کردم پس ATmega32 رو انتخاب میکنم.توجه! چیپ انتخاب شده در این قسمت باید همان چیپ استفاده شده در کدویژن باشد.
    بعد از این که چیپ رو انتخاب کردید روی باتن finish کلیک کنید تا solution مورد نظر ساخته شود.
    حال اگر به قسمت Solution Explorer در قمت سمت راست توجه کنید solution ایجاد شده و فایل سی پروژه شما در پنجره Solution Explorer الحاق شده است.
    بروی فایل سی(test.c) کلیک کنید تا وارد کد ها شوید.
    حال برای اینکه بتوان پروژه رو دیباگ کرد باید به اتمل استودیو یک دیباگر یا سیمولاتور معرفی کرد برای این کار:
    [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

    #2
    پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

    از منوی Project اخرین گزینه یعنی Properties یا کلید های alt+F7 رو بزنید. در پنجره باز شده در سربرگ Tool و قسمت Select Debugger/programmer گزینه Simulator رو بزنید و پنجره رو ببنید.حالا alt+F5 رو بزنید و دیباگ کنید.
    امیدوارم مفید بوده باشه.
    [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

    دیدگاه


      #3
      پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

      نوشته اصلی توسط آرمان آروند
      سلام
      در این پست قصد دارم به صورت مختصر در مورد دیباگ کردن برنامه های نوشته شده با کدویژن، توسط اتمل استودیوی 6 به بالا توضیح بدم.
      مستقیم میرم سر اصل مطلب.
      برای این کار باید یکی از نسخه ای اتمل استودیو 6.1 یا 7 رو نصب داشته باشید و همچنین یک نسخه از کدویژن ترجیحا 3.07 به بالا.
      در مرحله ی اول تو کد ویژن طبق روال قبلش یه پروژه ایجاد میشود.
      برای این کار file->new->project و بعد استفاده از کدویزازد تائید بشه و همچنین سری mega(بسته به نیاز) رو انتخاب کرده تا کدویزارد بالا بیاد.
      حالا نوبت تنظیمات، به عنوان مثال من 4 بیت آخر PORTA رو به عنوان خروجی تعیین کردم.
      بعد از این که کد خودتون رو Generate کردید و همه چیز save شد پروژه رو یه دور کامپایل کنید تا مطمئن بشید که ارور نداشته باشه.
      حالا نوبت به اتمل استودیو میرسه.
      بنده ان کار ها رو، روی هر دو ورژن 6.1 و 7 انجام دادم و برای هردوشون یکسانه و درست هم جواب گرفتم.

      بعد از این که اتمل استودیو رو run کردید. به مسیر زیر بروید:
      File->Open->Open object file for debugging
      بعد از انجام عمل بالا پنجره Project Creation Wizard باز میشود.
      در این پنجر در قسمت Select the object file to debugging به ادرس پروژه برید و فایل با پسوند cof یا obj یا dbg رو انتخاب کنید ما اینجا از پسوند cof استفاده میکنیم به عنوان مثال test.cof.
      بعداز انتخاب فایل مورد نظر روی باتن next کلیک و به مرحله بعد بروید.
      بعد از این که next رو زدید به مرحله device selection میرسیم این قسمت برای انتخاب نوع پردازنده هست و برای انتخاب پردازنده میتوان در قسمت device family خانواده پردازنده رو انتخاب کرد برای مثال سری ATmega برای برای همون اتمگا هست. خیلی راحت میتونید تو این پنجره پردازنده خودتونو پیدا کنید و انتخابش کنید من در این مثال از مگا 32 استفاده کردم پس ATmega32 رو انتخاب میکنم.توجه! چیپ انتخاب شده در این قسمت باید همان چیپ استفاده شده در کدویژن باشد.
      بعد از این که چیپ رو انتخاب کردید روی باتن finish کلیک کنید تا solution مورد نظر ساخته شود.
      حال اگر به قسمت Solution Explorer در قمت سمت راست توجه کنید solution ایجاد شده و فایل سی پروژه شما در پنجره Solution Explorer الحاق شده است.
      بروی فایل سی(test.c) کلیک کنید تا وارد کد ها شوید و بعد از اینکه اطمینان حاصل کردید.
      حال برای اینکه بتوان پروژه رو دیباگ کرد باید به اتمل استودیو یک دیباگر یا سیمولاتور معرفی کرد برای این کار:

      از منوی Project اخرین گزینه یعنی Properties یا کلید های alt+F7 رو بزنید. در پنجره باز شده در سربرگ Tool و قسمت Select Debugger/programmer ،
      اقا ارمان ممنون
      مشکلم حل شد.حالا چند تا سوال .تو atmel stdio برای چیزهایی مثل LCD و یا اینکه مثلا اگر فلان پایه یک شد کار خاصی انجام بده را میشه شبیه سازی کرد یا باید دیگه تو پروتیوس انجام داد(پایه که گفتم منظورم استفاده از اینتراپ نیست.منظورم این هست که مثلا یک پایه را ورودی تعریف کنیم .حالا اگر این پایه صفر شد یه سری دستورات خاصی را انجام بده)

      دیدگاه


        #4
        پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

        بله میشه یه کارهایی کرد به عنوان مثال میخوای وقتی پین A یک شد مثلا پورت B رو معکوس کنه.
        برای این کار وقتی که دارید دیباگ رو انجام میدید به منوی Debug->Windows->I/O برید تا پنجره IO باز بشه، اگه نگاه کنید تو این پنجره تمام امکانات از قبیل تایمر ها و پورت ها و... وجود داره
        حا شما میخواید عملیات کلید زنی رو شبیه سازی کنید مثلا همون PINA.0 اگه یک شد PORTB رو معکوس کنه.
        برای این کار در پنجره IO گزینه PORTA رو انتخاب کنید،همانطور که میبینید این پنجره دو قسمت هست قسمت بالایی که مربوط به نام IO ها و قسمت پائینی مربوط به مقادیر و رجیستر ها و ... هست.
        حال که PORTA رو انتخاب کردید در قسمت پائین سه پارامتر رو میبینید که شامل PIN و DDR و PORT هست و هر کدامشون به اندازه هشت بیت مقدار دارند وبرای هر مقدار یه مربع در نظر گرفته شده. حالا برای کلید زنی کافیست روی مربع بیت مورد نظر کلیک کنید تا رنگش عوض بشه و این یعنی شما کلید رو زدید و بعد از این کار بلافاصله به روی PORTB برید و مقادیرشو ببیندید.
        [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

        دیدگاه


          #5
          پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

          با سلام
          پرو گرمر من اینه :
          http://javanelec.com/productsDetails.aspx?id=12237
          و نمیتونم دیباگ کنم فکر کنم نداره نه ؟
          [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

          دیدگاه


            #6
            پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

            آقا یکی بگه من چجوری با پروگرمر multi avr میشه برنامه c رو ، ریخت روی میکرو ؟
            :angry: :angry: :angry:
            یکی دو هفته بیشتر نیست که c یاد گرفتم
            ما زنده به آنیم که آرام نگیـریم
            موجـیم که آسودگی ما عدم ماست...

            دیدگاه


              #7
              پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

              نوشته اصلی توسط حامد رحیمی
              با سلام
              پرو گرمر من اینه :
              http://javanelec.com/productsDetails.aspx?id=12237
              و نمیتونم دیباگ کنم فکر کنم نداره نه ؟
              سلام
              متاسفانه پروگرمر شما ظاهرا این قابلیت رو نداره من خودم این پروگرامر رو ندارم برای همین مطمئن نیستم ولی منوال ها رو خوندم حرفی از این بابت نزده بود حتی تو منوال خود اتمل استودیو 7 تو قسمت اختصارات برای این پروگرمر فقط زده p که یعنی programmer اگه d رو هم میزد به این معنی بود که قابلیت دیباگ هم داره.حالا شما برای اطمینان بیشتر یه سرچ بزنید.
              یه نگاه به قابلیت های این ها هم بندازید جالبند:
              http://www.roboeq.ir/products/detail/%D9%BE%D8%B1%D9%88%DA%AF%D8%B1%D8%A7%D9%85%D8%B1%2 0%D9%88%20%D8%AF%DB%8C%D8%A8%D8%A7%DA%AF%D8%B1%20% 20ATMEL%20%D8%A7%D8%B5%D9%84%20ATMEL-ICE%20PCBA/

              http://www.roboeq.ir/products/detail/%D9%BE%D8%B1%D9%88%DA%AF%D8%B1%D8%A7%D9%85%D8%B1%2 0%D9%88%20%D8%AF%DB%8C%D8%A8%D8%A7%DA%AF%D8%B1%20A TMEL%20%D8%A7%D8%B5%D9%84%20ATMEL-ICE/
              [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

              دیدگاه


                #8
                پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                نوشته اصلی توسط ALI. j
                آقا یکی بگه من چجوری با پروگرمر multi avr میشه برنامه c رو ، ریخت روی میکرو ؟
                :angry: :angry: :angry:
                یکی دو هفته بیشتر نیست که c یاد گرفتم
                مشکل شما دقیقا چیه؟
                اگه میخواید تو استودیو این کار رو بکنید این پروگرمر جزء موارد تحت پوشش avrdude نیست(تا جایی که من دیدم) و شما باید از همون نرم افزار که فروشگاه قرار داده استفاده کنید.
                [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

                دیدگاه


                  #9
                  پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                  نوشته اصلی توسط آرمان آروند
                  سلام
                  متاسفانه پروگرمر شما ظاهرا این قابلیت رو نداره من خودم این پروگرامر رو ندارم برای همین مطمئن نیستم ولی منوال ها رو خوندم حرفی از این بابت نزده بود حتی تو منوال خود اتمل استودیو 7 تو قسمت اختصارات برای این پروگرمر فقط زده p که یعنی programmer اگه d رو هم میزد به این معنی بود که قابلیت دیباگ هم داره.حالا شما برای اطمینان بیشتر یه سرچ بزنید.
                  یه نگاه به قابلیت های این ها هم بندازید جالبند:
                  http://www.roboeq.ir/products/detail/%D9%BE%D8%B1%D9%88%DA%AF%D8%B1%D8%A7%D9%85%D8%B1%2 0%D9%88%20%D8%AF%DB%8C%D8%A8%D8%A7%DA%AF%D8%B1%20% 20ATMEL%20%D8%A7%D8%B5%D9%84%20ATMEL-ICE%20PCBA/

                  http://www.roboeq.ir/products/detail/%D9%BE%D8%B1%D9%88%DA%AF%D8%B1%D8%A7%D9%85%D8%B1%2 0%D9%88%20%D8%AF%DB%8C%D8%A8%D8%A7%DA%AF%D8%B1%20A TMEL%20%D8%A7%D8%B5%D9%84%20ATMEL-ICE/
                  فقط یک قاب و تغیر 2.5 برابری قیمت عجیبه
                  :eek: :eek:
                  [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

                  دیدگاه


                    #10
                    پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                    نوشته اصلی توسط آرمان آروند
                    مشکل شما دقیقا چیه؟
                    اگه میخواید تو استودیو این کار رو بکنید این پروگرمر جزء موارد تحت پوشش avrdude نیست(تا جایی که من دیدم) و شما باید از همون نرم افزار که فروشگاه قرار داده استفاده کنید.
                    نه با کد ویژن کار می کنم
                    پروگرمری که من دارم محصول eca هست
                    وقتی که وصل می کنم شناسایی نمیکنه
                    پروگرمر سالمه چون با همون برنامه های بسکام رو هم پروگرم می کنم ...
                    ما زنده به آنیم که آرام نگیـریم
                    موجـیم که آسودگی ما عدم ماست...

                    دیدگاه


                      #11
                      پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                      در بخش نکات فنی این پروگرمر در سایت، به پروگرام کردن مستقیم در کدویژن اشاره نشده است. و باید از progisp 1.7 و ChiliProg استفاده کرد.(ظاهرا).
                      مثل اینکه این پروگرمر همون usbasp هست اگه اینطور باشه میشه توسط avrdude پروگرم کرد.
                      [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

                      دیدگاه


                        #12
                        پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                        نوشته اصلی توسط آرمان آروند
                        در بخش نکات فنی این پروگرمر در سایت، به پروگرام کردن مستقیم در کدویژن اشاره نشده است. و باید از progisp 1.7 و ChiliProg استفاده کرد.(ظاهرا).
                        مثل اینکه این پروگرمر همون usbasp هست اگه اینطور باشه میشه توسط avrdude پروگرم کرد.
                        بله . usbasp هست.
                        این avrdude چی هست ؟
                        ما زنده به آنیم که آرام نگیـریم
                        موجـیم که آسودگی ما عدم ماست...

                        دیدگاه


                          #13
                          پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                          AVRDUDE یک ابزار برای دانلود / پلود / و دستکاری ROM و EEPROM محتویات میکروکنترلرهای AVR با استفاده از روش برنامه نویسی در سیستم است. که توسط Brian S. Dean ابداع شد و در اختیار عموم قرار گرفته شد
                          می توان در هر سیستم عاملی توسط این ابزار به پروگرم کردن و ... برای avr پرداخت.
                          برنامه نویسان حرفه ایی از ابزار در خط فرمان استفاده میکنند که برای راحتی کار،این ابزار به صورت گرافیکی هم موجود میباشد.
                          مثلا اگه کسی بخواد که با همین usbasp به طور مستقیم در اتمل استودیو پروگرام کنه، با نصب این ابزار و معرفی آن به استودیو و همچنین تعریف کامند های مخصوص می تواند به این کار بپردازد.
                          برای مطالعه بیشتر:
                          http://www.ladyada.net/learn/avr/avrdude.html
                          http://www.nongnu.org/avrdude/
                          https://learn.adafruit.com/introducing-trinket/programming-with-avrdude

                          اینم از نحوه پروگرم کردن با usbasp در کدویژن:
                          https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=we b&cd=1&cad=rja&uact=8&sqi=2&ve d=0ahUKEwj7jOiuisrLAhXrIpoKHXx_BZ0QFggcMAA&url =http%3A%2F%2Fwww.hpinfotech.ro%2Fusbasp.pdf&u sg=AFQjCNEIoNNexTJshWq-PY-IXdF7adqYPA&sig2=QC8FjYfyJK36LF907yZPfg

                          ولی در کل استفاده از نرم افزار هایی که خود فروشگاه قرار داده راحتره و شایدم به صرفه تر باشه.
                          [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

                          دیدگاه


                            #14
                            پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                            نوشته اصلی توسط آرمان آروند
                            از منوی Project اخرین گزینه یعنی Properties یا کلید های alt+F7 رو بزنید. در پنجره باز شده در سربرگ Tool و قسمت Select Debugger/programmer گزینه Simulator رو بزنید و پنجره رو ببنید.حالا alt+F5 رو بزنید و دیباگ کنید.
                            امیدوارم مفید بوده باشه.
                            سلام برای من تو قسمت Select Debugger/programmer گزینه Simulator رو نداره چه طور میتونم اضافه کنم ورژن اتمل استدیو من 6 هست تو قسمت ساپورت میکرو من avr Simulator ذکر شده ممنون از کمکتون
                            واسه من یه حالتی مثل عکس زیر داره
                            سقراط : دانش من بدانجایی رسید که فهمیدم هیچ نمیدانم.

                            دیدگاه


                              #15
                              پاسخ : دیباگ برنامه های کدویژن توسط atmelstudio6 به بالا

                              سلام
                              پردازندتون avr32 ها هستند؟
                              یک پروژه ساده از اول بسازید ببینید همین مشکل رو دارید.
                              [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

                              دیدگاه

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