উত্তর:
তারা millis()
তাত্ক্ষণিক মানটি কঠোরভাবে পড়ায় বিরোধিতা করে না TCNT0
যেখানে পিডাব্লুএমএম টাইমার 0 এর মাধ্যমে হার্ডওয়্যারটির কোনওটির মানকে প্রভাবিত না TCNT0
করে মানগুলির সাথে মানটির তুলনা করার ক্ষমতা ব্যবহার OCR0x
করে।
কেবলমাত্র @ Ignacio এর উত্তর যুক্ত করতে যা আপনার প্রশ্নের সরাসরি উত্তর দিয়েছে। আপনি যে "দ্বন্দ্ব" এর কথা Timer0
বলছেন তা প্রেসক্যালারের সাথে সম্পর্কিত।
বেশিরভাগ ক্ষেত্রে, আপনি পিডব্লুএম এর সাথে কোনও সমস্যা ছাড়াই those পিনগুলি (ঘটনাক্রমে ইউএনওতে পিন 5 এবং 6) ব্যবহার করতে পারেন এবং সঠিক মানটি পড়তে পারেন millis()
(পাশাপাশি প্রত্যাশিত বিলম্বও পাবেন delay
)
আপনি যে সমস্যার মধ্যে পড়েছেন তা হ'ল যদি আপনি প্রেসকেলারটি পরিবর্তন করতে চান (সাধারণত পিডব্লিউএম সংকেতের ফ্রিকোয়েন্সিটি পরিবর্তন করতে চান)। আপনি যদি এটি পরিবর্তন করেন তবে আপনি সরাসরি গণনা এবং রিপোর্টিং millis()
এবং দৈর্ঘ্যের উপর প্রভাব ফেলবেন delay(x)
।
millis ()
বা যে delay ()
কোনও উপায়ে
millis()
কেবল টাইমার 0 ওভারফ্লো গণনা ব্যবহার করে।micros()
মধ্যে তাত্ক্ষণিক মান পড়াTCNT0
।