اطلاعیه

Collapse
No announcement yet.

عدم نوشتن در کارت حافظه ؟

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

    عدم نوشتن در کارت حافظه ؟

    سلام
    این نمونه کد خود کدویژن هست برای نوشتن در حافظه
    if ((res=f_write(&file,text,sizeof(text)-1,&nbytes))==FR_OK)
    همه مراحل از جمله باز کردن و خواندن فایل صورت میگیرد بجز این قسمت نوشتن داخل فایل .
    علتش از چی می تونه باشه ؟
    ممنون

    #2
    پاسخ : عدم نوشتن در کارت حافظه ؟

    text یه آرایه هستش که میتونید متنتون رو داخلش بنویسید. بجای سایز هم میتونید تعداد خونه های اون آرایه رو بنویسید.
    کل برنامه رو بذارید تا بهتر بشه کمک کرد.
    www.gam-co.blogsky.com

    دیدگاه


      #3
      پاسخ : عدم نوشتن در کارت حافظه ؟

      سلام
      من راستش یک حافظه 15 هزاری متاسفانه همون اول کار از دست دادم .
      به همین خاطر فعلا روی پروتئوس دارم می رم جلو .
      تکنیهای مربوط به ساخت داریو و این مسائل مجازی رو هم می دونم .
      یک فایل تکس دارم که بازش می کنم و محتویاتش رو میخونم . حالا می خوام تو فایل بنویسم و پاک کنم .
      اصلا تو پروتئوس تست کردید که میشه تو فایل نوشت یا پاک کرد ؟؟
      شاید اصلا نشه این کارو کرد تو پروتئوس!

      دیدگاه


        #4
        پاسخ : عدم نوشتن در کارت حافظه ؟

        توی پروتئوس هم میشه اینکارو انجام داد. من اینکارو کردم. بهتر بود برای بار اول از ماژول micro sd استفاده میکردید.
        www.gam-co.blogsky.com

        دیدگاه


          #5
          پاسخ : عدم نوشتن در کارت حافظه ؟

          با سلام
          چک کنید ماکرو FS_READONLY غیر فعال باشه
          The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

          دیدگاه


            #6
            پاسخ : عدم نوشتن در کارت حافظه ؟

            تشکر
            از کجا چک کنم؟ کجاست؟

            دیدگاه


              #7
              پاسخ : عدم نوشتن در کارت حافظه ؟

              یک ماکرو هست برای خود fatfs که از اسمش معلومه چه میکنه، من تو فایل ffconf.f دارمش، در ضمن اگه سایز نوشتنیتون هم بزرگ باشه میتونه باعث اررور در f_write بشه
              The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

              دیدگاه


                #8
                پاسخ : عدم نوشتن در کارت حافظه ؟

                من نمیبینم کجاست ؟؟؟
                دقیقا کجا می تونه باشه ؟؟
                منظور شما اینه :
                #define FS_READONLY 0
                در ضمن آیا باید از usart هم دراین پروژه استفاده کرد ؟؟

                دیدگاه


                  #9
                  پاسخ : عدم نوشتن در کارت حافظه ؟

                  اره منظورم همونه، که صفره پس مشکل از اون نیست، با یوزارت بهتر میشه دیباگ کرد، اررور f_write چیست؟
                  اه، تازه یادم اومد فایل رو چطور open کردی؟ f_open رو بذار ببینیم. باید F_WRITE تو فلگاش باشه برای نوشتن
                  The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

                  دیدگاه


                    #10
                    پاسخ : عدم نوشتن در کارت حافظه ؟

                    سلام

                    کد:
                    if ((res=f_open(&file,path1,FA_READ))==FR_OK)
                      lcd_putsf("File open hamid");
                    اینم اون چیزی که من برای نوشتن می نویسم و عملی انجام نمیشه :

                    کد:
                    if ((res=f_write(&file,text,sizeof(text)-1,&nbytes))==FR_OK)
                               lcd_putsf("write");

                    دیدگاه


                      #11
                      پاسخ : عدم نوشتن در کارت حافظه ؟

                      اینم ارور در پروتئوس

                      دیدگاه


                        #12
                        پاسخ : عدم نوشتن در کارت حافظه ؟

                        خب دیگه مشکل پیدا شد، شما با FA_READ فایلو باز می کنی، یعنی فایل برای خوندن، برای نوشتن باید FA_WRITE باز کنی، حالا اگه می خوای بتونی هم بخونی هم بنویسی
                        اینو بنویس
                        [code=c]
                        if ((res=f_open(&file,path1,FA_READ | FA_WRITE))==FR_OK)
                        [/code]
                        The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

                        دیدگاه


                          #13
                          پاسخ : عدم نوشتن در کارت حافظه ؟

                          تشکر
                          مشکل حل شد .
                          البته از خود دستور write هم بود که من باید مقدار طول رشته رو درست می دادم .

                          دیدگاه


                            #14
                            پاسخ : عدم نوشتن در کارت حافظه ؟

                            چطور می توان برای نوشتن متنی که اضافه میشود یک خط اومد پایین تر ؟مثلا اینتر زده شده باشه .
                            بعد تا چه حد می توان درفایل متنی نوشت ؟
                            ممنون

                            دیدگاه


                              #15
                              پاسخ : عدم نوشتن در کارت حافظه ؟

                              منظور سوال اول رو نمی فهمم، شما هر چی بخوای می نویسی، بنویس \r\n تا اینتر زده شه و بره خط بعد،
                              اینکه تا چه حجمی میشه نوشت بستگی به فایل سیستم داره، مثلا fat32 تا 4 گیگ بیشتر اجازه نمیده
                              The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

                              دیدگاه

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