اطلاعیه

Collapse
No announcement yet.

مشکل با تقسیم اعداد در بسکام؟

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

    مشکل با تقسیم اعداد در بسکام؟

    دوستان در دستورات زیر مقدار Shenavar در سیمولینک بسکام برابر 0.6 میشه
    اما همین رو وقتی رو میکرو میریزم و روی LCD نمیایش میدم میشه 0.59999....!!!
    کد:
    Dim Mon As Long 
    Dim shenavar As Single 
    mon=6 
    shenavar = Mon / 10
    کسی میدونه مشکل از چیه؟
    مرسی
    آموزش ساخت جعبه برای مدار با نرم افزار Corel Draw - آموزش طراحی تابلو ثابت با Corel Draw و LED Tool - آموزش کرک LED Tool

    116 کتابخانه مورد نیاز برای Altium Designer

    از دروغ متنفرم؛ هرچند در این مملکت به جرم صداقت، کودن نامیده شوم.

    #2
    پاسخ : مشکل با تقسیم اعداد در بسکام؟

    نوشته اصلی توسط masoud_m_bf
    دوستان در دستورات زیر مقدار Shenavar در سیمولینک بسکام برابر 0.6 میشه
    اما همین رو وقتی رو میکرو میریزم و روی LCD نمیایش میدم میشه 0.59999....!!!
    کد:
    Dim Mon As Long 
    Dim shenavar As Single 
    mon=6 
    shenavar = Mon / 10
    کسی میدونه مشکل از چیه؟
    مرسی
    مشکل از تعداد زیاد بیت های اعداد اعشاری است. اگه باینری 06 بنویسی چنین چیزی میشه : ...100110011001
    همیین طور ادامه داره خوب ادامه اینها توی SINGLE جا نمیشه.واسه همینه که وقتی به اعشاری تبدیل میشه .5999 میاد.





    یادش بخیر یه وقتایی هر روز میومدم اینجا !

    دیدگاه


      #3
      پاسخ : مشکل با تقسیم اعداد در بسکام؟

      خیلی متشکرم
      اما راه حل؟
      اینم بگم که دستور Fusing رو هم میکرو اجرا نمیکنه
      آموزش ساخت جعبه برای مدار با نرم افزار Corel Draw - آموزش طراحی تابلو ثابت با Corel Draw و LED Tool - آموزش کرک LED Tool

      116 کتابخانه مورد نیاز برای Altium Designer

      از دروغ متنفرم؛ هرچند در این مملکت به جرم صداقت، کودن نامیده شوم.

      دیدگاه


        #4
        پاسخ : مشکل با تقسیم اعداد در بسکام؟

        نوشته اصلی توسط masoud_m_bf
        اینم بگم که دستور Fusing رو هم میکرو اجرا نمیکنه
        مال من که کار میکنه :


        کد:
        $sim
        $regfile = "m32def.dat"
        $crystal = 4000000
        Dim S As Single , A As Long , B As String * 5
        Cls
        A = 6
        Do
        S = A / 10
        B = Fusing(s , "#.##")
        Locate 1 , 1 : Lcd "HELLO"
        Locate 2 , 1 : Lcd B
        Loop
        End
        توی پیوست فایل پروتیوسش و بیسیکش هم هست.


        فایل های پیوست شده
        یادش بخیر یه وقتایی هر روز میومدم اینجا !

        دیدگاه


          #5
          پاسخ : مشکل با تقسیم اعداد در بسکام؟

          اقا راضی به زحمت نبودیم :redface:
          مرسی واقعا
          ممنون
          آموزش ساخت جعبه برای مدار با نرم افزار Corel Draw - آموزش طراحی تابلو ثابت با Corel Draw و LED Tool - آموزش کرک LED Tool

          116 کتابخانه مورد نیاز برای Altium Designer

          از دروغ متنفرم؛ هرچند در این مملکت به جرم صداقت، کودن نامیده شوم.

          دیدگاه


            #6
            پاسخ : مشکل با تقسیم اعداد در بسکام؟

            مشکل در نمایش دما با lm35
            سلام من در بیسکام مدار زیر را که دما را نمایش می دهد ساختم
            $regfile = "m8def.dat"
            $crystal = 1000000
            Config Lcd = 16 * 2
            Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.0 , Rs = Portd.1
            Cursor Off
            'Config Adc = Single , Prescaler = Auto , Reference = Internal
            Dim A As Word
            Dim B As Word
            Dim C As Integer
            Do
            Start Adc
            Cursor Off
            A = Getadc(3)
            B = Getadc(4)
            C = A - B
            C = C / 4
            'C = C / 2
            Locate 1 , 1 : Lcd ; C : Waitms 50
            Loop
            End
            وقتی مجددا مدا ردیگری را درست کردم دستگاه مقدار دما را کمتر نمایش می دهد حتی lm35 وای سی انرا عوض کردم بازهم مقدار دما را درست نمایش نمی دهذ ایا کسی می دونه علت چیه و ضمنا چطور میشه انرا کالیبره کرد و دما را با دمای اطاق تطبیق داد ممنون
            جدیدترین ویرایش توسط aspgh3; ۱۰:۳۵ ۱۳۹۷/۰۴/۳۰.

            دیدگاه


              #7
              پاسخ : مشکل با تقسیم اعداد در بسکام؟

              درود ، بسکام کار نکردم ، چرا متغیر که عدد میگیره نوعش word هست ؟ چرا دوتا adc رو می*خونید ؟ به دومی چی وصله ؟ چرا این دو مقدار رو از هم کم میکنید ؟
              تقسیم به ۴ راحت ترین فرمول بدست آوردن دمای lm35 . کلی فرمول دقیق تر در اینترنت موجوده
              نهایتا اگر صحت دما برای شما مهمه از سنسور های دیجیتال مثل ds18b20 استفاده کنید .

              دیدگاه


                #8
                پاسخ : مشکل با تقسیم اعداد در بسکام؟

                با سلام برای شروع یک وسیله اندازی گیری مرجع برای خودتون تهیه کنید میشه از ترمومترهای گیجی خیلی دقیق استفاده کرد من خودم ده سال پیش یکی خریدم اگر گران هست برای شما با استفاده از ds18b20 که خیلی هم دقیق هست یک ترمومترهای مرجع بسازید در کل lm35سنسور مناسبی برای اندازه گیری دما نیست و ای مطلب را تجربه خواهید کرد برای شروع لزومی به استفاده از دو adc نیست با یک adc اندازه گیری را شروع کنید
                قصه زندگی همیشه با مدادی که ما دوست داریم نوشته نمی شه .....

                دیدگاه

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