اطلاعیه

Collapse
No announcement yet.

سوال درباره کیپد دارای تایمر

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

    سوال درباره کیپد دارای تایمر

    دوستان میشه یک برنامه کیپد به من معرفی کنید که مثلا بعد 10 ثانیه اگر کلید وارد نشد ال سی دی خاموش بشود و با زدن هر کلیدی ال سی دی روشن بشود
    اگر کسی میتونه وقت بزاره کمکم کنه خیلی تلاش کردم ولی نتونستم
    خیلی واجبه آخر ترم هست و موندم هنوز توی این قسمت

    #2
    پاسخ : سوال درباره کیپد دارای تایمر

    سلام
    منظورت از خاموش شدن LCD دقیقا چیه ؟ نور LCD خاموش بشه یا نه کلا LCD خاموش بشه ؟
    چشم ها را باید شست ، جور دیگر باید دید . . .

    دیدگاه


      #3
      پاسخ : سوال درباره کیپد دارای تایمر

      شما میخوای LED با زدن کلید روشن بشه و با نزدن اون توی 10 ثانیه خاموش بشه.
      یک متغیر تعریف کن، توی حلقه وایل چک کن، اگر یک بود، یعنی کلید زده شده و یا هنوز 10 ثانیه از زدن کلید نگذشته و LED روشنه.
      تایمر رو هم روشن کن، اونجا برای خودت با استفاده از یک متغیر دیگه زمان 10 ثانیه ایجاد کن. حالا متغیر اولی رو میتونی اینجا صفر کنی.
      ---------
      .
      .
      ...........

      دیدگاه


        #4
        پاسخ : سوال درباره کیپد دارای تایمر

        نوشته اصلی توسط ajapyy
        شما میخوای LED با زدن کلید روشن بشه و با نزدن اون توی 10 ثانیه خاموش بشه.
        یک متغیر تعریف کن، توی حلقه وایل چک کن، اگر یک بود، یعنی کلید زده شده و یا هنوز 10 ثانیه از زدن کلید نگذشته و LED روشنه.
        تایمر رو هم روشن کن، اونجا برای خودت با استفاده از یک متغیر دیگه زمان 10 ثانیه ایجاد کن. حالا متغیر اولی رو میتونی اینجا صفر کنی.
        میشه این تایمر را برام بنویسی
        من هر کاری می کنم نمیتونم بنویسم

        دیدگاه


          #5
          پاسخ : سوال درباره کیپد دارای تایمر

          نوشته اصلی توسط sadeghtajik
          میشه این تایمر را برام بنویسی
          من هر کاری می کنم نمیتونم بنویسم
          آقا درست شد تونستم برنامه را بنویسم
          اما نه با تایمر اگر امکان داره یکی با تایمر برام توضیح بدهد.
          تشکر از همه

          دیدگاه


            #6
            پاسخ : سوال درباره کیپد دارای تایمر

            ببین تایمر میکرو میاد و از یک مقدار مشخصی شروع به شمارش می کنه (یکی یکی زیاد میشه رجیستر) تا برسه به انتهای تنظیم شده برای اون رجیستر.
            مثلا تایمر صفر برای AVR ها 8بیتی هستش. حالا شما میگی مقدار اولیه 0 باشه و مقدار نهایی هم می تونه 255 باشه، پس تایمر شما 256 با زیاد میشه تا به انتها برسه، حالا فرکانس کاری تایمر رو 1 مگاهرتز در نظر بگیر. پس تایمر تا برسه به 255، تقریبا 256 میکروثانیه طول میکشه. حالا شما میای و وقفه رو برای حالتی که تایمر برسه به انتها فعال می کنی. با این کار میکرو هر 256 میکروثانیه یک وقفه خواهد داد(باید وقفه اش رو فعال کنی). شما یک متغیر رو توی تابع وقفه تایمر یکی یکی زیاد می کنی. هر وقت متغیر بشه 3 (با شرط اینکه مقدار اولیه اون 0 باشه)، شما میدونی که 4*256 میکروثاینه طول کشیده. اگر متغیر بشه 400 میشه 256*400 میکروثانیه یا 100 میلی ثانیه. بعد تو حلقه وایل می تونی چک کنی ببینی کی متغیرت به اون زمان موردنظرت میرسه.
            این 1مگاهرتز رو من مثال گفتم تا شما تایمر رو متوجه بشی. حالا تایمر 1 رو در نظر بگیر. این تایمر 16 بیتی هستش. یعنی می تونی زمان های زیادی رو باهاش به دست بیاری. این تایمر حالات مختلفی هم داره مثلا مد نرمال، مد مقایسه، مد PWM و ... . هر کدوم هم وقفه های خاص خودشون رو دارند.
            ---------
            .
            .
            ...........

            دیدگاه

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