اطلاعیه

Collapse
No announcement yet.

دانلود کردن برنامه آپلود شده روی بردهای آردوینو

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

    دانلود کردن برنامه آپلود شده روی بردهای آردوینو

    دوستان لطفا بفرمایین از چه طریقی میشه برنامه یی که روی یک برد آردوینو آپلود کردیم را دانلودش کنیم. من یه برنامه را روی آردوینو آپلود کردم ولی متاسفانه سورسش را پاک کردم، الان نیاز دارم که به اون کدها دسترسی داشته باشم و تغییراتی را تو برنامه نوشته شده ایجاد کنم. چطوری میتونم کدها را از روی برد دانلود کنم یا چطوری میتونم ویرایششون کنم؟

    #2
    پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

    دوستان لطفا راهنمایی کنید. خیلی واسم مهمه.

    دیدگاه


      #3
      پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

      سلام دوست عزیز
      وقتی شما برنامه ای رو کامپایل میکنی یعنی داری سورس کد (رشته هایی از کاراکتر ها که برای انسان قابل فهم هستند) رو به کد ماشین (تعدادی عدد که برای انسان قابل فهم نیست و یا فهمیدنش خیلی سخت هست و فهمش برای ماشین یا میکرو راحت هست) تبدیل میکنی و هنگامی که شما میکرو یا برد تون رو پروگرام کردی (یعنی برنامتون رو آپلود کردید روی برد) در اصل دارید اون کد ماشین های تولید شده در مرحله ی قبل رو روی بردتون آپلود میکنید.
      حالا با خواندن یا دانلود کردن حافظه ی میکرو شما میتونی به کد های ماشین دست پیدا کنی (چون در اصل کدهای ماشین روی برد آپلود میشه نه خود برنامه ای که شما نوشتی).
      بعد از خواندن کد های ماشین، نرم افزار هایی هستند که میتونند کد ماشین رو به زبان اسمبلی تبدیل کنند (زبان اسمبلی زبانی هست که فهمش برای انسان یکم راحت هست ولی به راحتی زبان c یا c++ نیست).
      البته نرم افزارهایی وجود داره که بتونه کد اسمبلی رو به زبان های سطح بالا تر مثل c تبدیل کنه ولی نکته ای که باید بهش توجه کرد اینه که برنامه ی تبدیل شده اصلا شباهتی به برنامه ی اصلی شما نداره به دو دلیل:
      ۱. اسم تابع ها و متغییر ها با چیزی که شما در برنامه اصلی استفاده کردی تفاوت داره.
      ۲. به دلیل بهینه سازی های که کامپایلر هنگام کامپایل کردن انجام میده، خیلی از کد ها تغییر میکنند.

      شما اگه بجای دانلود کد و دستورالعمل هایی که در بالا گفته شد، یک ریکاوری نصب کنی و فایل پاک شده رو ریکاوری کنی خیلی راحت تر است.
      نمیدونم برنامه ی شما چقدر بزرگ بود ولی برای من به دلیل باگ ادیتور یکی از سورس فایل هام که حدود ۲۵۰۰ خط کد داشت پاک شد به صورتی که قابل ریکاوری هم نبود، بعد از کمی تحقیق دوباره نوشتم، بیشتر از دو روز کار نبرد.

      دیدگاه


        #4
        پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

        نوشته اصلی توسط daryooosh نمایش پست ها
        سلام دوست عزیز
        وقتی شما برنامه ای رو کامپایل میکنی یعنی داری سورس کد (رشته هایی از کاراکتر ها که برای انسان قابل فهم هستند) رو به کد ماشین (تعدادی عدد که برای انسان قابل فهم نیست و یا فهمیدنش خیلی سخت هست و فهمش برای ماشین یا میکرو راحت هست) تبدیل میکنی و هنگامی که شما میکرو یا برد تون رو پروگرام کردی (یعنی برنامتون رو آپلود کردید روی برد) در اصل دارید اون کد ماشین های تولید شده در مرحله ی قبل رو روی بردتون آپلود میکنید.
        حالا با خواندن یا دانلود کردن حافظه ی میکرو شما میتونی به کد های ماشین دست پیدا کنی (چون در اصل کدهای ماشین روی برد آپلود میشه نه خود برنامه ای که شما نوشتی).
        بعد از خواندن کد های ماشین، نرم افزار هایی هستند که میتونند کد ماشین رو به زبان اسمبلی تبدیل کنند (زبان اسمبلی زبانی هست که فهمش برای انسان یکم راحت هست ولی به راحتی زبان c یا c++ نیست).
        البته نرم افزارهایی وجود داره که بتونه کد اسمبلی رو به زبان های سطح بالا تر مثل c تبدیل کنه ولی نکته ای که باید بهش توجه کرد اینه که برنامه ی تبدیل شده اصلا شباهتی به برنامه ی اصلی شما نداره به دو دلیل:
        ۱. اسم تابع ها و متغییر ها با چیزی که شما در برنامه اصلی استفاده کردی تفاوت داره.
        ۲. به دلیل بهینه سازی های که کامپایلر هنگام کامپایل کردن انجام میده، خیلی از کد ها تغییر میکنند.

        شما اگه بجای دانلود کد و دستورالعمل هایی که در بالا گفته شد، یک ریکاوری نصب کنی و فایل پاک شده رو ریکاوری کنی خیلی راحت تر است.
        نمیدونم برنامه ی شما چقدر بزرگ بود ولی برای من به دلیل باگ ادیتور یکی از سورس فایل هام که حدود ۲۵۰۰ خط کد داشت پاک شد به صورتی که قابل ریکاوری هم نبود، بعد از کمی تحقیق دوباره نوشتم، بیشتر از دو روز کار نبرد.
        پس با این اوصاف راهی واسه به دست آوردنش نیست. ولی آیا میشه همون کدهای صفر و یکی که الان روی میکرو هست را دانلود کنم که حداقل بتونم اگر آردوینو خراب شد به همون شکل به یک میکرو دیگه منتقلشون کنم؟ یعنی مساله دو تا شد. یکی دانلود کردن کدها از میکرو و دومی انتقالشون به یه میکرو دیگه.اصلا میشه کدهای صفر و یک را مستقیم روی میکرو آپلود کرد ؟

        دیدگاه


          #5
          پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

          دوستان لطفا راهنمایی کنید

          دیدگاه


            #6
            پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

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

            نوشته اصلی توسط mehdimirzaie نمایش پست ها
            .اصلا میشه کدهای صفر و یک را مستقیم روی میکرو آپلود کرد ؟
            بله میشه (در اصل وقتی شما دارید برنامه ای رو روی بردتون آپلود میکنید دارید همین کار رو انجام میدید)ولی باز ادیتور اردینو این قابلیت رو نداره و بقیه ی ماجرا .....

            دیدگاه


              #7
              پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

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


              بله میشه (در اصل وقتی شما دارید برنامه ای رو روی بردتون آپلود میکنید دارید همین کار رو انجام میدید)ولی باز ادیتور اردینو این قابلیت رو نداره و بقیه ی ماجرا .....
              یعنی رو آردوینو اصلا راهی تداره که این کار را انجام بدم ؟

              دیدگاه


                #8
                پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

                نوشته اصلی توسط mehdimirzaie نمایش پست ها
                یعنی رو آردوینو اصلا راهی تداره که این کار را انجام بدم ؟
                اگه از آردینو منظورت ادیتور (برنامه ای که رو سیستم باز میکنید) اردینو هست، جواب بله هست یعنی راهی نداره.

                شما بردتون رو چطوری پروگرم میکنی؟ بردت مستقیم با کابل یو اس بی به سیستم وصل میشه یا با پروگرامر (دستگاه واسطی بین برد و سیستم) این کار رو انجام میدید؟

                دیدگاه


                  #9
                  پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

                  نوشته اصلی توسط daryooosh نمایش پست ها
                  اگه از آردینو منظورت ادیتور (برنامه ای که رو سیستم باز میکنید) اردینو هست، جواب بله هست یعنی راهی نداره.

                  شما بردتون رو چطوری پروگرم میکنی؟ بردت مستقیم با کابل یو اس بی به سیستم وصل میشه یا با پروگرامر (دستگاه واسطی بین برد و سیستم) این کار رو انجام میدید؟
                  از هر دو روش میتونم وصل کنم.
                  در مورد ادیتور هم که فرمودین، اصراری ندارم که با اون برنامه این کار را بکنم با هر برنامه یا روسی که بشه کار را انجام داد، مشکلی ندارم

                  دیدگاه


                    #10
                    پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

                    نوشته اصلی توسط mehdimirzaie نمایش پست ها
                    دوستان لطفا بفرمایین از چه طریقی میشه برنامه یی که روی یک برد آردوینو آپلود کردیم را دانلودش کنیم. من یه برنامه را روی آردوینو آپلود کردم ولی متاسفانه سورسش را پاک کردم، الان نیاز دارم که به اون کدها دسترسی داشته باشم و تغییراتی را تو برنامه نوشته شده ایجاد کنم. چطوری میتونم کدها را از روی برد دانلود کنم یا چطوری میتونم ویرایششون کنم؟
                    با سلام و احترام
                    اگر برنامه را خودتان روی آردوینو آپلود کرده اید پس قفل نمیباشد و تنها کافیست آی سی را درآورید و بر روی یک پروگرامر قرار دهید و آنرا بخوانید. بعد فایلی که پروگرامر ایجاد میکند را میتوانید بر روی هر میکروی مشابهی مجددا کپی نمایید. و عملکرد آن با برنامه کنونی هیچ تفاوتی نمیکند. ولی توجه داشته باشید که این فایل دیگر قابل ویرایش نمیباشد.
                    راهی برای اینکه مجددا فایل را از روی میکرو به سورس آردوینو تبدیل کنید وجود ندارد.
                    موفق باشید.
                    جدیدترین ویرایش توسط evergreen; ۲۲:۴۳ ۱۴۰۱/۰۹/۲۵.

                    دیدگاه


                      #11
                      پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

                      نوشته اصلی توسط mehdimirzaie نمایش پست ها
                      از هر دو روش میتونم وصل کنم.
                      در مورد ادیتور هم که فرمودین، اصراری ندارم که با اون برنامه این کار را بکنم با هر برنامه یا روسی که بشه کار را انجام داد، مشکلی ندارم
                      همونطور که کاربر evergreen گفت شما باید عمل کنی. اگر برنامه ی مناسب پروگرامرت رو نداری. مدل پروگرامرت در اینترنت سرچ کن و برنامه ی مناسب رو نصب کن. میکرو رو به پروگرامر وصل کن و از داخل برنامه گزینه ی Read رو انتخاب کن. برنامه از روی حافظه ی میکرو خوانده میشه. یا برنامه ی پروگرمر به صورت خودکار از شما محل و نامی برای ذخیره ی برنامه ی خوانده شده میخواد یا اینکه برنامه رو در بافر خودش قرار میده و شما باید اون رو به صورت دستی ذخیره کنید. به هر حال بعد از ذخیره شدن شما فایلی دارید که حاوی کد ماشین هست که میتونید اون رو مستقیم روی میکروی مشابه دیگه پروگرامش کنی (با برنامه ی پروگرامر) یا اون رو به کدهای اسمبلی تبدیل کنی.

                      در مورد ادیتور هم پیشنهاد میکنم ادیتور اردینو رو کنار بزارید و از پلتفرم platformIO روی ادیتور VSCode استفاده کنید. این پلتفرم امکانات خیلی خیلی خوبی برای برنامه نویسی سیستم های جاسازی شده میده و سطح شما رو در برنامه نویسی سیستم های جاسازی شده بالا خواهد برد.

                      دیدگاه


                        #12
                        پاسخ : دانلود کردن برنامه آپلود شده روی بردهای آردوینو

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

                        راه دیگر برای دسترسی به سورس: اگر از نرم افزار آردوینو استفاده کردید وخودتان هم اینکار را روی کامپیوترتان کردید وزمان زیادی هم نگزشته در شاخه temp های ویندوز فایل سورس شما قرار دارد .این سورس بصورت فایلهای مختلف در یک شاخه وبا نامهای تصادفی ونامربوط است.آموزش آن در اینترنت هست.من یکبار تست کردم چون آردوینو کرش کرده بود ومدتی بعد تونستم پیداش کنم.حتی کامنتهای توی سورس هم داشت.دقت کنید پیدا کردین این شاخه temp وفایلهای درون آن قاطی بقیه فایلهای موقتی ویندوز در شاخه و درایو نصب ویندوز کمی سخت است واینکه امکانش هم کم هست.

                        دیدگاه

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