اطلاعیه

Collapse
No announcement yet.

مشکل عجیب در عملگر تقسیم کدویژن

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

    مشکل عجیب در عملگر تقسیم کدویژن

    سلام به همه دوستان
    من چندتا متغیر در حافظه eeprom ایجاد کردم و یک تقسیم ساده انجام میدم ، ولی به یک مشکل عجیب خوردم.
    تقسیم با همه اعداد درسته ولی با مضرب های ۵ مشکل داره
    در اصل میخوام دقیقه رو به تعداد روزها به دست بیارم ، فرمول به این شکل هست:
    ساعت کاربر ضرب در شصت (که میشه به دقیقه)
    بعد دقیقه تقسیم به تعداد روز میشه
    مثالی که مشکل دارم: 1*60=60 , , , , 60/5=12
    الان طبق محاسبات باید دوازده بدست بیاد ولی من داخل کدویژن که کد رو میزنم بعضی مواقع درست حساب میکنه و بعضی مواقع جواب صفر میشه!!!!
    مشکل از کجاست؟! چون همیشه هم مشکل نداره ، بعضی وقتا درسته و بعضی وقتا صفر نشون میده.
    متغیر ها رو هم از نوع char معرفی کردم ، حتی int و float هم تست کردم ولی درست نشد.

    #2
    پاسخ : مشکل عجیب در عملگر تقسیم کدویژن

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

    اولش گفتید چند متغیر در eprom دارم ...
    اگر متغیرهاتون رو دارید از اونجا مستقیم میخونید و تاخیر های eprom رو لحاظ نکردین میتونه عملکرد پیش بینی ناپذیر بشه

    دیدگاه


      #3
      پاسخ : مشکل عجیب در عملگر تقسیم کدویژن

      نوشته اصلی توسط Amie.s.m نمایش پست ها
      دوست عزیز بهتره کد کامل اون بخشی که مشکل دارید رو قرار بدید ...

      اولش گفتید چند متغیر در eprom دارم ...
      اگر متغیرهاتون رو دارید از اونجا مستقیم میخونید و تاخیر های eprom رو لحاظ نکردین میتونه عملکرد پیش بینی ناپذیر بشه
      ممنون ، پس یعنی از یک متغیر های دیگه استفاده کنم و بعد مقدار اونها رو داخل eeprom بریزم؟

      دیدگاه


        #4
        پاسخ : مشکل عجیب در عملگر تقسیم کدویژن

        اون کار ( استفاده از متغیر واسط ) که پیش فرضه . شما بخواهید هم نمیتونید فلان آدرس ایپیرام رو بعنوان متغیر در نظر بگیرید **، متغیرها یا در رم تعریف میشن یا رجیسترهای سی پی یو

        سوای اون خوندن و بخصوص نوشتن در ایپیرام تاخیر نسبتا زیاد داره ، یا باید فلگهای تکمیل فرایند رو مانیتور کنید یا تاخیر کافی بعد از هر بار خوندن و نوشتن ایپیرام منظور کنید ( بسته به کلاک میکرو رنج ۲ تا ۵ میلی ثانیه است )

        دیدگاه

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