اطلاعیه

Collapse
No announcement yet.

تغییر باود در ارتباط سریال

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

    تغییر باود در ارتباط سریال

    دوستانی که بلدن خواهشا کمک کنند.
    همانطور که همه میدونیددر ارتباط سریال برای دریافت و ارسال صحیح . نیاز به تعریف باود ریت داریم حالا تو زبانpicbasic برای ارتباط سریال با دستگاههایی که از باودهای متفاوتی استفاده میکنند چه باید کرد؟ مثلا در دستور
    SERIN Portc.7,N2400,B
    حالا اگر بخواهیم بجای این n2400بخواهیم از مثلا230400 استفاده کنیم باتوجه به اینکه تولیست مدهای این دستور نیست چاره چیه؟
    با دستور DEFIN DEBUG_MODE 230400 نیز مشکل حل نخواهد شد.

    #2
    پاسخ : تغییر باود در ارتباط سریال

    کمپایلرتو عوض کن. MIKROC BASIC این سرعت رو پوشش میده

    دیدگاه


      #3
      پاسخ : تغییر باود در ارتباط سریال

      با یه روش دیگه حلش کردم. اینم تست میکنم.سپاس از لطفتون

      دیدگاه


        #4
        پاسخ : تغییر باود در ارتباط سریال

        بسمه تعالی

        بنده به دلیل گرفتاری ها و مشغله های فراوان شغلی و زندگی ، توفیق بررسی و حضور در تالار گفتگوها را کمتر دارم. لذا اگر جواب من به موقع نیست به دلیل گرفتاری من بوده است.

        خیلی خوشحالم که نوشته بودید که مشکل تان از جای دیگری حل شده است. اما تلاش من بر این است تا سعی کنم در حداکثر توانم و با امکانات ممکن به بررسی این مسئله مهم بپردازم.

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

        در حوزه بیسیک پرو چندین تابع وجود دارد که ارسال و دریافت اطلاعات سریال انجام می دهد .
        SERIN/SEROUT
        SERIN2/SEROUT2
        این توابع ، دارای این خاصیت هستند که روی هر پین میکرو دریافت و ارسال را انجام دهند. پس به شکلی دارای ترفندی نرم افزاری هستند. زیرا الزاما از پین ها 6 و 7 روی پورت C استفاده نمی کنند. و منطقا اینکه دارای محدودیت هایی هستند از جمله بسته بودن نرخ ارسال داده یا BaudRate محدود دارند.

        به شکلی دیگر می توان گفت که ارتباط سریال دارای سخت افزاری است که روی پین ها 6 و 7 پورت سوم PIC ها قرار دارد. پس برای اینکه از سخت افزارهای مختص ارتباط سریال استفاده کنیم باید از توابع
        HSERIN و HSEROUT استفاده کنیم. در این توابع دیگر محدودیت های سرعت وجود ندارد. اما حواستان باید به تنظیمات همه رجیسترهای USART اعم از RCSTA و TXSTA و SPBRG و غیره باشد.
        یک منبع خوب ، مطالعه HELP خود نرم افزار برای HSERIN & HSEROUT است.

        برای اطلاعات بیشتر در خصوص این رجیستر ها می توانید این وبسایت را ببینید:

        http://www.microcontrollerboard.com/pic_serial_communication.html

        ( یا فایل پی دی اف آن )

        برای رسیدن به این تنظیمات یک نرم افزاری وجود دارد که من از آن استفاده می کنم که قابل دانلود هم هست اگر که متقاضی داشت یک جایی پلودش می کنیم به نام PicMultiCalc که بیشتر محاسبات اینجنین را خودش انجام می دهد.
        سخن آخر:
        هر کسی که از PicBASIC استفاده می کند باید فایل PICmultiCalc را به عنوان ابزاری دائمی بر روی نوار ابزار ویندوز خود قرار دهد – Darrel Taylor


        پی نوشت : محاسبات ارسال سریال در فایل PICmultiCalc.exe و سایر محاسبات مورد نیاز از قبیل PWM ، تایمر ها ، EUSART و غیره در این فایل توسط شخصی با نام مستعار Mister_e قرار داده شده است.
        والسلام علي من اتبع الهدي .... و درود بر کساني که راه هدايت را دنبال مي کنند.

        هوشمندانه بپرسيد...

        دیدگاه


          #5
          پاسخ : تغییر باود در ارتباط سریال

          از الطاف تمامی دوستان و سروران بزرگوار بی نهایت متشکر و سپاسگذارم.

          دیدگاه

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