اطلاعیه

Collapse
No announcement yet.

راه اندازی سون سگمنت 4 رقمی

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

    راه اندازی سون سگمنت 4 رقمی

    با توجه به مطالبی که دوستان لطف کردن نوشتن
    این برنامه رو نوشتم
    کد:
    $regfile = "M32def.dat"
    $crystal = 1000000
    
    Config Portc.1 = Output                   ' Yekan
    Config Portc.2 = Output                   ' Dahgan
    Config Portc.3 = Output                   ' SadGan
    Config Portc.3 = Output                   ' HezarGan
    
    Config Portd = Output
    
    Declare Sub Shownumber(byval X As Integer)
    Declare Sub Sevenprint(byval X As Byte)
    
    
    Config Timer0 = Timer , Prescale = 1
    On Ovf1 Sevenhandler
    On Ovf0 Sevenhandler
    Enable Timer0
    Enable Interrupts
    
    
    Reset Portc
    Reset Portd
    
    Dim X0 As Byte
    Dim X1 As Byte
    Dim X2 As Byte
    Dim X3 As Byte
    
    
    Start Timer0
    
    
    
    
    
    
    
    Do
    
    
    
    Dim I As Integer
      For I = 1 To 9
      Call Shownumber(i)
      Wait 1
      Next I
    
    
    Loop
    
    
    Sub Shownumber(byval X As Integer )
      Dim M As Integer
    
      Dim B As Integer
    
      B = X
    
      Dim C As Integer
      C = 0
    
      While B <> 0
      B = X / 10
      M = X Mod 10
    
    
      X = B
      Select Case C
      Case 0
       X0 = M
      Case 1
       X1 = M
      Case 2
       X2 = M
      Case 3
       X3 = M
    
      End Select
    
      C = C + 1
    
      Wend
    
    
    
    
    End Sub
    
    Sub Sevenprint(byref X As Byte)
    
    
    Select Case X
    Case 1
    Portd = &B1111001                      'show 1
    Case 2
    Portd = &B0100100                      'show 2
    Case 3
    Portd = &B1111001                      'show 3
    Case 4
    Portd = &B0110011                      'show 4
    Case 5
    Portd = &B0010010                      'show 5
    Case 6
    Portd = &B1011011                      'show 6
    Case 7
    Portd = &B1110000                      'show 7
    Case 8
    Portd = &B1111111                      'show 8
    Case 9
    Portd = &B1111011                      'show 9
    
    End Select
    
    End Sub
    
    
    Sevenhandler:
    
    Reset Portc
    Reset Portd
    
    
    
    
    Set Portc.1
    
    Call Sevenprint(x0)
    Waitms 1
    Reset Portc.1
    
    Set Portc.2
    Call Sevenprint(x1)
    Waitms 1
    Reset Portc.2
    
    
    Set Portc.3
    Call Sevenprint(x2)
    Waitms 1
    Reset Portc.3
    
    
    
    
    
    ''''''''''''''''''''''''' yekan  '''''''''''''''''''''''''
    
    
    Return



    کد باینری خروجی (پین های خروجی پورت D) سون سگمنت رو یکی از دوستان گزاشته بود که مشکل داشت
    تا 3 رو درست کردم


    حالا مشکل

    این تایمری که تعریف کردم

    فقط یک بار مقدار X رو چک میکنه
    بار دوم چکش نمیکنه :eek:
    و مقدار اول رو استفاده میکنه

    دوستان میشه راهنمایی کنید چطوری میشه X1 جدید رو به تایمر داد ؟

    ضمنا رو برد من پور های c3وC2 خروجی نمیدن
    مشکل از چیه ؟ :rolleyes:

    مرسی

    #2
    پاسخ : راه اندازی سون سگمنت 4 رقمی

    روی پورت سی Jtag هست
    فیوز بیت اونو غیر فعال کنین
    دستی از دریا خواهد آمد...

    دیدگاه


      #3
      پاسخ : راه اندازی سون سگمنت 4 رقمی

      نوشته اصلی توسط هادی یعقوبی
      روی پورت سی Jtag هست
      فیوز بیت اونو غیر فعال کنین
      ممنون


      دوستان کسی راجب برنامه و مشکلش نظری نداره ؟ :eek:

      دیدگاه

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