اطلاعیه

Collapse
No announcement yet.

کمک در برنامه نویسی یک برنامه ( مهم)

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

    کمک در برنامه نویسی یک برنامه ( مهم)

    سلام
    در برنامه ای من درپایین قرار می دهم مشکالی که دارم این است که به یکی از پایه های میکرو پالسی وارد میشود و تعداد آن در ال سی دی نمایش داده می شود تا اینج مشکلی ندارم حال میخواهم این عدد بدست آمده را بر 40 تقسیم کرده و یک عدد اعشار به وجود می آید بعد میخواهم عدد اعشار را روند کنم و یک عدد اعشار دو رقمی را به وجود بیاورم بعد از آن می خواهم عدد اعشار را ربع کنم مثلا عدد اعشارم بین 1 تا 25 بود در متغیرم اعشار را 25 نشان دهد و ... بعد که اعشار ربع شد در کنار عدد دیگر صحیح قرار بگیرد و برناهمه دوباره ادامه دارد ولی اهنوز در این مرحله مشکل دارم که عدد صحیح را ربع کنم در زیر برناه ای رو نوشتم تا جایی که عدد اعشار را جدا میکنم در پرتیوس مشکلی ندارم ولی وقتی از select case استفاده میکنم بیسکام خطا میگیره نمی دونم مشکل کجاست کسی می تونه راهنمایی کنه چیکار کنم ممنون میشم
    $regfile = "m32def.dat"
    $crystal = 8000000
    $baud = 9600

    Config Timer1 = Counter , Edge = Falling , Capture Edge = Rising , Noise Cancel = 0
    Config Portb.1 = Input
    Config Portd.6 = Input
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.1 , Rs = Porta.0
    Enable Icp1
    On Icp1 Q1
    Dim A As Word
    Dim B As Word
    Dim X As Single
    Dim Z As String * 1
    Dim E As String * 1
    Dim F As String * 1
    A = Capture1


    Enable Interrupts
    Main:
    Counter1 = 0
    Do

    If Pind.6 = 1 Then
    Enable Icp1
    Elseif Pind.6 = 0 Then
    Disable Capture1
    If Portb.1 <> 0 Then
    Print A
    Lcd A
    Waitms 100
    End If

    End If

    Loop
    End
    Q1:
    A = Capture1
    Print A
    Lcd A
    Wait 3
    Cls
    Counter1 = 0
    X = A / 40
    Lcd X
    Wait 3
    Cls
    Z = Fusing(x , "##.##&quot
    Lcd Z
    Wait 3
    Cls
    E = Mid(z , 4 , 2)
    Lcd E
    Wait 2
    Cls
    F = Mid(z , 1 , 2)
    Lcd F
    Wait 2
    Cls


    Select Case E
    Case 1 To 25 :
    E = 25
    Lcd E

    Case 26 To 50 :
    E = 50
    Lcd E

    Case 51 To 75:
    E = 75
    Lcd E

    Case 76 To 99 :
    E = 00
    Incr F
    Lcd E


    End Select


    Return


    #2
    پاسخ : کمک در برنامه نویسی یک برنامه ( مهم)

    نوشته اصلی توسط rayanelectronic
    ولی وقتی از select case استفاده میکنم بیسکام خطا میگیره نمی دونم مشکل کجاست کسی می تونه راهنمایی کنه چیکار کنم ممنون میشم
    select case متغیر نوع string قبول نمیکنه
    من نمىآ‌توانم فرضیه «بىآ‌اخلاقى انسان» را بپذیرم، و من اخلاق را منحصرا امرى انسانى و متعلق به انسان مىآ‌دانم که هیچ نوع قدرت مافوق انسانى در پشت آن وجود ندارد
    آلبرت اینشتین
    منبع: http://fa.wikiquote.org

    دیدگاه


      #3
      پاسخ : کمک در برنامه نویسی یک برنامه ( مهم)

      سلام دوست عزیز

      دست از سر این نرم افزار بی فایده bascom بردارید و با Atmel Studio یا نهایتا با CodeVision AVR کد بنویسید

      ببخشید البته :biggrin:
      خداوندا
      از بچگی به من آموختندهمه را دوست بدار حال که بزرگ شده ام و کسی را دوست می*دارم می گویند:
      فراموشش کن
      دکتر علی شریعتی

      دیدگاه

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