اطلاعیه

Collapse
No announcement yet.

کمک فوری در مورد ارتباط با پورت سریال

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

    کمک فوری در مورد ارتباط با پورت سریال

    سلام به همه دوستان .
    من یه پروژه دارم که توی اون باید کامپیوتر اعدادی بین 0 تا 200 رو ارسال کنه و بعد میکرو این اعداد رو دریافت کنه و اگر کمتر از 100 بود یه کاری انجام بده و اگه بین 100 تا 200 بود یه کار دیگه . اما توی همون قسمت اول که دریافت عدد از پورت هست مشکل دارم . برنامه زیر رو برای میکرو نوشتم اما درست جواب نداد . مشکل من قبل از End هست و از End به بعد مهم نیست .
    راستی MAX232 رو هم با خازن های 10uf/16v بایاس کردم .
    لطفا کمک کنید .

    $regfile = "m8def.dat"
    $crystal = 8000000
    $baud = 9600

    Config Portb = Output
    Config Pinc.0 = Output : Config Pinc.1 = Output

    En1 Alias Portc.0 : En2 Alias Portc.1

    Dim A As String * 3 , B As Byte , C(2) As Byte , D As Single , Dd As Byte , E As Byte , F(2) As Byte , G(2) As Byte , I As Byte , V_h As Byte

    F(1) = 255 : F(2) = 255 : G(1) = 4 : G(2) = 4

    Do

    First:

    A = Inkey()
    If A = "" Then
    Goto First
    End If

    B = Val(a)

    If B > 100 Then
    B = B - 100 : V_h = 2 : Reset En2 : Set En1
    Elseif B < 100 Then
    V_h = 1 : Reset En1 : Set En2
    Else
    Goto First
    End If

    D = B - C(v_h)

    If D > 0 Then
    Dd = D -1 : Gosub Soudi
    Elseif D < 0 Then
    Dd = Abs(d) : Dd = Dd - 1 : Gosub Nozooli
    Else
    Goto First
    End If

    Loop

    End

    Soudi:

    For I = 0 To Dd

    If F(v_h) = 3 Then
    F(v_h) = 255
    End If

    Incr F(v_h) : E = 2 ^ F(v_h) : Portb = E : Waitms 70

    Next I

    G(v_h) = F(v_h)
    C(v_h) = B

    Return

    Nozooli:

    For I = 0 To Dd

    If G(v_h) = 0 Then
    G(v_h) = 4
    End If

    Decr G(v_h) : E = 2 ^ G(v_h) : Portb = E : Waitms 70

    Next I

    F(v_h) = G(v_h)
    C(v_h) = B

    Return
    [glow=blue,2,300]آنقدر به تاريكي لعنت نفرستيد ، يك شمع روشن كنيد. [/glow]

    #2
    پاسخ : کمک فوری در مورد ارتباط با پورت سریال

    لطفا جواب بدین . کارم خیلی گیره .
    [glow=blue,2,300]آنقدر به تاريكي لعنت نفرستيد ، يك شمع روشن كنيد. [/glow]

    دیدگاه


      #3
      پاسخ : کمک فوری در مورد ارتباط با پورت سریال


      اگه یه سرچی توی همین سایت بکنی کلی پروزه این تیپی پیدا می کنی
      این پروژه ها خیلی کمکت می کنه تا ایرادات رو بگیری




      اگه مردم می دونستن زمان چقدر با ارزشه دیگه هیچ وقت کفش بند دار نمی خریدن البرت انیشتن

      دیدگاه


        #4
        پاسخ : کمک فوری در مورد ارتباط با پورت سریال

        تو برنامت که مشکل خاصی نیست ( البته ظاهرا که اینطوره )

        خازن های مکثت درسته حالا جهت های خازن هارو چک کن یعنی از سخت افزارت مطمعن شو

        مطمعنی برنامه ای که برا کامپیوتر نوشتی درس کار میکنه؟

        baud هر دو سیستم برابر هست؟

        با وی بی نوشتی اگه آره سورسشو بذار شاید مورد از سورس برنامته؟

        .
        .
        .

        دیدگاه


          #5
          پاسخ : کمک فوری در مورد ارتباط با پورت سریال

          آقا من فهمیدم مشکل چیه . مشکل اینه که اگر مثلا من بخوام عدد 85 رو از کامپیوتر بفرستم ، کامپیوتر اون رو به صورت 8 و بعد 5 میفرسته . اما من میخوام یک جا 85 بفرسته . در ضمن من با c# نوشتم .
          لطفا کمک کنید .
          [glow=blue,2,300]آنقدر به تاريكي لعنت نفرستيد ، يك شمع روشن كنيد. [/glow]

          دیدگاه


            #6
            پاسخ : کمک فوری در مورد ارتباط با پورت سریال

            برای این کار باید اول اونو String کنی بعد بفرستی
            A-Hosseini

            دیدگاه


              #7
              پاسخ : کمک فوری در مورد ارتباط با پورت سریال

              ببین دوست من کامپیوتر بصورت کد هگز ارسال میکنه یعنی به جای عدد 100 دسیمال 64 هگز را ارسال میکنه حالا شما باید بیای این مطلب را هم لحاظ کنی
              فرزندم در راه است

              دیدگاه


                #8
                پاسخ : کمک فوری در مورد ارتباط با پورت سریال

                میگم یه ال سی دی به میکروت بزن و متغییر a رو تو ال سی دی نشون بده ببین چه عددی از کامپیوتر به میکرو فرستاده میشه

                البته تو ویبی آخر متن ارسالیت حتما chr(13) رو هم بذار.

                تو C# رو ؟؟
                .
                .
                .

                دیدگاه


                  #9
                  پاسخ : کمک فوری در مورد ارتباط با پورت سریال

                  با سلام مجدد .
                  ممنون از راهنمایی های دوستان . اما من هنوز مشکلم حل نشده . یه سری چیزا فهمیدم اما نمی دونم اشکال چیه . اول اینکه من تو C# عددی رو که میخوام بفرستم از نوع string هست و فکر میکنم c# هم به صورت رشته میفرسته ولی میکرو اون رو کاراکتر - کاراکتر دریافت میکنه .
                  در ضمن یه جایی خوندم که اگه به جای دستور inkey() از input استفاده کنم این مشکل ( یعنی دریافت کاراکتری ) حل میشه . من با inkey() که امتحان میکنم یه چیزایی دریافت میکنه اما با input هیچی دریافت نمیکنه .

                  :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry: :angry:
                  [glow=blue,2,300]آنقدر به تاريكي لعنت نفرستيد ، يك شمع روشن كنيد. [/glow]

                  دیدگاه


                    #10
                    پاسخ : کمک فوری در مورد ارتباط با پورت سریال

                    دویست عزیز توی help بسکام usart رو سرچ کن و مثالشو ببین.حتمآ کمکت میکنه.اگه بازم مشکلت حل نشد در خدمتم

                    دیدگاه


                      #11
                      پاسخ : کمک فوری در مورد ارتباط با پورت سریال

                      سلام دوستان
                      البته من با بسکام زیاد کار نکردم اما تو چند پروژه قبلی که داشتم و برنامشون با بسکام بود اول برنامه ارتباط سریال رو config میکردیم ، مثلا :
                      Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
                      من تو برنامه شما هیچ config ی برای ارتباط سریال ندیدم ... فکر کنم مشکل از اون باشه ... البته از اساتید محترم مذر خواهی می کنم که در حضور اونها اضحار نظر می کنم ...
                      Share OR Die

                      دیدگاه

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