اطلاعیه

Collapse
No announcement yet.

led چشمک زن در کنار برنامه اصلی

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

    #31
    پاسخ : led چشمک زن در کنار برنامه اصلی

    نوشته اصلی توسط amin007
    خب دوستان دستتون درد نکنه اینم حل شد
    الان همه چی درست کار میکنه
    حالا دو تا سوال
    یه لطفی کنید یه توضیحی در مورد این تیکه از برنامه بدین
    کد:
    Incr L
    If L=< 100 Then
    Portd.0 = 0
    elseIf L> 100 Then
    Portd.0 = 1
    End If
    if l=200 then l=0
    هر کدوم از خط ها چه کاری میکنن؟ اون 100 و 200 از کجا اومده ، کلا چه ربطی به تاخیر داره چجوری تاخیر ایجاد میکنه این دستور؟؟؟

    سوال دوم اینکه من چرا به جای دستور بالا اینو گذاشتم فقط led چشمک میزد؟
    do
    toggle pd.0
    waitms 400
    loop
    خدا رو شکر که مشکل حل شد

    اول سوال دومت رو جواب بدم
    شما وقتی وفقه میذاری اونم 400 میلی ثانیه :eek: برنامه به اون که میرسه 400 میلی ثانیه هیچ کاری نمیکنه یعنی هیچ دستوری انجام نمیده و فقط منتظر میشه تا وقفه تموم بشه
    تو این مدت نه LCD رفرش میشه نه کیبرد اسکن میشه

    حالا اون برنامه چیه؟
    اون برنامه میاد 400 میلی ثانیه رو تقسیم میکنه به مثلا 100 قسمت(اون 100 و 200 کاملا دست خودت هست و مدت زمان روشن بودن و خاموش بودن رو تعیین میکنه) و بین این 100 قسمت هی برمیگرده و LCD و کیبرد رو راه میندازه
    کلا با دستور On OVF1 LED هر بار که تایمر 1 سر ریز میشه برنامه متوقف میشه و به زیر برنامه LED پرش میکنه
    تو زیر برنامه یک واحد به متغییر L اضافه میشه
    بعد مقدار L با شرط چک میشه تا وضعیت خاموش یا روشن بودن تعیین بشه
    و با یه شرط دیگه اگه مقدار L به 200 برسه اونو صفر میکنه
    درست مثل یک کانتر عمل میکنه
    بعد با دستور Return برمیگرده به همون خطی که قبلا متوقف شده بود و با سر ریز بعدی دوباره به زیر برنامه میاد و روز از نو روزی از نو!
    در واقع در هر بار چشمک زدن LED تایمر 1 ؛ 200 بار سرریز میشه و در بین هر سرریز برنامه فرصت داره تا دستورات رو اجرا کنه

    اما در اون حالت وقفه در هر بار چشمک زدن برنامه هم دو بار فرصت اجرا شدن داره

    ببخشید که زیادی حرف زدم
    موفق و شاد و پیروز باشید
    آموزش ساخت جعبه برای مدار با نرم افزار Corel Draw - آموزش طراحی تابلو ثابت با Corel Draw و LED Tool - آموزش کرک LED Tool

    116 کتابخانه مورد نیاز برای Altium Designer

    از دروغ متنفرم؛ هرچند در این مملکت به جرم صداقت، کودن نامیده شوم.

    دیدگاه


      #32
      پاسخ : led چشمک زن در کنار برنامه اصلی

      آقا یه چیز میگم دعوام نکنید
      من 100 و 200 رو وقتی تغییر میدم و به جاش میذارم 50 و 100 یا کلا کم میکنم این دو تا رو دیگه برنامه درست کار نمیکنه
      فقط توی همون 100 و 200 جواب میده ، یه مقدار دوست داشتم سریعتر چشمک بزنه ....

      کلا با دستور On OVF1 LED هر بار که تایمر 1 سر ریز میشه برنامه متوقف میشه
      وقتی میگیم تایمر یک سرریز میشه ، یعنی به عدد چند رسیده؟ یعنی چند میلی ثانیه طول میکشه تا سرریز بشه؟

      دیدگاه


        #33
        پاسخ : led چشمک زن در کنار برنامه اصلی

        نوشته اصلی توسط amin007
        آقا یه چیز میگم دعوام نکنید
        من 100 و 200 رو وقتی تغییر میدم و به جاش میذارم 50 و 100 یا کلا کم میکنم این دو تا رو دیگه برنامه درست کار نمیکنه
        فقط توی همون 100 و 200 جواب میده ، یه مقدار دوست داشتم سریعتر چشمک بزنه ....
        اینجا هیچ کس؛ هیچ کس رو دعوا نمیکنه
        فقط همو به قتل میرسونن! :applause:

        آخه همچین چیزی امکان نداره
        برنامه بهم نمیریزه اگه مشکلی بخواد پیش بیاد فقط سرعت اجرای برنامه کم میشه
        شما مطمئن هستین فرکانس رو روی 8 مگ تنظیم کردین؟
        نوشته اصلی توسط amin007
        وقتی میگیم تایمر یک سرریز میشه ، یعنی به عدد چند رسیده؟
        تایمر یک؛ 16 بیتی هست
        یعنی برای سر ریز باید به عدد 65535 برسه
        نوشته اصلی توسط amin007
        یعنی چند میلی ثانیه طول میکشه تا سرریز بشه؟
        بستگی به فرکانس میکرو داره
        فرکانس تایمر اینجوری حساب میشه
        Prescale/فرکانس کار میکرو=فرکانس تایمر

        و حتما میدونید زمان رو چطور بدست بیارید
        حالا این زمان رو ضرب در 65535 کنین زمان یک سر ریزی بدست میاد


        آموزش ساخت جعبه برای مدار با نرم افزار Corel Draw - آموزش طراحی تابلو ثابت با Corel Draw و LED Tool - آموزش کرک LED Tool

        116 کتابخانه مورد نیاز برای Altium Designer

        از دروغ متنفرم؛ هرچند در این مملکت به جرم صداقت، کودن نامیده شوم.

        دیدگاه


          #34
          پاسخ : led چشمک زن در کنار برنامه اصلی

          البته الان یه چیزی یادم اومد
          برنامه شما زیر برنامه زیاد داره؛ نه؟

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

          این سه تا دستور رو بعد از معرفی میکرو و تعیین فرکانس اضافه کنید و خبر بدین

          کد:
          $hwstack = 20
          $swstack = 10
          $framesize = 20
          آموزش ساخت جعبه برای مدار با نرم افزار Corel Draw - آموزش طراحی تابلو ثابت با Corel Draw و LED Tool - آموزش کرک LED Tool

          116 کتابخانه مورد نیاز برای Altium Designer

          از دروغ متنفرم؛ هرچند در این مملکت به جرم صداقت، کودن نامیده شوم.

          دیدگاه


            #35
            پاسخ : led چشمک زن در کنار برنامه اصلی

            آقا ممنون ، همش زیر سر این مقاومت سری با led بود
            تا الان 100 اهم بود جریان زیاد میکشید هی ریست میشد
            گذاشتم 1 کیلو درست شد ( البته اگه دوباره مشکلی پیش نیاد)
            -----
            خب الان ما Prescale گذاشتیم روی یک یعنی فرکانس تایمر میشه 8 مگا و زمانش هم میشه 125 میکرو ثانیه؟
            بعد هر سرریزی توی 65536*125 میکروثانیه یعنی توی 8.192 ثانیه اتفاق میافته؟؟؟

            دیدگاه


              #36
              پاسخ : led چشمک زن در کنار برنامه اصلی

              نوشته اصلی توسط amin007
              آقا ممنون ، همش زیر سر این مقاومت سری با led بود
              تا الان 100 اهم بود جریان زیاد میکشید هی ریست میشد
              گذاشتم 1 کیلو درست شد ( البته اگه دوباره مشکلی پیش نیاد)
              -----
              خب الان ما Prescale گذاشتیم روی یک یعنی فرکانس تایمر میشه 8 مگا و زمانش هم میشه 125 میکرو ثانیه؟
              بعد هر سرریزی توی 65536*125 میکروثانیه یعنی توی 8.192 ثانیه اتفاق میافته؟؟؟
              اول از همه تغذیه رو عوض کن!!! :icon_razz:
              حداقل یه خازن کله گنده موازی کن که تو جریان کشی ها میکرو ریست نشه

              ن عزیزم
              سه تا صفر اشتباه کردی
              ببین:

              1/8Mhz=125us
              125us*65535=8.19ms

              آموزش ساخت جعبه برای مدار با نرم افزار Corel Draw - آموزش طراحی تابلو ثابت با Corel Draw و LED Tool - آموزش کرک LED Tool

              116 کتابخانه مورد نیاز برای Altium Designer

              از دروغ متنفرم؛ هرچند در این مملکت به جرم صداقت، کودن نامیده شوم.

              دیدگاه

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