اطلاعیه

Collapse
No announcement yet.

مشکل با تایمر 1

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

    مشکل با تایمر 1

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

    برنامه ای که خودم هم نوشتم کار نمیکنه نمیدونم مشکل از کجاست من اینجا ی کپی میزارم اگه میشه بهم بگین مشکل چیه؟ تایمر میشمره ولی دستور on timer1 D کار نمیکنه
    Dim A As Byte
    A = 0
    Config Portb = Output
    Portb = 0
    Config Timer1 = Timer , Prescale = 1024
    Enable Interrupts
    Enable Timer1
    Enable Ovf1
    On Timer1 Ali
    Timer1 = 26473
    Do
    Loop
    End
    Ali:
    Incr A
    If A = 1 Then
    Toggle Portb : A = 0
    End If
    Timer1 = 26473
    Return

    ===============================

    اینم برنامه خودم

    Config Kbd = Portd
    Config Timer1 = Timer , Prescale = 1
    Enable Interrupts
    Enable Timer1

    On Timer1 D
    Start Timer1


    End

    D:
    Stop Timer1
    Timer1 = 15536
    Lcd "aa"
    Wait 2
    Start Timer1
    Y = Y + 1
    If Y = 2 Then
    Lcd Y
    End If
    Return

    #2
    پاسخ : مشکل با تایمر 1

    توی برنامه خودت بعد start timer1 یه دونه do , loop بزار . و توی برنامه اولی هم start timer1 بزار . در ضمن توی زیر برنامه تایمر هیچ وقت نباید wait گذاشت .
    [glow=blue,2,300]آنقدر به تاريكي لعنت نفرستيد ، يك شمع روشن كنيد. [/glow]

    دیدگاه


      #3
      پاسخ : مشکل با تایمر 1

      مرسی که جواب دادین ولی بازم نشد

      اینو ببین

      Dim Y As Byte
      Config Kbd = Portd
      Config Timer1 = Timer , Prescale = 1
      Enable Interrupts
      Enable Timer1
      Enable Ovf1

      Y = 0
      On Timer1 D
      Start Timer1

      Do
      If Y > 0 Then
      Lcd Y
      End If
      Loop


      End

      D:
      Timer1 = 15536
      Start Timer1
      Y = Y + 1
      Return

      مشکل سر اینه که نمیره تو زیر برنامه d

      دیدگاه


        #4
        پاسخ : مشکل با تایمر 1

        enable ovf1 لازم نیست . با اینکه فرقی نمیکنه اما از اونجا که BASCOM کارهاش حساب کتاب نداره به جای on timer1 d بزار on ovf1 d . در ضمن فیوزبیت مربوط به CLKSEL رو هم با فرکانس برنامت یکسان کن .
        من از این برنامه جواب گرفتم .
        $regfile = "m32def.dat"
        $crystal = 8000000

        Config Portb = &B00111111
        Config Timer1 = Timer , Prescale = 8

        Dim A(2) As Byte , C As Byte , B As Single , V As Bit , H As Bit , J As Bit

        H = 0

        Enable Interrupts
        Enable Timer1

        On Ovf1 Lable

        Timer1 = 55536
        Start Timer1

        Do

        If C = 0 Then
        Set H
        Elseif C > 0 Then
        Reset H
        End If

        If C = 99 Then
        Set J
        Elseif C < 99 Then
        Reset J
        End If

        If Pinb.6 = 1 Then
        Waitms 200
        If Pinb.6 = 1 Then
        Gosub L1
        End If
        End If

        If Pinb.7 = 1 Then
        Waitms 200
        If Pinb.7 = 1 Then
        Gosub L2
        End If
        End If

        A(1) = C Mod 10
        A(2) = C / 10

        Loop

        End

        Lable:

        Timer1 = 55536

        If V = 0 Then
        Portb = A(1) : Reset Portb.4 : Set Portb.5
        Elseif V = 1 Then
        Portb = A(2) : Reset Portb.5 : Set Portb.4
        End If

        Toggle V

        Return

        L1:

        If J = 1 Then
        C = 0
        Else
        Incr C
        End If

        Return

        L2:

        If H = 1 Then
        C = 99
        Else
        Decr C
        End If

        Return
        [glow=blue,2,300]آنقدر به تاريكي لعنت نفرستيد ، يك شمع روشن كنيد. [/glow]

        دیدگاه


          #5
          پاسخ : مشکل با تایمر 1

          اینی که گفتی رو هم تست کردم بازم نشد . راستی اینایی که میگم تو پروتئوس هست ها نه عملی .
          پروژه من ی جور ثبت زمان ورود و خروجه با ثبت زمان و ی سری چیزای دیگه . واسه این میخوام از تایمر استفاده کنم چون باید به برنامه کی پد هم برسم و با ویت نمیشه

          چیکار کنم من که این تایمر درست بشه . چون تست کردم تایمر کار میکنه یعنی میشمره ولی اور فلو نمیده :cry:

          دیدگاه


            #6
            پاسخ : مشکل با تایمر 1

            اقا یافتم یافتم
            از بس که گیجم من . تو پروتئوس 32 زدم دارم 16 کامپایل میکنم

            مرسی

            دیدگاه

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