اطلاعیه

Collapse
No announcement yet.

مشکل در ساعت!

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

    مشکل در ساعت!

    دوستان من خواستم روی قسمتی از LCD ساعت نمایش بدم. در برنامش با استفاده از delay_ms(1000); x یه تاخیر ایجاد کردم. اما ساعت یه ثانیه یک ثانیه پیش نمیرفت! و سرعتش بیشتر از 1 ثانیه بود! مثلا 1 ثانیه زمان واقعی رو در حد 0.5 ثانیه (مثلا) طی میکرد! از کریستال 12 مگ استفاده کردم و زبان برنامه نویسی هم WinAvr هست. چرا اینطوریه؟

    ممنونم...
    http://ceworld.ir/images/ads/dornablogcom_ads.gif

    #2
    پاسخ : مشکل در ساعت!

    :cry: :cry: :cry2: :cry2:
    http://ceworld.ir/images/ads/dornablogcom_ads.gif

    دیدگاه


      #3
      پاسخ : مشکل در ساعت!

      درمورد اینکه چرا دستور تاخیر اینقدر اشتباه داره ممکنه دلیلش این باشه که شما فیوز بیت کریستال رو درست انتخاب نکردید
      ولی کلا دستورات تاخیری دقت زیادی ندارند ولی نه اینقدر
      شما هم بهتره برای ساعت از تایمر استفاده کنید ویا از ds1307
      پروردگارا: به من زیستنی عطا کن که در لحظه مرگ بر بی ثمری لحظه ای که برای زیستن گذشته است حسرت نخورم، و مردنی عطا کن که بر بیهودگیش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست میداری

      دیدگاه


        #4
        پاسخ : مشکل در ساعت!

        دوست عزیز
        دستور های تاخیر برای کارهای دقیق هرگز قابل اعتماد نیستند
        برای انکه زمان رو مخصوصا با دقت صدم ثانیه با دقت اندازه بگیری بهترین روش استفاده از RTC خارجی با کریستال ساعتی است
        همون طوری که آقای کاخکی گفتند DS1307 در دسترس ترین اونهاست که در همه کتابها نیز توضیحات کامل با کتابخونش هست

        دستورهای تاخیر به فرکانس کاری میکرو بشدت وابسته است و معمولا نزدیک فرکانس 4MHz(3.6864MH)s دقیق عمل میکنه و در فرکانس های بالای 8 مگ خطا بیشتر میشه.

        دیدگاه

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