اطلاعیه

Collapse
No announcement yet.

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

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

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

    سلام
    برنامه زیر برنامه یک فرکانس متر با میکرو در بسکام است
    طرز کارشم اینطوریه که با تایمر 0 زمان 1 ثانیه ایجا میشه و کانتر 1 در این زمان تعداد پالسها رو میشماره و فرکانس به دست میاد.
    من توی این برنامه یه اشکالی داشتم
    متغیر I چی رو نشون میده؟؟؟ وعلت دستور I>30 چیه ؟؟
    یه سوال دیگه اینکه زمان 1 ثانیه کجا ایجاد شده ؟
    $regfile = "m32def.dat"
    $crystal = 8000000
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Rs = Porta.0 , E = Porta.1 , Db4 = Porta.2 , Db5 = _
    Porta.3 , Db6 = Porta.4 , Db7 = Porta.5
    Cursor Off
    Config Timer1 = Counter , Edge = Rising
    Ddrb.1 = 0
    Portb.1 = 1
    Config Timer0 = Timer , Prescale = 1024
    Enable Timer1
    Enable Timer0
    Enable Interrupts
    On Ovf1 Pulse_counter
    On Ovf0 Yazdkit
    Dim A As Long , B As Byte , I As Long
    B = 0
    Start Timer0
    Do
    Loop
    End
    Yazdkit:
    Incr I
    If I > 30 Then
    Stop Timer0
    Cls
    Home
    A = B * 65536
    A = A + Counter1
    Lcd "frequency:"
    Locate 2 , 1
    Lcd A ; " HZ"
    B = 0
    I = 0
    Counter1 = 0
    Start Timer0
    End If
    Return
    Pulse_counter:
    Incr B
    Counter1 = 0
    Return

    ممنون میشم راهنمایی کنید.
لطفا صبر کنید...
X