اطلاعیه

Collapse
No announcement yet.

توضیح برنامه تابلو روان

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

    توضیح برنامه تابلو روان

    سلام ، میخواستم توضیحاتی راجع به این برنامه تابلو روان بهم بدید ، طرز کار برنامه و اینکه یه سری از دستورات کارشون چیه؟

    $regfile = "m32def.dat"
    $crystal = 1000000
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;''''
    Config Portb = Output
    Config Porta = Output
    Config Portd = Output

    Config Timer1 = Timer , Prescale = 64
    Start Timer1
    Enable Interrupts
    Enable Ovf1
    On Ovf1 Shift_l
    Timer1 = 55535
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''
    Dim Index As Word
    Dim A As Byte , B As Word , I As Byte
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''
    Declare Sub Show
    Declare Sub Sho
    S1 Alias Portb.0
    S2 Alias Portb.1
    Portd = &H01

    Main:
    Reset S1 : Set S2
    Call Show
    Set S1 : Reset S2
    Call Show

    Index = B
    If B > 90 Then
    B = 0
    Index = 0
    Goto Main
    End If
    Goto Main
    End

    Show:
    For I = 0 To 7
    A = Lookup(index , Dat1)
    A = Not A
    Porta = A
    Waitms 1
    Porta = &HFF
    Rotate Portd , Left
    Index = Index + 1
    Next
    Return


    Shift_l:
    Incr B
    Timer1 = 55535
    Return


    ' ***********************************************


    Dat1:
    Data &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00
    Data &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00
    Data &H00 , &H22 , &H3E , &H22 , &H00 , &H3E , &H04 , &H08,
    Data &H10 , &H3E , &H00 , &H00 , &H02 , &H02 , &H3E , &H02,
    Data &H02 , &H00 , &H3E , &H08 , &H08 , &H3E , &H00 , &H00,
    Data &H3E , &H2A , &H22 , &H00 , &H00 , &H00 , &H00 , &H3E,
    Data &H04 , &H08 , &H10 , &H3E , &H00 , &H00 , &H3C , &H0A,
    Data &H0A , &H3C , &H00 , &H00 , &H3E , &H04 , &H08 , &H10,
    Data &H08 , &H04 , &H3E , &H00 , &H3E , &H2A , &H22 , &H00,
    Data &H00 , &H00 , &H18 , &H24 , &H24 , &H18 , &H00 , &H3E,
    Data &H0A , &H02 , &H00 , &H00 , &H1C , &H22 , &H2A , &H18,
    Data &H00 , &H00 , &H18 , &H24 , &H24 , &H18 , &H00 , &H00,
    Data &H3E , &H22 , &H22 , &H1C , &H00 , &H00 , &H00 , &H00
    Data &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00
    Data &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00
    Data &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00 , &H00

    #2
    پاسخ : توضیح برنامه تابلو روان

    با درود . . .

    اینارو یه نگاه بنداز بد نیستن

    http://www.eca.ir/forum2/index.php?topic=26542.0

    هرچند فکر کنم نگاه کردی؟؟؟؟ :mrgreen:
    درد من تنهایی نیست؛ بلكه مرگ ملتی است كه گدایی را قناعت، بی‏عرضگی را صبر، و با تبسمی بر لب این حماقت را حكمت خداوند می‏ نامند! "گاندی"

    به دلیل وجود برخی مشکلات و بی احترامی ها این اکانت رو غیر فعال کردم. همیشه سر بلند باشید.
    بدرود . . .

    دیدگاه


      #3
      پاسخ : توضیح برنامه تابلو روان

      سلام

      نوضیح دادن برنامه که که به این راحتیا نیست.

      در مورد دستورات هم بگو که منظورت کدام دستورات هستش تا که برات توضیح بدم.
      تشكر لازم نيست. :^O
      اينها همش وظيفه ست. :^O

      دیدگاه


        #4
        پاسخ : توضیح برنامه تابلو روان

        این قسمت ها بیشتر مد نظرمه


        Config Timer1 = Timer , Prescale = 64
        Start Timer1
        Enable Interrupts
        Enable Ovf1
        On Ovf1 Shift_l
        Timer1 = 55535


        Declare Sub Show
        Declare Sub Sho
        S1 Alias Portb.0
        S2 Alias Portb.1
        Portd = &H01


        Shift_l:
        Incr B
        Timer1 = 55535
        Return


        دیدگاه


          #5
          پاسخ : توضیح برنامه تابلو روان

          سلام

          Config Timer1 = Timer , Prescale = 64
          واسه پیکربندی تایمر استفاده میشه
          Start Timer1
          تایمر شروع به شمارش میکند
          Enable Interrupts
          Enable Ovf1
          واسه راه اندازی وقفه سرریزی استفاده میشه (آخه تایمر پس از شمردن تا 65536 سرریز میکند)
          On Ovf1 Shift_l
          پس از سرریزی به shift_i پرش میکند
          Timer1 = 55535
          مقدار اولیه را درون تایمر ریخته و تایمر از 55535 شروع به شمارش میکند

          Declare Sub Show
          Declare Sub Sho
          واسه معرفی زیر برنامه استفاده میشود
          S1 Alias Portb.0
          نام portذ.0 رو s1 قرار داده است
          S2 Alias Portb.1
          نام portذ.0 رو s1 قرار داده است
          Portd = &H01
          واسه روشن شدن پایه یک پورت d نوشته شده.

          Shift_l:
          Incr B
          Timer1 = 55535
          Return
          هدف از این قسمت اینه که هر یک ثانیه یکبار یک واحد به متغییر B اضافه بشه. واسه همین هم مقدار تایمر 1 رو واسه شروع شمارش 55535 قرار داده است آخه بعد از گذشت یک ثانیه تایمر به 65536 میرسد و دوباره سرریز میشود و برنامه به این قسمت پرش میکند و یک واحد به B اضافه میشود

          .
          اگه سوال دیگه ای بود بپرس که خوشحال میشم بتونم کمکت کنم.
          تشكر لازم نيست. :^O
          اينها همش وظيفه ست. :^O

          دیدگاه

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