اطلاعیه

Collapse
No announcement yet.

اطلاعاتی که در EEPROM ریخته می شه

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

    اطلاعاتی که در EEPROM ریخته می شه

    سلام.
    یه سوال، ما وقتی یه برنامه رو برای AVR می نویسیم (مثلاً توی کدویژن) و کامپایلش می کنیم، به ما یه فایل hex و یه سری فایل دیگه مثل bin و cof و از انیا میده. که برای پروگرم کردن فقط به فایل hex نیاز داریم.
    این فایل hex هم که روی flash ریخته می شه.
    سوال من اینه که متوجه شدم برنامه هایی هم هست که روی E2PROM ریخته می شه. می خوام بدونم چه جور برنامه ای رو روی E2PROM می ریزن. آیا می شه همین hex ها رو هم روی E2PROM ریخت یا نه؟
    با تشکر :nerd: :read:
    دانش فنی تا به عمل تبدیل نشده، ذره ای ارزش نداره. اما بعضی وقت ها باید از دانش برای باز کردن مرزهای جدیدی در علم استفاده کرد، نه اینکه اونها رو صرفاً فقط به عمل تبدیل کرد.

    #2
    پاسخ : اطلاعاتی که در EEPROM ریخته می شه

    ایپرام فقط حاوی داده هست. اگر برنامه شما حاوی اطلاعات اولیه برای داخل ایپرام باشه معمولا کامپایلرهایی مثل winavr اطلاعات اولیه ایپرام رو درون فایلی به فرم hex مثلا به اسم .eep ذخیره میکنن که شما میتونین این فایل هگز رو روی ایپرام میکرو بریزین.

    دیدگاه


      #3
      پاسخ : اطلاعاتی که در EEPROM ریخته می شه

      همون طور که قبلا هم خدمتتون گفته بودم، نمیشه HEX مربوط به Flash رو تو E2PROM ریخت.
      توضیحات رضا آقا کامل بود.

      دیدگاه


        #4
        پاسخ : اطلاعاتی که در EEPROM ریخته می شه

        نوشته اصلی توسط reza_agha
        ایپرام فقط حاوی داده هست. اگر برنامه شما حاوی اطلاعات اولیه برای داخل ایپرام باشه معمولا کامپایلرهایی مثل winavr اطلاعات اولیه ایپرام رو درون فایلی به فرم hex مثلا به اسم .eep ذخیره میکنن که شما میتونین این فایل هگز رو روی ایپرام میکرو بریزین.
        مرسی از توضیحاتتون.
        این داده ها رو یعنی من مثلاً در حین برنامه نوشتن بریزم توی E2PROM؟
        دانش فنی تا به عمل تبدیل نشده، ذره ای ارزش نداره. اما بعضی وقت ها باید از دانش برای باز کردن مرزهای جدیدی در علم استفاده کرد، نه اینکه اونها رو صرفاً فقط به عمل تبدیل کرد.

        دیدگاه


          #5
          پاسخ : اطلاعاتی که در EEPROM ریخته می شه

          eeprom هم یه حافظه هست. مانند فلش . اما یه سری تفاوت ها داره که یکیش اینه که با قطع برق، اطلاعاتش ماندگاره.

          معمولا از eeprom زمانی استفاده میشه که یه کاربر بخواد مادامی که میکرو کار میکنه یه چیزی رو تغییر بده. بعنوان مثال یه برنامه قفل الکتریکی رو در نظر بگیر. فرض کن که میخوای پسورد رو عوض کنی. اگه بخوای اونو توی flash میکرو تغییر بدی باید میکرو پروگرام بشه. اما اگه بخوای در حین کارکردن میکرو تغییر کنه اونو توی eeprom میریزی. محتویات eeprom هم میشه همانند برنامه میکرو پروگرام بشه. مثلاً یه سری اطلاعت داری و میخوای اونو بریزی توی میکرو. برای این کار میتونی مستقیماً زمان پروگرام کردن اونو بریزی.

          موفق باشی.
          تشکر لازم نیست!

          دیدگاه


            #6
            پاسخ : اطلاعاتی که در EEPROM ریخته می شه

            مرسی از همه دوستان.
            فقط یه سوال دیگه. میشه در حین برنامه نویسی یه سری متغیرها رو توی e2prom ریخت دیگه؟
            میشه بگید با چه دستوری؟
            دانش فنی تا به عمل تبدیل نشده، ذره ای ارزش نداره. اما بعضی وقت ها باید از دانش برای باز کردن مرزهای جدیدی در علم استفاده کرد، نه اینکه اونها رو صرفاً فقط به عمل تبدیل کرد.

            دیدگاه


              #7
              پاسخ : اطلاعاتی که در EEPROM ریخته می شه

              موقع برنامه نویسی شما دو تا تیپ اطلاعات رو توی ایپرام میریزی. یکی اطلاعات اولیه هست که در زمان کامپایل مشخص شده که این اطلاعات رو مثلا winavr داخل یک فایل eep میریزه. و شما بایستی اینرو در زمان پروگرام کردن داخل ایپرام بریزی. اما اگه خواستی اطلاعاتی رو در حین اجرای برنامه یا مثلا قطع برق ولی درهرصورت با اجرای کد داخل ایپرام بریزی کامپایلر تا کامپایلر فرق میکنه. باید به منوال کامپایلرت نگاه کنی. مثلا در بسکام با readeeprom و writeeprom کار میکنی و در winavr با توابع های موجود در هدر eeprom.h

              ضمنا یک فرق اساسی ایپرام با فلش تعداد ماکزیمم دفعاتیه که شما میتونی توش چیزی رو بنویسی. در فلش بین 1000 تا 10000 بار وای در ایپرام حداقل 100000 بار. ضمنا نوشتن در فلش فقط از داخل روتین بوت لودر امکانپذیره. ولی ایپرام رو از هر جایی میشه داخلش چیز نوشت.

              دیدگاه


                #8
                پاسخ : اطلاعاتی که در EEPROM ریخته می شه

                ضمن تایید گفته دوست عزیز در کدویژن در صورتی که قبل از نوع متغیر بنویسی eeprom ، متغیر در اون ذخیره میشه.
                مثلاً:
                char a;
                در اینجا متغیر در flash ذخیره میشه. اما اگه بنویسی

                eeprom char a;
                متغیر در eeprom میشینه.
                تشکر لازم نیست!

                دیدگاه


                  #9
                  پاسخ : اطلاعاتی که در EEPROM ریخته می شه

                  نوشته اصلی توسط iman-63
                  ضمن تایید گفته دوست عزیز در کدویژن در صورتی که قبل از نوع متغیر بنویسی eeprom ، متغیر در اون ذخیره میشه.
                  مثلاً:
                  char a;
                  در اینجا متغیر در flash ذخیره میشه. اما اگه بنویسی

                  eeprom char a;
                  متغیر در eeprom میشینه.
                  -----------------------------------------------------------------

                  دوست عزیز اگر نگاه کرده باشین به "پراگرامر ها" گزینه ای دارد به اسم Program EEPROM ...

                  فرض بر اینکه در برنامه نوسی متغیری را از نوع ایپرام تعریف کرده باشیم(که در اخر کامایلر یک کد هگز تولید کرده ) موقع پراگرام کردن آیا باید گزینه ی مورد نظر(Program EEPROM) را همزمان با Program FLASH انتخواب کنیم ؟

                  ("از کدویژن استفاده میکنم&quot
                  اگر پرواز را باور کنی پرو بال خواهی گرفت .

                  دیدگاه

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