اطلاعیه

Collapse
No announcement yet.

نوشتن در eeprom

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

    نوشتن در eeprom

    سلام
    دوستان چطوری میشه چند بایت داخل eeprom بنویسم و بعد بازیابیش کنم؟
    فیوزبیت خاصی هم داره؟
    اصلا چندبار میشه داخلش نوشت و پاک کرد؟
    (من با زبان c کار میکنم)
    انقدر احمق نیستم که فکر کنم کارم تموم شده

    #2
    پاسخ : نوشتن در eeprom

    سلام دادا.

    کافیه قبل از تعریف متغیر کلمه EEPROM رو بنویسی. مثلاً:
    eeprom int i;
    در این صورت مقدار متغیر i توی eeprom ذخیره میشه. برا خوندن هم مقدار i رو بخون. به همین سادگی.

    دقیقاً یادم نیست چند صد هزار بار میشه توش ریخت!!! اما زیاده. :agree:
    تشکر لازم نیست!

    دیدگاه


      #3
      پاسخ : نوشتن در eeprom

      معمولا طبق اغلب دیتا شیت های که من دیدم تعداد ماکزیمم نوشتن با چیزی نزدیک 100 هزار بار میرسه. البته این میزان نوشتن برای فلش بین 1 و 10 هزار بار متغیره. ولی یکی از چیزایی که عمر ایپرام رو زیاد میکنه اینه که هر بایت قبل از نوشتن چک بشه که آیا مقدار موجود در ایپرام با بایتی که قراره نوشته بشه مغایرت داره و اگر تفاوتی نداره نوشتن انجام نشه. چون نوشتن در ایپرام خیلی کند هست.
      این فرمی هم که دوست عزیزمون قید کردن برای کد ویژن هست. در WinAVR با توابع نوشتن و خوندن ایپرام باید کار کنین.

      دیدگاه


        #4
        پاسخ : نوشتن در eeprom

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

        یه سوال دیگه: فرض کنیم که به روی یه آدرس از eeprom صدهزار بار رو نوشتیم حالا وقتی میخوایم از اون آدرس بخونیم میکرو میتونه از اون آدرس بخونه؟ هنگ نمیکنه؟ یا یک مقدار مثلا 0xff رو برمیگردونه؟ کسی اینو واقعا تست کرده؟

        ممنون
        "در عجبم از مردمی که خود زیر شلاق ظلم و ستم زندگی می کنند و بر حسینی می گریند که آزادنه زیست" شریعتی
        در جهان روشنایی هایی وجوددارد که در عمیق ترین ظلمات نهانند.

        دیدگاه


          #5
          پاسخ : نوشتن در eeprom

          نوشته اصلی توسط tictactoe
          سلام. میشه کمی بیشتر توضیح بدین؟ وقتی که داریم یه مقدار جدید روی همون آدرس قبلی مینویسیم خب معلومه که با مقدار قبلی تفاوت داره.

          یه سوال دیگه: فرض کنیم که به روی یه آدرس از eeprom صدهزار بار رو نوشتیم حالا وقتی میخوایم از اون آدرس بخونیم میکرو میتونه از اون آدرس بخونه؟ هنگ نمیکنه؟ یا یک مقدار مثلا 0xff رو برمیگردونه؟ کسی اینو واقعا تست کرده؟

          ممنون
          با سلام
          می توان از آن محل خواند و آخرین اطلاعات ضبط شده ، در یافت می شود.( چه درست ضبط شده باشد چه غلط ، و چه از حداکثر تعداد ضبط کردن عبور کنیم )
          با سپاس
          گشتی در لاله زار
          http://www.eca.ir/forum2/index.php?topic=76138.0

          http://www.eca.ir/forum2/index.php?topic=76141

          دیدگاه


            #6
            پاسخ : نوشتن در eeprom

            معمولا یکی از راههایی که کمک میکنه که بصورت بیشتری اطلاعات رو داخل ایپرام نگهداری کنین استفاده از مکانیسم شناسایی قطع برق هست. یعنی اطلاعات رو تا میشه داخل رم میکرو نگهداری کنین و فقط موقعی که قطع برق رو (یا قطع منبع تغذیه اصلی رو) شناسایی کردین با قطع کارهای اصلی سیستم اطلاعات رو به ایپرام منتقل کنین. چون این مورد قطع برق سیستم ممکنه خیلی کم پیش بیاد پس عملا تعداد نوشتن شما (نسبت به حالت خام فعلی) به مراتب بیشتر میشه. و صد البته در این گونه موارد موارد power saving هم بایستی مد نظر قرار بگیره.

            دیدگاه

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