ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 8 از 8
  1. #1
    2016/11/12
    130
    50

    تعیین محدوده زمانی در بسکام

    سلام و خسته
    من ماژول ساعت راه اندازی کردم
    حالا میخوام مثلا از ساعت 23 تا 6 صبح یه پورتی رو روشن کنه
    شروع و اتمام آلارم متغیره و ثابت نیست
    من خودم این و نوشتم که پر از اشتباه و فقط تو یه شرایط کار میکنه
    کد HTML:
    if _hour => Salarm1 And _hour < Ealarm1 Then
    
         Set Portc.5    
     Elseif _hour < Salarm1 Or _hour > Ealarm1 Then     Reset Portc.5
    Salarm1 ساعت شروع آلارم و Ealarm1 ساعت پایان آلارم میباشد
  2. #2
    2015/06/17
    91
    29

    پاسخ : تعیین محدوده زمانی در بسکام

    شما برای این کار اولا باید این مقادیر روشن و خاموشتونو بریزید تو eeprom میکرو . تا زمانی که براثر یه خاموش و روشن شدن به هر دلیل این مقادیر از حافظه بازیابی بشن.
    بعد از این کار شما دو حالت تنظیم زمان دارید(در صورت 24 ساعته بودن سیستمتون)
    1-تایم خاموشی بزرگتر مساوی تایم روشن شدنه(مثلا 18 تا 23)
    2-تایم خاموشی کوچکتر از تایم روشن شدنه(مثل 23 تا 6 صبح که خودتون گفتید)
    یکی از راهها میتونه این باشه که شما بیاین توی یه متغیر زمان فعلی رو به دقیقه داشته باشین مثلا ساعت 23:05 میشه 5+60*23و همچنین توی دو متغیر دیگه زمان روشن خاموشتون رو به دقیقه.
    حالا توی حالت 1 که تایم خاموشی بیشتر از تایم روشن شدنه یه شرط میاد چک میکنه اگه زمان (که معادل دقیقه شده )بزرگترمساوی تایم استارت (که معادل دقیقه شده)شد و کوچکتر از تایم خاموشی (که معادل دقیقه شده)بود یه پین رو یک کنه در غیر این صورت اون پین صفره ...
    اما توی حالت دو یه شرط میاد چک میکنه اگه زمان (که معادل دقیقه شده )بزرگتر مساوی تایم استارت(که معادل دقیقه شده) یا کوچکتر از تایم خاموشی (که معادل دقیقه شده)شد یه پین رو یک کنه در غیر این صورت اون پین صفر بشه....
    در ضمن یه دستور هم خود بسکام داره به نام secofday که خودش زمان رو به ثانیه تبدیل میکنه و در یه متیر ذخیره میکنه....
  3. #3
    2016/11/12
    130
    50

    پاسخ : تعیین محدوده زمانی در بسکام

    این فضای زیادی از حافظه فلش و میگیره
    کسی راه حل بهتری نداره؟
  4. #4
    2016/11/12
    130
    50

    پاسخ : تعیین محدوده زمانی در بسکام

    اصلا این روشی که شما گفتید درست نیست
    شما شروع آلارم 23 در نظر بگیر پایان آلارم رو 8 صبح
    این میره تو شرط دوم
    حالا ساعت 2 شبه
    باید آلارم فعال باشه اما طبق فرمول شما فعال نیست
  5. #5
    2015/06/17
    91
    29

    پاسخ : تعیین محدوده زمانی در بسکام

    نقل قول نوشته اصلی توسط qmars_farahani

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    اصلا این روشی که شما گفتید درست نیست
    شما شروع آلارم 23 در نظر بگیر پایان آلارم رو 8 صبح
    این میره تو شرط دوم
    حالا ساعت 2 شبه
    باید آلارم فعال باشه اما طبق فرمول شما فعال نیست
    خب درسته میره توحالت دوم
    طبق این حالت دوباره یه شرط میاد چک میکنه هر موقع زمان بیشتر مساوی زمان استارت و یا کوچکتر مساوی زمان خاموشی شد یه پین رو یک میکنه در غیر این صورت اون پین صفره.
    به فرض مثال شما ساعت 2 شب دستگاه رو روشن میکنین ،توی شرط دوم هم دو تا شرط هست که با هم or هستند.(زمان بیشتر مساوی زمان استارت و یا زمان کوچکتر مساوی زمان خاموشی) خب طبق این شرط قسمت اول که برقرار نیست اما به نظر شما قسمت دوم هم برقرار نمیشه؟مگه 2 کوچکتر از 8 نمیشه؟در ضمن یه جا گفته بودین این روش حافظه فلشو میگیره.که هر فرمول دیگه ای هم بنویسید این حجم رو اشغال میکنه.منظورتونو نفهمیدم....
  6. #6
    2016/11/12
    130
    50

    پاسخ : تعیین محدوده زمانی در بسکام

    نقل قول نوشته اصلی توسط kargahelec

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    خب درسته میره توحالت دوم
    طبق این حالت دوباره یه شرط میاد چک میکنه هر موقع زمان بیشتر مساوی زمان استارت و یا کوچکتر مساوی زمان خاموشی شد یه پین رو یک میکنه در غیر این صورت اون پین صفره.
    به فرض مثال شما ساعت 2 شب دستگاه رو روشن میکنین ،توی شرط دوم هم دو تا شرط هست که با هم or هستند.(زمان بیشتر مساوی زمان استارت و یا زمان کوچکتر مساوی زمان خاموشی) خب طبق این شرط قسمت اول که برقرار نیست اما به نظر شما قسمت دوم هم برقرار نمیشه؟مگه 2 کوچکتر از 8 نمیشه؟در ضمن یه جا گفته بودین این روش حافظه فلشو میگیره.که هر فرمول دیگه ای هم بنویسید این حجم رو اشغال میکنه.منظورتونو نفهمیدم....
    معذرت میخوام تو شرط دوم and به جای or قرار داده بودم طبق مثل شرط اول که and داره
  7. #7
    2016/11/12
    130
    50

    پاسخ : تعیین محدوده زمانی در بسکام

    به نظرتون حالا چطوری میتونم reset port بزارم
    چون وقتی تو برنامم استارت آلارم و پایان آلارم و عوض میکنم پورت به خاطر دستور قبلی که set شده بود و reset نشده بود روشن میمونه
  8. #8
    2015/06/17
    91
    29

    پاسخ : تعیین محدوده زمانی در بسکام

    نقل قول نوشته اصلی توسط qmars_farahani

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    به نظرتون حالا چطوری میتونم reset port بزارم
    چون وقتی تو برنامم استارت آلارم و پایان آلارم و عوض میکنم پورت به خاطر دستور قبلی که set شده بود و reset نشده بود روشن میمونه
    شرطتون دوقسمتی هست اون رو هم اضافه کردید؟ منظورم قسمت else هست.
    if ............. then
    else
    reset portb.6
    end if
    توی قسمت نقطه چین حالت استارت تعریف میشه و در قسمت بعد از else هر زمان غیر از زمان مد نظر رو شامل میشه....
نمایش نتایج: از 1 به 8 از 8

موضوعات مشابه

  1. بررسی آشوب در سیگنال زمانی ( سری زمانی )
    توسط atefeee در انجمن پردازش سيگنال و هوش محاسباتي
    پاسخ: 0
    آخرين نوشته: 2015/09/13, 16:16
  2. بدست اوردن بازه زمانی در بسکام
    توسط wle1036 در انجمن میکروکنترلرهای AVR
    پاسخ: 1
    آخرين نوشته: 2014/08/28, 16:42
  3. تعیین شمارش بالا رونده یا پایین رونده در بسکام
    توسط hamedhamidi در انجمن میکروکنترلرهای AVR
    پاسخ: 4
    آخرين نوشته: 2013/09/13, 22:20
  4. قرار دادن یک متغییر در محدوده ی دلخواه با بسکام
    توسط hosseinam در انجمن میکروکنترلرهای AVR
    پاسخ: 2
    آخرين نوشته: 2013/06/08, 10:50

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •