اطلاعیه

Collapse
No announcement yet.

مشکل ساده و باقالی در کدویژن؟!

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

    مشکل ساده و باقالی در کدویژن؟!

    سلام به روی ماهت

    من کد زیر رو توو کد ویژن زدم برای اینکه مثلا یه تاخیر 500 میلی ثانیه ای داشته باشم. از هیچ کریستالی نمیخام استفاده کنم. میکرومم اتمگا8 است.

    اما وقتی مدار کار میکنه، تاخیر به جای 500 میلی تقریبا یکی دو ثانیه میشه!! چرا آخه؟؟! :angry: :angry: :angry:

    باید چیکار کرد؟

    #include <delay.h
    ...
    porta.0=1
    delay_ms(500
    ...
    بابا هی این امضای منو پاک نکن! حساسیت داری؟!
    "سبز سبــــزم ریشه دارم! من درختــــــــــــی استوارم!"

    #2
    پاسخ : مشکل ساده و باقالی در کدویژن؟!

    این مشکل خیلی طبیعی هستش چون که زمان هاییی که در برنامه نوشته می شوند دقیق نیستند شما باید از یک RTC استفاده کنید که هم میشه از خود تایمر میکرو به این عنوان استفاده کرد و هم میشه از یک RTC خارجی مثل DS1307 استفاده کرد نکته اینه که معمولا در استفاده از RTC باید یک کریستال ساعت (32.768 کیلو هرتز)استفاده کرد شما با این روش می توانید به زمان های دقیقی دست پیدا کنید

    دیدگاه


      #3
      پاسخ : مشکل ساده و باقالی در کدویژن؟!

      خب آخه اینقدر خطا؟؟؟؟!! من می نویسم 500 میلی ثانیه یهو توو عمل میشه 3 ثانیه!! نه!اگر اینقدر خطا داشت که اصلا استفاده ازش بی معنی می شد من مطمئنم یه جای کارم می لنگه اما نمی دونم کجاشه؟
      بابا هی این امضای منو پاک نکن! حساسیت داری؟!
      "سبز سبــــزم ریشه دارم! من درختــــــــــــی استوارم!"

      دیدگاه


        #4
        پاسخ : مشکل ساده و باقالی در کدویژن؟!

        نوشته اصلی توسط aminr67
        سلام به روی ماهت

        من کد زیر رو توو کد ویژن زدم برای اینکه مثلا یه تاخیر 500 میلی ثانیه ای داشته باشم. از هیچ کریستالی نمیخام استفاده کنم. میکرومم اتمگا8 است.

        اما وقتی مدار کار میکنه، تاخیر به جای 500 میلی تقریبا یکی دو ثانیه میشه!! چرا آخه؟؟! :angry: :angry: :angry:

        باید چیکار کرد؟

        #include <delay.h
        ...
        porta.0=1
        delay_ms(500
        ...
        بالاخره از کریستال داخلی استفاده میکنید دیگه. مقدارش رو رو چند قرار دادی؟

        دیدگاه


          #5
          پاسخ : مشکل ساده و باقالی در کدویژن؟!

          سلام
          یه فیوز بیت هست که کریستال( چه داخلی، چه خارجی) رو تقسیم بر هشت می کنه. مشکل شما هم ظاهراً همینه.
          اسمش c1 هست. احتمالاً مشکلوتون از اون جاست. این فیوز بیت رو غیر فعال کنین.
          برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
          http://hosseinwalkingday.com

          دیدگاه


            #6
            پاسخ : مشکل ساده و باقالی در کدویژن؟!

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

            تمام فیوزبیت ها به طور پیش فرض unchecked هستند.

            بابا هی این امضای منو پاک نکن! حساسیت داری؟!
            "سبز سبــــزم ریشه دارم! من درختــــــــــــی استوارم!"

            دیدگاه


              #7
              پاسخ : مشکل ساده و باقالی در کدویژن؟!

              سلام
              عزیز زودتر بگو.
              این جا رو بخون :NO:
              http://www.eca.ir/forum2/index.php?topic=20473.0
              برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.
              http://hosseinwalkingday.com

              دیدگاه


                #8
                پاسخ : مشکل ساده و باقالی در کدویژن؟!

                با سلام
                شما برنامه رو شبیه سازی کردین یا عملی کار کردین؟
                اگه عملی کار کردین فیوز بیت هاتون رو دستکاری کردین
                اگه نه
                مشکل زمانی شما به خاطر اینه که مقدار فرکانس مقدارش 1 مگاهرتزه (فیوز بیت هایCKSEL بصورت پیش فرض روی نوسان ساز RC کالیبره شده داخلی و مقدار 1 مگاهرتز تنظیمه CKSEL3..0=0001 )
                ولی وقتی از کدویژن استفاده کردین فرکانس میکرو روی مقدار دیگه ای (توی بخش جادوگرکد Codewizard) تنظیمه

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

                دیدگاه

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