اطلاعیه

Collapse
No announcement yet.

مشکل در ارتباط سریال با Bascom

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

    مشکل در ارتباط سریال با Bascom

    با سلام خدمت همه دوستان

    برای ارسال یک داده به کامپیوتر با استفاده از پورت سریال دچار مشکل شده ام
    چرا وقتی داده ای را ارسال میکنم بر روی صفحه ترمینال کاراکتر های نا مفهومی را دریافت می کنم
    کسی می تونه اطلاعات جامع تری برای ارتباط سریال در Bascom ارائه بده من از روی کتاب کاهه خوندم ولی ...................
    یک مثال بزنید که یک اسمی ارسال بشه وتو محیط ترمینال بشه آن را دید

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


    سلام
    شما یا فرکانس نوسانساز اصلی رو درست تنظیم نکردید یا اینکه باود ریت مناسبی رو که با ترمینال هماهنگ باشد رو انتخاب نکردید
    ِِDie for Life, Not Live to Die
    Freedom Fighter
    " ناخود گاه، هریک از ما ، از نامیرائی خود یقین دارد " . فروید

    دیدگاه


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

      با سلام
      من از کریستال 11.059 استفاده میکنم و باد ریت را هم روی 9600 تنظیم میکنم هم برای میکرو هم برای ترمینال ولی نمی دونم چرا وقتی کلمه mehdi را می فرستم در ترمینال کاراکترهای فارسی را همرا با کدهای قاطی پاتی اسکی علائم اسکی منظورمه دریافت میشه لطفا کمک کنید
      وقتی ما ازدستور Prin استفاده میکنیم چه چیزی ارسال میشه معادل اسکی یا کد هگز آن ؟؟؟؟؟


      دیدگاه


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

        سلام

        باید از دستور puts به جای print استفاده کنید. دستور print خروجیش فکر کنم string باشه واسه همین خروجیش قاطی پاتیه :smile:

        دیدگاه


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

          سلام
          فیوز بیت ها رو چک کردین ؟
          فیوز بیت های میکرو رو کاملا توی کتاب کاهه تنظیمشون رو توضیح داده . اونا رو هم دقیقا دوباره بررسی کنید . ممکنه یه چیز کوچیک از چشمتون رد شده باشه که با بررسی مجدد بهش پی ببرید.
          اگه برنامتون درست باشه
          باید توی پایه خروجی میکرو ولتاژ 5 و 0 رو مشاهده کنید. یعنی مربعی بین 0 و5 ! (یعنی پایه TXD)
          بعدش که max رو وصل می کنید باید توی پایه خروجی max مربعی بین -9 و 9 رو مشاهده کنید
          (می شه پایه 5 ،max 233 در صورتی که پایه ارسال میکرو رو به پایه 2 ، max وصل کرده باشی. و پایه 14 max 232 در صورتی که ارسال میکرو رو به پایه 11 ، max وصل کرده باشی )
          برنامه ای که حالا نوشتین و اینجا بذارین که بررسی بشه
          راستی اگه امکانش رو دارید از کریستال 3686400 استفاده کنید به همه باود ریت ها می خوره فقط باید حتما دقت کنید که باود ریت برنامه و میکرو و کامپیوتر عینا منطبق باشه . دیگه فکر نمی کنم مشکلی باقی بمونه .
          موفق باشید

          من آن گلبرگ مغرورم که می میرم ز بی آبی ولی با خفت و خواری پی شبنم نمی گردم.

          دیدگاه


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

            خب به نظر منم اگه سخت افزار مشکلی نداشته باشه باید نویز و خطاهای احتمالی رو از بین ببری.
            اول اینکه سعی کن نسبت فرکانس کاری میکرو به باود یه عدد صحیح بشه . دوم اینکه RS232 نسبت به نویز خیلی حساسه . سعی کن منابع نویز رو دور کنی.

            در ضمن حتما تنظیمات ایمولاتور بیسکام رو انجام بده

            دیدگاه


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

              با سلام
              خیل ممنون ازپاسخ های شما دوستان
              مشکل حل شد پایه GND از MAX232 به زمین وصل نشده بود که اینطوری مارو دو روز سر کار گذاشته بود

              دیدگاه


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

                دستوراتی که برای فرستدن و گرفتن اطلاعات (عدد) توسط میکرو استفاده کردید چی بود؟
                میشه برنامتون رو بنویسید برام
                Be sure your sin will find you out

                دیدگاه


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

                  کد:
                  $regfile="m8def.dat"
                  $crystal=8000000
                  $baud=9600
                  
                  do
                  
                  print"in the name of god"
                  wait 1
                  loop
                  علم چندانکه بیشتر خوانی چون عمل در تو نیست نادانی

                  دیدگاه


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

                    دستورات من اینه، مثلا میخوام 30 تا عدد به کامپیوتر بفرسته:
                    $crystal = 8000000
                    $baud = 9600
                    Dim S As Byte
                    Dim I As Byte

                    For I = 1 To 30
                    S = S + 1
                    Print S
                    Next

                    End
                    Be sure your sin will find you out

                    دیدگاه


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

                      درسته برو تست کن
                      علم چندانکه بیشتر خوانی چون عمل در تو نیست نادانی

                      دیدگاه


                        #12
                        پاسخ : مشکل در ارتباط سریال با Bascom

                        تست کردم ولی جواب نداد :angry:
                        دستورات matlab من اینه:
                        s=serial('com3','baudrate',960 0)
                        fopen(s)
                        for i=1:25
                        a(i)=fread(s,1,'uint8'
                        end
                        fclose(s)
                        Be sure your sin will find you out

                        دیدگاه

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