اطلاعیه

Collapse
No announcement yet.

خواند و نوشتن روی eeprom میکرو avr

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

    #16
    پاسخ : خواند و نوشتن روی eeprom میکرو avr

    تاخیر فقط زمانی لازمه که 2 بایت پشت سرهم نوشته بشه که بسکام این تاخیر رو ایجاد میکنه
    مگه میشه بافر نداشته باشه دیتاشیت را مطالعه کنید بعد نظرتون رو بیان کنید

    دیدگاه


      #17
      پاسخ : خواند و نوشتن روی eeprom میکرو avr

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

      موفق باشید
      چرا ناراحتی پاتریک!
      + امروز ی بچه دیدم سرچهارراه گل میفروخت
      - از دیدنش ناراحت شدی؟
      + نه
      پس چی ناراحتت کرده
      + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
      ------------------------------------------------------------------------------------------------------
      تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
      ------------------------------------------------------------------------------------------------------
      محصولات

      دیدگاه


        #18
        پاسخ : خواند و نوشتن روی eeprom میکرو avr

        نوشته اصلی توسط reza0506 نمایش پست ها
        سلام به نظرم این تاخیر برای نوشتن دوباره در eeprom هستش،درواقع شما وقتی یه کاراکتر رو تو یه حافظه مشخص از eeprom مینویسید سی پی یو بعد از اجرای نوشتن به سرعت میتونه عملیات های دیگه رو انجام بده اما حتی در حین اجرای دستورات دیگه هم ممکنه که نوشتن در eeprom هنوز تکمیل نشده باشه و چیزی حدود ۱۰میلی ثانیه طول بکشه که با فرض کلاک ۱ مگاهرتز سی پی یو تو این مدت ۱۰/۰۰۰ سیکل یعنی تقریباً ۱۰/۰۰۰ دستور میتونه انجام بده،خوب اگه تو این مدت دوباره قصد نوشتن تو eeprom رو نداشته باشیم مشکلی پیش نمیاد و نیازی به wait نیست اما اگر بخوایم دوباره تو eeprom بنویسیم باید صبر کنیم تا نوشتن قبلی کارش تموم بشه(توجه کنیم که تو این مدت سی پی یو درگیر نوشتن تو eeprom نیست) حالا از کجا بفهمیم که عمل نوشتن تموم شده؟با بررسی یه فلگ که الآن نمیدونم اسمش چیه
        برای همین مدت زمان طولانی نوشتن هستش که pic یه وقفه اتمام نوشتن در eeprom داره تا سی پی یو درگیر این مدت زمان نشه با یه delay طولانی برای میکرو
        البته نمیدونم avr هم این وقفه رو داره یا خیر،که البته فکر کنم داشته باشه
        موفق باشید
        دوست عزیز 1 مگا هرتز میشه 1 میلیون سیکل نه 10 هزار اون میشه 10 کیلو
        I'm going to
        RWTH Aachen
        University

        دیدگاه


          #19
          پاسخ : خواند و نوشتن روی eeprom میکرو avr

          تا وقتی کار نوشتن روی حافظه تکمیل نشده پردازنده کار دیگه ای انجام نمیده (مگر وقفه ها)
          پس نیازی به تاخیر و این چیزا نیست.
          If the wind will not serve, take to the oars

          دیدگاه


            #20
            پاسخ : خواند و نوشتن روی eeprom میکرو avr

            نوشته اصلی توسط azadfalah نمایش پست ها
            دوست عزیز 1 مگا هرتز میشه 1 میلیون سیکل نه 10 هزار اون میشه 10 کیلو
            سلام
            دوست عزیز من گفتم تو ۱۰ میلی ثانیه ۱۰/۰۰۰ سیکل
            فکر نکنم اشتباهی شده باشه
            [آموزشی] کنترل رله با پیامک توسط sim800l
            [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
            [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
            [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
            صفحه اینستاگرام : ecdco_ir

            دیدگاه


              #21
              پاسخ : خواند و نوشتن روی eeprom میکرو avr

              سلام دوستان
              لطفاً توجه داشته باشید من تو پست قبلی هم توضیح دادم
              برای نوشتن چند بایت پشت سر هم در eeprom با اینکه cpu خودش درگیر مدت زمان طولانی نوشتن نمیشه و میتونه دستورات دیگه رو اجرا کنه،اما این مدت زمان حدود ۱۰ میلی ثانیه برای نوشتن در eeprom لازمه که توسط rc داخلی که مستقیم به eeprom وصله و بافر مربوطه به موازات cpu انجام میشه،یه جورایی مثل تایمر کارش مستقل از cpu هستش
              حالا پس چرا بعضی ها میگن نیاز نیست زمان ۱۰ میلی ثانیه صبر کنیم بعضی ها میگن باید این مدت wait بزاریم؟
              شما به تصویر و کد خوب دقت کنید

              بعد از اینکه اولین بایت نوشته شد شما میاید بیت eewe از رجیستر eecr رو چک میکنید که آیا صفر شده(یعنی عملیات قبلی نوشتن تموم شده)یا نه؟حالا از زمانی که این بیت برای نوشتن یک بشه تا زمان اتمام که حدود ۱۰ میلی ثانیه طول میکشه و این بیت صفر میشه شما باید منتظر بمونید برای نوشتن بعدی،درواقع عملاً چیزی حدود ۱۰ میلی ثانیه منتظر موندید
              حالا اونایی که نمیخوان این بیت رو تو برنامه چک کنن میتونن مستقیم ۱۰ میلی ثانیه wait بزارن
              در آخر هم دوباره تاکید میکنم خود cpu مستقیم درگیر نوشتن طولانی مدت در eeprom نمیشه و در این زمان میتونه دستورات دیگه رو اجرا کنه
              به دلیل همین زمان طولانی نوشتن در eeprom هستش که اکثر پردازنده ها یه وقفه اتمام نوشتن در eeprom دارند تا cpu بیخودی مشغول چک کردن فلگ اتمام نوشتن نشه
              دیدن این شکل هم خالی از لطف نیست!!

              اگر به note پایین صفحه نگاه کنید نوشته eeprom از کلاک داخلی مستقل از فیوزبیت cksel که برای تنظیم کلاک هست،استفاده میکنه
              جدیدترین ویرایش توسط سید رضا باباتبار; ۱۲:۴۴ ۱۳۹۵/۰۷/۱۲.
              [آموزشی] کنترل رله با پیامک توسط sim800l
              [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
              [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
              [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
              صفحه اینستاگرام : ecdco_ir

              دیدگاه


                #22
                پاسخ : خواند و نوشتن روی eeprom میکرو avr

                نوشته اصلی توسط reza0506 نمایش پست ها
                سلام دوستان
                لطفاً توجه داشته باشید من تو پست قبلی هم توضیح دادم
                برای نوشتن چند بایت پشت سر هم در eeprom با اینکه cpu خودش درگیر مدت زمان طولانی نوشتن نمیشه و میتونه دستورات دیگه رو اجرا کنه،اما این مدت زمان حدود ۱۰ میلی ثانیه برای نوشتن در eeprom لازمه که توسط rc داخلی که مستقیم به eeprom وصله و بافر مربوطه به موازات cpu انجام میشه،یه جورایی مثل تایمر کارش مستقل از cpu هستش
                حالا پس چرا بعضی ها میگن نیاز نیست زمان ۱۰ میلی ثانیه صبر کنیم بعضی ها میگن باید این مدت wait بزاریم؟
                شما به تصویر و کد خوب دقت کنید

                بعد از اینکه اولین بایت نوشته شد شما میاید بیت eewe از رجیستر eecr رو چک میکنید که آیا صفر شده(یعنی عملیات قبلی نوشتن تموم شده)یا نه؟حالا از زمانی که این بیت برای نوشتن یک بشه تا زمان اتمام که حدود ۱۰ میلی ثانیه طول میکشه و این بیت صفر میشه شما باید منتظر بمونید برای نوشتن بعدی،درواقع عملاً چیزی حدود ۱۰ میلی ثانیه منتظر موندید
                حالا اونایی که نمیخوان این بیت رو تو برنامه چک کنن میتونن مستقیم ۱۰ میلی ثانیه wait بزارن
                در آخر هم دوباره تاکید میکنم خود cpu مستقیم درگیر نوشتن طولانی مدت در eeprom نمیشه و در این زمان میتونه دستورات دیگه رو اجرا کنه
                به دلیل همین زمان طولانی نوشتن در eeprom هستش که اکثر پردازنده ها یه وقفه اتمام نوشتن در eeprom دارند تا cpu بیخودی مشغول چک کردن فلگ اتمام نوشتن نشه
                دیدن این شکل هم خالی از لطف نیست!!

                اگر به note پایین صفحه نگاه کنید نوشته eeprom از کلاک داخلی مستقل از فیوزبیت cksel که برای تنظیم کلاک هست،استفاده میکنه
                حرف شما درست. ولی اونطور نیست.
                وقتی تاخیر هم کاری جز اتلاف وقت پردازنده انجام نمیده (و هیچ پردازش دیگه ای هم نمیشه در این میان انجام داد)
                چرا باید همچین ریسکی رو انجام بدیم درحالی که با اطمینان میشه منتظر اتمام فرایند نوشتن در حافظه موند؟
                If the wind will not serve, take to the oars

                دیدگاه


                  #23
                  پاسخ : خواند و نوشتن روی eeprom میکرو avr

                  نوشته اصلی توسط ASHIT AXAR نمایش پست ها
                  حرف شما درست. ولی اونطور نیست.
                  وقتی تاخیر هم کاری جز اتلاف وقت پردازنده انجام نمیده (و هیچ پردازش دیگه ای هم نمیشه در این میان انجام داد)
                  چرا باید همچین ریسکی رو انجام بدیم درحالی که با اطمینان میشه منتظر اتمام فرایند نوشتن در حافظه موند؟
                  خداوکیلی با دلیل و مدرک توضیح دادم دیگه
                  اما در جواب سوال شما باید بگم که فکر میکنید چند درصد از افرادی که با avr کار میکنند دیتاشیت و جزییات avr رو بررسی میکنند؟خیلی ها نمیدونند رجیستر چیه و برای اینکه باهاش درگیر نشن میرن سراغ برنامه نویسی "های لول" مثل بسکام و یا حتی c.
                  خوب این دوستان شاید ندونند که برای نوشتن پشت سر هم باید منتظر اتمام فرآیند نوشتن قبلی بمونند و این باعث عملیات اشتباه بشه،از طرفی نمیخوان درگیر بررسی رجیستر بشند خوب بهترین راه اینه که بهشون بگیم بعد نوشتن هر بایت در avr یه delay برابر ۱۰ میلی ثانیه قرار بده (که میدونیم دقیقش ۸.۵ میلی ثانیه برای mega128 هستش اما برای اطمینان میگیم ۱۰ میلی ثانیه)درواقع اینطوری برنامه نویسی برای افراد غیر حرفه ای راحت تره
                  [آموزشی] کنترل رله با پیامک توسط sim800l
                  [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                  [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                  [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                  صفحه اینستاگرام : ecdco_ir

                  دیدگاه


                    #24
                    پاسخ : خواند و نوشتن روی eeprom میکرو avr

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

                    دوستان ممکنه خط به خط کدهای این عکس رو ترجمه کنید تا مسئله واضح تر بشه

                    آرزوی سرافرازی برای ایران عزیز . . .


                    دیدگاه


                      #25
                      پاسخ : خواند و نوشتن روی eeprom میکرو avr

                      نوشته اصلی توسط rezamajdi نمایش پست ها
                      سلام به همه دوستان

                      دوستان ممکنه خط به خط کدهای این عکس رو ترجمه کنید تا مسئله واضح تر بشه

                      سلام ما یه loop به اسم eeprom_write داریم که میایم با دستور sbic EECR,EEWE بیت eewe از رجیستر eecr رو چک میکنیم اگر یک بود (نوشتن در eeprom هنوز تموم نشده) از دستور بعدی پرش نمیکنه و با اجرای دستور بعدی یعنی rjmp EEPROM_WRITE
                      دوباره برمیگرده به حلقه و اینقدر تو این حلقه میمونه تا بیت eewe برابر صفر بشه اونموقع دستور بعدی یعنی rjmp اجرا نمیشه.
                      حالا میره سراغ نوشتن بایت بعدی به این صورت که با دستورات out EERH,r18 و out EERL,r17 آدرس خونه ای از eeprom که باید توش نوشته بشه مشخص میشه(در مثال فرض شده که رجیستر های r17 و r18 قبلاً مقدار دهی شده باشند)
                      حالا با دستور out EEDR,r16 دیتا در رجیستر eedr نوشته میشه
                      بعد با دستور sbi EECR,EEWME بیت eewme از رجیستر eecr برابر یک میشه که برای نوشتن این بیت اول باید یک بشه حالا فقط ۴ سیکل فرصت داریم تا بیت eewe از رجیستر eecr رو یک کنیم که با دستور out EECR,EEWE این عمل بلافاصله انجام میشه و eeprom شروع به نوشتن میکنه بعد این دستور هم به تابع اصلی با دستور ret برمیگرده
                      اگر دقت کرده باشید ما برای نوشتن در آخر بیت eewe رو یک کردیم ،حالا بعد اتمام فرآیند نوشته شدن این بیت خودکار صفر میشه برا همین اول برنامه با دستور sbic eecr,eewe باید چک کنیم که آیا این بیت صفر شده تا بایت بعدی هم به همین صورت توشته بشه یا خیر
                      [آموزشی] کنترل رله با پیامک توسط sim800l
                      [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                      [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                      [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                      صفحه اینستاگرام : ecdco_ir

                      دیدگاه


                        #26
                        پاسخ : خواند و نوشتن روی eeprom میکرو avr

                        نوشته اصلی توسط reza0506 نمایش پست ها
                        خداوکیلی با دلیل و مدرک توضیح دادم دیگه
                        اما در جواب سوال شما باید بگم که فکر میکنید چند درصد از افرادی که با avr کار میکنند دیتاشیت و جزییات avr رو بررسی میکنند؟خیلی ها نمیدونند رجیستر چیه و برای اینکه باهاش درگیر نشن میرن سراغ برنامه نویسی "های لول" مثل بسکام و یا حتی c.
                        خوب این دوستان شاید ندونند که برای نوشتن پشت سر هم باید منتظر اتمام فرآیند نوشتن قبلی بمونند و این باعث عملیات اشتباه بشه،از طرفی نمیخوان درگیر بررسی رجیستر بشند خوب بهترین راه اینه که بهشون بگیم بعد نوشتن هر بایت در avr یه delay برابر ۱۰ میلی ثانیه قرار بده (که میدونیم دقیقش ۸.۵ میلی ثانیه برای mega128 هستش اما برای اطمینان میگیم ۱۰ میلی ثانیه)درواقع اینطوری برنامه نویسی برای افراد غیر حرفه ای راحت تره
                        خععب باااشه
                        روش پیشنهادی شما هم نه که اشتباه باشه و جواب نده - فقط شاید هیچوقت نیاز به انتظار نباشه - شاید هم نوشتن زمان بیشتری نیاز داشته باشه.
                        همچنین اگه در کنار این تابع نوشتن در وقفه ها هم انجام میشه (و اگه داده ها مهم باشن) باید پیش از شروع نوشتن وقفه ها رو غیر فعال کنید و پس از نوشتن دوباره فعال کنید.

                        درباره برنامه نویسی سطح بالا هم اینو بگم که نه تنها تازه کارها بلکه حرفه ای ها هم بسیار به استفاده از این روش تمایل دارن مگه اینکه نیاز باشه تا کد های سطح پایین نوشته بشه و همچنین بورد های آماده وگرنه بین شونزده بیست میلیون دستور چنتا اینور اونور چه فرقی میکنه
                        زمان با ارزش تر هستش
                        جدیدترین ویرایش توسط ASHIT AXAR; ۱۸:۳۶ ۱۳۹۵/۰۷/۱۲.
                        If the wind will not serve, take to the oars

                        دیدگاه


                          #27
                          پاسخ : خواند و نوشتن روی eeprom میکرو avr

                          نوشته اصلی توسط ASHIT AXAR نمایش پست ها
                          خععب باااشه
                          روش پیشنهادی شما هم نه که اشتباه باشه و جواب نده - فقط شاید هیچوقت نیاز به انتظار نباشه - شاید هم نوشتن زمان بیشتری نیاز داشته باشه.
                          همچنین اگه در کنار این تابع نوشتن در وقفه ها هم انجام میشه (و اگه داده ها مهم باشن) باید پیش از شروع نوشتن وقفه ها رو غیر فعال کنید و پس از نوشتن دوباره فعال کنید.
                          شایدی وجود نداره شما دوباره پست های منو بخون کامل توضیح دادم حتماً نیاز به منتظر بودن هست برای نوشتن بایت بعدی،شما که یه بافر دیتا بیشتر نداری
                          زمانشم کمتر و بیشتر نیست اگر بیت eewe رو چک کنید که کاملاً دقیقه،اگر هم میخواید از delay استفاده کنید باید رجوع کنید به این جدول مربوطه که برای mega128 به این صورته

                          زمانی که در آخرین مرحله بیت eewe یک شد عملیات نوشتن انجام میشه حتی اگر وقفه ای هم بیاد باز مشکلی پیش نمیاد چون eeprom به صورت مستقل از cpu عمل میکنه
                          اما از زمانی که بیت eemwe رو یک کردیم فقط ۴ کلاک فرصت داریم تا eewe رو یک کنیم تا عملیات نوشتن اجرا بشه،اینجا وقفه میتونه مشکل ساز بشه،برا همین قبل دستور یک کردن eemwe باید وقفه غیر فعال و بعد یک کردن eewe دوباره وقفه سراسری فعال بشه

                          دلیل: ادغام دو پست برای جلوگیری از اسپم

                          شما متوجه منظورم نشدید
                          من گفتم افراد غیر حرفه ای از زبان سطح بالا استفاده میکنند،این اصلاً دلیلی نمیشه که افراد حرفه ای از زبان سطح بالا استفاده نکنند،حتی برنامه های ویندوز هم اکثرشون با زبان سطح بالا هستند
                          این فقط یه شرط یک طرفست نه دوطرفه
                          [آموزشی] کنترل رله با پیامک توسط sim800l
                          [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                          [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                          [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                          صفحه اینستاگرام : ecdco_ir

                          دیدگاه


                            #28
                            پاسخ : خواند و نوشتن روی eeprom میکرو avr

                            نوشته اصلی توسط reza0506 نمایش پست ها
                            شایدی وجود نداره شما دوباره پست های منو بخون کامل توضیح دادم حتماً نیاز به منتظر بودن هست برای نوشتن بایت بعدی،شما که یه بافر دیتا بیشتر نداری
                            اگه وقفه نخوره آره (فقط برام جالب شد بدونم شما کدوم روش رو ترجیه میدید؟)

                            نوشته اصلی توسط reza0506 نمایش پست ها
                            زمانی که در آخرین مرحله بیت eewe یک شد عملیات نوشتن انجام میشه حتی اگر وقفه ای هم بیاد باز مشکلی پیش نمیاد چون eeprom به صورت مستقل از cpu عمل میکنه
                            اما از زمانی که بیت eemwe رو یک کردیم فقط ۴ کلاک فرصت داریم تا eewe رو یک کنیم تا عملیات نوشتن اجرا بشه،اینجا وقفه میتونه مشکل ساز بشه،برا همین قبل دستور یک کردن eemwe باید وقفه غیر فعال و بعد یک کردن eewe دوباره وقفه سراسری فعال بشه
                            خب دست کم توی این یه مورد هر دوی ما هم عقیده ایم بجز من
                            من که میگم تا پیش از دو دستور آخر اگه وقفه ای پیش بیاد داده ها بی اعتبار میشن
                            If the wind will not serve, take to the oars

                            دیدگاه


                              #29
                              پاسخ : خواند و نوشتن روی eeprom میکرو avr

                              نوشته اصلی توسط ASHIT AXAR نمایش پست ها
                              اگه وقفه نخوره آره (فقط برام جالب شد بدونم شما کدوم روش رو ترجیه میدید؟)


                              خب دست کم توی این یه مورد هر دوی ما هم عقیده ایم بجز من
                              من که میگم تا پیش از دو دستور آخر اگه وقفه ای پیش بیاد داده ها بی اعتبار میشن
                              اولاً من تا حد امکان تو روتین وقفه اتمام نوشته شدن eeprom سعی میکنم کدم رو برای نوشتن بایت جدید قرار بدم،اینطوری وقفه سراسری هم تو روتین وقفه غیر فعاله
                              دوماً شما مطمئن باش فقط و فقط اگر بعد از یک کردن بیت eemwe و قبل یک کردن بیت eewe اگر وقفه ای رخ بده عملیا نوشتن انجام نمیشه،در غیر این صورت هیچ وقفه ای نوشتن رو مختل نمیکنه،دلیلشم اینه که بعد یک کردن eemwe فقط ۴سیکل کلاک فرصت داری تا eewe رو یک کنی
                              [آموزشی] کنترل رله با پیامک توسط sim800l
                              [آموزشی] راه اندازی سنسورهای DHT11 و DHT22 با کدویژن
                              [آموزشی] مدار عملی اتصال میکروفن خازنی به میکروکنترلر
                              [آموزشی] آموزش نحوه راه اندازی میکروهای fmd
                              صفحه اینستاگرام : ecdco_ir

                              دیدگاه


                                #30
                                پاسخ : خواند و نوشتن روی eeprom میکرو avr

                                نوشته اصلی توسط reza0506 نمایش پست ها
                                اولاً من تا حد امکان تو روتین وقفه اتمام نوشته شدن eeprom سعی میکنم کدم رو برای نوشتن بایت جدید قرار بدم،اینطوری وقفه سراسری هم تو روتین وقفه غیر فعاله
                                هرچند نفهمیدم منظور از بایت جدید ینی چی. ولی لایک

                                نوشته اصلی توسط reza0506 نمایش پست ها
                                دوماً شما مطمئن باش فقط و فقط اگر بعد از یک کردن بیت eemwe و قبل یک کردن بیت eewe اگر وقفه ای رخ بده عملیا نوشتن انجام نمیشه،در غیر این صورت هیچ وقفه ای نوشتن رو مختل نمیکنه،دلیلشم اینه که بعد یک کردن eemwe فقط ۴سیکل کلاک فرصت داری تا eewe رو یک کنی
                                یادت نمیاد اینجا متغیر نداریم
                                فرض شده اطلاعات از قبل داخل دیتا رجیستر های عمومی هستن (و مشکل همینه که اینا رجیستر های عمومی ان)
                                شما که میگی مشکلی پیش نمیاد ولی من فرض میکنم پیش از آخرین out EEDR,r16 وقفه بخوره
                                اونوقت این کمترین آسیبه که فقط داده رو از دست دادیم (اینا رجیستر های دم دستی ان که پیوسته پر و خالی میشن)
                                حالا اگه یه خط بالاتر وقفه بخوره اونوقت ما نه تنها داده رو از دست میدیم (چون نمی دونیم کجا نوشته) بلکه داده ای رو در آدرس دیگر از بین میبریم
                                If the wind will not serve, take to the oars

                                دیدگاه

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