اطلاعیه

Collapse
No announcement yet.

مشکل printf در ارسال اعداد float در میکروکنترلر PIC و کامپایلر MPLAB XC8

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

    مشکل printf در ارسال اعداد float در میکروکنترلر PIC و کامپایلر MPLAB XC8

    سلام دوستان
    وقتتون بخیر
    من میخوام ی دونه عدد اعشاری رو از طریق پورت سریال بفرستم.
    تابع printf وقتی عبارت %F (که برای اعداد FLOAT ) هست رو داخلش قرار میدم ارور میده .
    کامپایلر من mplab xc8 و میکروکنترلری که انتخاب کردم PIC16F1823 هست.
    کسی تونسته این خطارو حل بکنه؟

    #2
    پاسخ : مشکل printf در ارسال اعداد float در میکروکنترلر PIC و کامپایلر MPLAB XC8

    دوستان

    دیدگاه


      #3
      پاسخ : مشکل printf در ارسال اعداد float در میکروکنترلر PIC و کامپایلر MPLAB XC8

      نوشته اصلی توسط REZZA_DEHGHAN98 نمایش پست ها
      سلام دوستان
      وقتتون بخیر
      من میخوام ی دونه عدد اعشاری رو از طریق پورت سریال بفرستم.
      تابع printf وقتی عبارت %F (که برای اعداد FLOAT ) هست رو داخلش قرار میدم ارور میده .
      کامپایلر من mplab xc8 و میکروکنترلری که انتخاب کردم PIC16F1823 هست.
      کسی تونسته این خطارو حل بکنه؟
      سلام
      پردازش اعداد ممیز شناور عملیات نسبتا سنگینیه؛ تبدیل اونها به رشته هم همینطور. بنابر این نرم افزارهایی که برای میکروکنترلرهای با قدرت پایین ارائه میشه، به شکل پیش فرض این قابلیت توش غیرفعاله که حجم زیادی از حافظه برنامه اشغال نکنه.
      من خودم با تا حالا با XC8 کار نکردم؛ اما سرچ کردم و به لینکی که میفرستم رسیدم که ابتداش در مورد مشکل شماس. لازمه طبق راهنما تغییراتی روی سوییچ های لینکر انجام بدید. امیدوارم همین کار مشکلتون رو حل کنه:
      This repository provides an MPLAB® X solution for a basic {{printf}} demo using the USART interface to demonstrate the floating-point usage. - microchip-pic-avr-examples/avr128da48-cnano-printf-flo...

      دیدگاه


        #4
        پاسخ : مشکل printf در ارسال اعداد float در میکروکنترلر PIC و کامپایلر MPLAB XC8

        نوشته اصلی توسط REZZA_DEHGHAN98 نمایش پست ها
        سلام دوستان
        وقتتون بخیر
        من میخوام ی دونه عدد اعشاری رو از طریق پورت سریال بفرستم.
        تابع printf وقتی عبارت %F (که برای اعداد FLOAT ) هست رو داخلش قرار میدم ارور میده .
        کامپایلر من mplab xc8 و میکروکنترلری که انتخاب کردم PIC16F1823 هست.
        کسی تونسته این خطارو حل بکنه؟
        این عبارات درصد دار (که در داخل متن قرار میگیرند)، اگر درست نباشه ، عین عبارت در خروجی چاپ میشه
        کمپایلر چه پیام خطایی میده ؟

        دیدگاه


          #5
          پاسخ : مشکل printf در ارسال اعداد float در میکروکنترلر PIC و کامپایلر MPLAB XC8

          من برای حل این مشکل از یک کتابخونه که در github بود و در ادامه لینکش رو میذارم استفاده کردم.
          اعداد اعشاری رو به رشته تبدیل کردم و بعدش رشته رو از طریق printf ارسال کردم و مشکلم حل شد.
          اسم تابع درون کتابخونه Str.h به این صورت هست:
          Str_parseFloatFix

          Str Library. Contribute to Ali-Mirghasemi/Str development by creating an account on GitHub.

          دیدگاه

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