اطلاعیه

Collapse
No announcement yet.

استفاده از حافظه فلش میکرو -stm32 EEPROM_Emulation

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

    استفاده از حافظه فلش میکرو -stm32 EEPROM_Emulation

    با سلام خدمت همه دوستان

    ببخشید که مزاحمتون میشم

    سوالی که داشتم در رابطه با حافظه فلش هستش. من با استفاده از کتابخونه خود ST دارم داده های مورد نیازم رو داخل حافظه فلش مینویسم (مجبورم از این حافظه استفاده کنم و امکان استفاده حافظه ای مثل SRAM یا EEPROM رو ندارم) حالا مشکلی که دارم اینه که داده ای که باید بنویسم 1200 بایت وقتی که عمل write و read رو انجام میدم فقط تعدادی از این داده ها به درستی نوشته و خوانده میشوند.
    در حد 50 بایت این عمل بدرستی انجام میشه ولی حجم دیتا بالای 200 میره اصلا درست کار نمیکنه.

    تابع write مورد استفاده:


    VirtAddVarTab1 = 0x5555;
    for ( i1 = 0; i1 <1200; i1++)
    {
    ee_status = EE_WriteVariable(VirtAddVarTab1,test_data[i1]);


    VirtAddVarTab1 +=4;
    if( ee_status != EE_OK) Error_Handler();

    }
    تابع Read مورد استفاده:


    VirtAddVarTab1 = 0x5555;
    for (int i1 = 0; i1 <1200; i1++)
    {
    ee_status = EE_ReadVariable(VirtAddVarTab1, &temp);
    Raw_reflex_ECHO1[i1] = temp;
    VirtAddVarTab1 += 4;
    }


    ممنون میشم اگه راهنماییم کنید که ایا نکته خاصی برای ذخیره سازی با حجم بالا نیاز هست یا خیر؟


    پیشاپیش از راهنماییتون تشکر میکنم.

    #2
    پاسخ : استفاده از حافظه فلش میکرو -stm32 EEPROM_Emulation

    یادمه وقتی من ازش استفاده کردم یه فایل PDF راهنما هم داشت. شما نخوندیش؟(همونجا که دانلود کردی باید باشه) هدر فایل ها رو نگاه نکردی؟ این کد به صورت پیش فرض فکر نکنم بیشتر از 2 پیج ایجاد کنه. اگه درست یادم بیاد این کد به روش ژورنال هم کار میکنه. وقتی فکر کنم میزان داده ها زیاد بشه میاد روی آدرس اولی که تعریف شده و دوباره از اونجا شروع میکنه. اگه مشکل پیچیده هستش برنامه رو دیباگ کن ببین چه خبره.

    دیدگاه


      #3
      پاسخ : استفاده از حافظه فلش میکرو -stm32 EEPROM_Emulation

      والا مثالش و PDF رو نگاه کردم واینکه هدر فایل رو یه نگاه جزئی کردم، متاسفانه بدلیل کمبود وقت در این پروژه و فقط این مونده بیشتر دنبال این بودم راهش بندازم تا یاد بگیرم و بفهمم که اشتباه هم هست.
      دیباگ که میکردم دقیقا اخرین مقدار ظاهرا فقط نوشته میشه مطابق با حرف شما احتمالا روی همون ادرس نوشته احتمالا.
      مثال خود ST هم اومده تویه ادرس دائما خونده و نوشته

      دیدگاه


        #4
        پاسخ : استفاده از حافظه فلش میکرو -stm32 EEPROM_Emulation

        نوشته اصلی توسط روح الامین نمایش پست ها
        یادمه وقتی من ازش استفاده کردم یه فایل PDF راهنما هم داشت. شما نخوندیش؟(همونجا که دانلود کردی باید باشه) هدر فایل ها رو نگاه نکردی؟ این کد به صورت پیش فرض فکر نکنم بیشتر از 2 پیج ایجاد کنه. اگه درست یادم بیاد این کد به روش ژورنال هم کار میکنه. وقتی فکر کنم میزان داده ها زیاد بشه میاد روی آدرس اولی که تعریف شده و دوباره از اونجا شروع میکنه. اگه مشکل پیچیده هستش برنامه رو دیباگ کن ببین چه خبره.
        سلام من هم به مشکل مشابهی برخورد کردم اگه کسی راه*حلی پیدا کرده لطفا راهنمایی کنه .
        دعا پشتِ دعا براي آمدنت
        گناه پشــــــتِ گناه براي نيامــدنت
        دل درگــير ، مــيان اين دو انتخــــــــــــــــــــاب
        کــــــــــــــدام آخر ؟ آمـــدنـت يا نيامدنـــــــــــــــــــــــت

        دیدگاه

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