NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3168 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 3 از 3

موضوع: مشکل در بسکام(اضطراری)

  1. #1
    عضو جدید
    تاریخ عضویت
    Apr 2015
    نوشته ها
    6
    تشکر
    2
    تشکر شده 0 بار در 0 پست

    پیش فرض مشکل در بسکام(اضطراری)

    سلام به دوستان عزیز.
    کد برنامه ی ماشین حساب ساده به زبان بیسیک رو دارم که توی پروتئوس درست اجرا میشه ولی وقتی مدارو میبندم این عبارت به صورت چشمک زن ظاهر میشه:
    0+0=0.0
    من تازه کارم و خیلی وارد نیستم شاید از چیزهای پیش پا افتاده باشه که من بلد نیستم مثلا فیوز بیت ها و اینا
    کد و عکس رو هم قرار میدم.من هر وقت این سایت سوالم رو مطرح میکنم بهم جواب میدین واقعا ازتون ممنونم
    $regfile = "m16adef.dat"
    $crystal = 1000000
    Dim A As Word
    Dim A1 As Word
    Dim A2 As Word
    Dim A3 As Word
    Dim X As String * 2
    Dim B As Word
    Dim B1 As Word
    Dim B2 As Word
    Dim B3 As Word
    Dim D As Single
    Dim K1 As Byte
    Dim K2 As Byte
    Dim C As Byte
    Config Kbd = Portb , Debounce = 50 , Delay = 100
    Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , _
    Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
    Config Lcd = 16 * 2

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

    Main:

    C = 0
    Cls
    Locate 1 , 5
    Lcd "WELCOME"

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

    Pro1:

    K1 = Getkbd()
    If K1 = 16 Then Goto Pro1
    K2 = Lookup(k1 , Dat)
    If K2 >= 10 Then
    If K2 = 40 Then Goto Main
    If K2 = 50 Then Goto Pro1
    C = 0
    Goto Pro3
    End If

    Incr C

    If C = 1 Then
    A1 = K2
    A = A1
    End If

    If C = 2 Then
    A2 = K2
    A = A1 * 10
    A = A + A2
    End If

    If C = 3 Then
    A3 = K2
    A1 = A1 * 100
    A2 = A2 * 10
    A = A1 + A2
    A = A + A3
    End If

    Cls
    Lcd A
    If C = 3 Then
    C = 0

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

    Pro2:

    K1 = Getkbd()
    If K1 = 16 Then Goto Pro2
    K2 = Lookup(k1 , Dat)
    If K2 < 10 Then Goto Pro2
    If K2 = 40 Then Goto Main
    If K2 = 50 Then Goto Pro2
    Goto Pro3
    End If
    Waitms 100
    Goto Pro1

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

    Pro3:

    K2 = K2 / 10
    Decr K2
    X = Lookupstr(k2 , Sdat)
    Cls
    Lcd A ; X
    Wait 1

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

    Pro4:

    K1 = Getkbd()
    If K1 = 16 Then Goto Pro4
    K2 = Lookup(k1 , Dat)
    If K2 >= 10 Then
    If K2 = 40 Then Goto Main
    C = 0
    Goto Pro6
    End If

    Incr C

    If C = 1 Then
    B1 = K2
    B = B1
    End If

    If C = 2 Then
    B2 = K2
    B = B1 * 10
    B = B + B2
    End If

    If C = 3 Then
    B3 = K2
    B1 = B1 * 100
    B2 = B2 * 10
    B = B1 + B2
    B = B + B3
    End If

    Cls
    Lcd A ; X ; B
    If C = 4 Then

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

    Pro5:

    K1 = Getkbd()
    If K1 = 16 Then Goto Pro5
    K2 = Lookup(k1 , Dat)
    If K1 <> 50 Then Goto Pro5
    C = 0
    Goto Pro6
    End If
    Waitms 100
    Goto Pro4

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

    Pro6:

    Select Case X

    Case Is = "/"
    D = A / B

    Case Is = "*"
    D = A * B

    Case Is = "-"
    D = A - B

    Case Is = "+"
    D = A + B

    End Select

    Cls
    Lcd A ; X ; B ; "=" ; D
    Wait 1

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

    Pro7:

    K1 = Getkbd()
    If K1 = 16 Then Goto Pro7
    Goto Main

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

    Dat:

    Data 7 , 8 , 9 , 10 , 4 , 5 , 6 , 20 , 1 , 2 , 3 , 30 , 40 , 0 , 50 , 60

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

    Sdat:

    Data "/" , "*" , "-" , "ON" , "=" , "+"

    لینک عکس
    آپلود کن,آپلود عکس,آپلود فایل و آپلود فیلم به صورت رایگان.

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    تازه وارد
    تاریخ عضویت
    Aug 2015
    نوشته ها
    2
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    پیش فرض

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



    $regfile = "m16def.dat"

    $crystal = 4000000
    Config Portc = Output
    Config Portb = Input
    Config Porta = Output

    Set Portb.1
    Set Portb.2
    Set Portb.3
    Dim A As Byte
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.3 , Rs = Porta.0
    Cls
    Locate 1 , 4
    Lcd "start"
    Lcd "**"




    Waitms 600
    Do
    If Portb.1 = 1 And Portb.2 = 1 And Portb.3 = 0 Then
    Set Portc.1
    Reset Portc.2
    Reset Portc.3
    Cls
    Locate 1 , 4
    Lcd "finder"


    Elseif Portb.1 = 0 And Pinb.2 = 1 And Portb.3 = 0 Then
    Set Portc.1
    Reset Portc.2
    Set Portc.3
    Cls
    Locate 1 , 4
    Lcd "ran<"
    Lcd "#"

    Elseif Portb.1 = 1 And Pinb.2 = 1 And Portb.3 = 1 Then
    Set Portc.1
    Reset Portc.2
    Set Portc.3
    Cls
    Locate 1 , 4
    Lcd "ran>"
    Lcd "$"


    Else
    Reset Portc.1
    Set Portc.2
    Reset Portc.3
    Cls
    Locate 1 , 4
    Lcd "apash"
    End If
    Loop
    End
    ------------------------------------------------------------------------------------------
    لطفا" به قوانین سایت احترام بگذارین و سوالتون را فقط در یه جا بپرسید
    ویرایش توسط sadmonew : 17-08-2015 در ساعت 20:06

  4. #3
    کاربر علاقه مند
    تاریخ عضویت
    Jun 2013
    نام
    mohammad
    نوشته ها
    20
    تشکر
    9
    تشکر شده 27 بار در 10 پست

    پیش فرض

    نقل قول نوشته اصلی توسط alikiller990 نمایش پست ها
    سلام به دوستان عزیز.
    کد برنامه ی ماشین حساب ساده به زبان بیسیک رو دارم که توی پروتئوس درست اجرا میشه ولی وقتی مدارو میبندم این عبارت به صورت چشمک زن ظاهر میشه:
    0+0=0.0
    من تازه کارم و خیلی وارد نیستم شاید از چیزهای پیش پا افتاده باشه که من بلد نیستم مثلا فیوز بیت ها و اینا
    کد و عکس رو هم قرار میدم.من هر وقت این سایت سوالم رو مطرح میکنم بهم جواب میدین واقعا ازتون ممنونم

    لینک عکس
    آپلود کن,آپلود عکس,آپلود فایل و آپلود فیلم به صورت رایگان.
    اینو یه امتحان بکن ببین مشکلت حل میشه

    کد:
    $regfile = "m16adef.dat"
    $crystal = 1000000
    Dim A As Word
    Dim A1 As Word
    Dim A2 As Word
    Dim A3 As Word
    Dim X As String * 2
    Dim B As Word
    Dim B1 As Word
    Dim B2 As Word
    Dim B3 As Word
    Dim D As Single
    Dim K1 As Byte
    Dim K2 As Byte
    Dim C As Byte
    Config Kbd = Portb , Debounce = 50 , Delay = 100
    Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , _
    Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
    Config Lcd = 16 * 2
    
    '*********************************
    
    Main:
    
    C = 0
    Cls
    Locate 1 , 5
    Lcd "WELCOME"
    
    '*********************************
    
    Pro1:
    
    K1 = Getkbd()
    If K1 = 16 Then Goto Pro1
    K2 = Lookup(k1 , Dat)
    If K2 >= 10 Then
    If K2 = 40 Then Goto Main
    If K2 = 50 Then Goto Pro1
    C = 0
    Goto Pro3
    End If
    
    Incr C
    
    If C = 1 Then
    A1 = K2
    A = A1
    End If
    
    If C = 2 Then
    A2 = K2
    A = A1 * 10
    A = A + A2
    End If
    
    If C = 3 Then
    A3 = K2
    A1 = A1 * 100
    A2 = A2 * 10
    A = A1 + A2
    A = A + A3
    End If
    
    Cls
    Lcd A
    If C = 3 Then
    C = 0
    
    '*********************************
    
    Pro2:
    
    K1 = Getkbd()
    If K1 = 16 Then Goto Pro2
    K2 = Lookup(k1 , Dat)
    If K2 < 10 Then Goto Pro2
    If K2 = 40 Then Goto Main
    If K2 = 50 Then Goto Pro2
    Goto Pro3
    End If
    Waitms 100
    Goto Pro1
    
    '*********************************
    
    Pro3:
    
    K2 = K2 / 10
    Decr K2
    X = Lookupstr(k2 , Sdat)
    Cls
    Lcd A ; X
    Wait 1
    
    '*********************************
    
    Pro4:
    
    K1 = Getkbd()
    If K1 = 16 Then Goto Pro4
    K2 = Lookup(k1 , Dat)
    If K2 >= 10 Then
    If K2 = 40 Then Goto Main
    C = 0
    Cls
    Goto Pro6
    End If
    
    Incr C
    
    If C = 1 Then
    B1 = K2
    B = B1
    End If
    
    If C = 2 Then
    B2 = K2
    B = B1 * 10
    B = B + B2
    End If
    
    If C = 3 Then
    B3 = K2
    B1 = B1 * 100
    B2 = B2 * 10
    B = B1 + B2
    B = B + B3
    End If
    
    Cls
    Lcd A ; X ; B
    If C = 4 Then
    
    '*********************************
    
    Pro5:
    
    K1 = Getkbd()
    If K1 = 16 Then Goto Pro5
    K2 = Lookup(k1 , Dat)
    If K1 <> 50 Then Goto Pro5
    C = 0
    Cls
    Goto Pro6
    End If
    Waitms 100
    Goto Pro4
    
    '*********************************
    
    Pro6:
    
    Select Case X
    
    Case Is = "/"
    D = A / B
    
    Case Is = "*"
    D = A * B
    
    Case Is = "-"
    D = A - B
    
    Case Is = "+"
    D = A + B
    
    End Select
    Lcd A ; X ; B ; "=" ; D
    Wait 1
    
    '*********************************
    
    Pro7:
    
    K1 = Getkbd()
    If K1 = 16 Then Goto Pro7
    Cls
    Goto Main
    
    '*********************************
    
    Dat:
    
    Data 7 , 8 , 9 , 10 , 4 , 5 , 6 , 20 , 1 , 2 , 3 , 30 , 40 , 0 , 50 , 60
    
    '*********************************
    
    Sdat:
    
    Data "/" , "*" , "-" , "ON" , "=" , "+"
    - - - Updated - - -

    نقل قول نوشته اصلی توسط soso1111 نمایش پست ها
    مشکل دارم درست کار نمی کند راهنمایی بفرمایید

    این چیه هیچ توضیحی ندادین نمیشه چیزی گفت

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •