اطلاعیه

Collapse
No announcement yet.

استفاده از مد sleep

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

    استفاده از مد sleep

    با سلام

    یه کم توضیح در مورد مد sleep میخواستم میکرویی که کار میکنم 4550 هست

    داخل چه کامپایلری اصلا مهم نیست میخوام بدونم باید چه جوری ازش استفاده کنم منظورم الگریتم کار هست کجای برنامه باید استفاده بشه
    عامل کليدي تمام موفقيتها " عمل کردن" است

    #2
    پاسخ : استفاده از مد sleep

    سلام
    مطابق دیتاشیت در sleep سی پی یو و اداوت جانبی خاموش می شن
    Sleep: CPU off, Peripherals off
    If the Sleep mode is selected, all clock sources are
    stopped. Since all the transistor switching currents
    have been stopped, Sleep mode achieves the lowest
    current consumption of the device (only leakage
    currents).
    برای رفتن در مد sleep باید در ریجستر OSCCON و بیت هفتم یا IDLEN مقدار 0 رو وارد کنین

    پی نوشت:
    در MPLAB برای رفتن به این مد می توان از دستور SLEEP(); استفاده کرد
    هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

    دیدگاه


      #3
      پاسخ : استفاده از مد sleep

      با تشکر از جوابتمن

      میشه یه نمونه برنامه بزارید میخوام بدونم چه طوری میشه ازش استفاده کرد ؟؟ کجای برنامه باید به مد SLEEP بره

      ممنون
      عامل کليدي تمام موفقيتها " عمل کردن" است

      دیدگاه


        #4
        پاسخ : استفاده از مد sleep

        سلام
        شما هر جای برنامه که قصد داشتین وارد مد SLEEP بشین بنویسین SLEEP();
        هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

        دیدگاه


          #5
          پاسخ : استفاده از مد sleep

          خوب بعد چه طوری از این مد در میاد ؟؟

          عامل کليدي تمام موفقيتها " عمل کردن" است

          دیدگاه


            #6
            پاسخ : استفاده از مد sleep

            سلام
            مطابق دیتاشیت خواهیم داشت

            Entering the Sleep mode from any other mode does not
            require a clock switch. This is because no clocks are
            needed once the controller has entered Sleep. If the
            WDT is selected, the INTRC source will continue to
            operate. If the Timer1 oscillator is enabled, it will also
            continue to run.
            When a wake event occurs in Sleep mode (by interrupt,
            Reset or WDT time-out), the device will not be clocked
            until the clock source selected by the SCS1:SCS0 bits
            becomes ready (see Figure 3-6),


            با وقفه ، ریست یا تایم اوت شدن تایمر watchdog میکرو ، میکرو از این وضعیت خارج خواهد شد
            هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

            دیدگاه


              #7
              پاسخ : استفاده از مد sleep

              میشه اگر یه نمونه برنامه دارید یزارید ؟؟؟

              ممنون
              عامل کليدي تمام موفقيتها " عمل کردن" است

              دیدگاه


                #8
                پاسخ : استفاده از مد sleep

                یادت نره فیوز بیت WDT رو روشن کنی وگر نه اگر سلیپ کنی دیگه از اون مود خارج نمیشه

                دیدگاه


                  #9
                  پاسخ : استفاده از مد sleep

                  حتما باید تایمر wd فعال بشه ؟؟


                  خوب برای خارج شدن فکر کنم چنتا راه دیگه هم وجود داره
                  عامل کليدي تمام موفقيتها " عمل کردن" است

                  دیدگاه


                    #10
                    پاسخ : استفاده از مد sleep

                    نوشته اصلی توسط alimohammad_sh
                    حتما باید تایمر wd فعال بشه ؟؟


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

                    دیدگاه


                      #11
                      پاسخ : استفاده از مد sleep

                      خوب دیگه کار سخت تر شد :sad: خود WDT رو چه طوری باید راه انداخت :redface:

                      اینجا فقط داریم تئوری بحث میکنیم اگر کسی یه نمونه برنامه داره بزاره تا ما هم استفاده کنیم
                      عامل کليدي تمام موفقيتها " عمل کردن" است

                      دیدگاه


                        #12
                        پاسخ : استفاده از مد sleep

                        نوشته اصلی توسط alimohammad_sh
                        خوب دیگه کار سخت تر شد :sad: خود WDT رو چه طوری باید راه انداخت :redface:

                        اینجا فقط داریم تئوری بحث میکنیم اگر کسی یه نمونه برنامه داره بزاره تا ما هم استفاده کنیم
                        این گزینه توی پروگرامرته نه تو برنامه یه تیک داره فقط بزنش.

                        برای تنظیم زمان تایمر WDT هم باید بگم که توی دیتا شیت برای دمای 25 درجه مقدار سر ریزی تایمر رو 18ms داده و میتونی با تنظیم رجیستر OPTION_REG میتونی تا 3.2 ثانیه هم زمانشو عقب بندازی.
                        بعد که اینکارارو کردی میای لا به لای برنامت این دستور رو CLRWDT رو مینویسی این دستور کارش ایمه که نزاره wdt تراشه رو ریست کنه و جایی که لازم داری هم دستور sLEEP رو میزنی.

                        نمونه برنامه ما شاید بدرد شما نخوره چون توی دماهای مختلف باید نتظیمات و برنامه نویسی متفاوتی انجام بشه

                        دیدگاه

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