এভিআরতে টাইমার0 না ব্যবহারের কোনও কারণ?


10

কেবলমাত্র একটি প্রাথমিক প্রশ্ন ... আরডুইনো / এভিআর / এটিএমএগ 328 এর জন্য আমি টাইমার 1 ব্যবহার করে প্রচুর উদাহরণ পেয়েছি (এটির জন্য একটি সম্পূর্ণ গ্রন্থাগারও রয়েছে) তবে খুব কমই টাইমার0 (বা টাইমার 2) ব্যবহার করে।

এখন, আমি জানি যে কোনও আইএসআর পদ্ধতি নিয়ন্ত্রণের জন্য এই টাইমারগুলির কোনওটি ব্যবহার করে এটি সম্পর্কিত পিনগুলিতে পিডাব্লুএমএম ব্যবহার নিষ্ক্রিয় করবে, তবে এমন কোনও নির্দিষ্ট কারণ আছে যা লোকেরা টাইমার0 থেকে দূরে থাকবে বলে মনে হচ্ছে? এটি কি অভ্যন্তরীণভাবে অন্য কোনও কিছুর জন্য ব্যবহার করা উচিত যার সাথে কারও সাথে গোলযোগ করা উচিত নয়?

আমার বর্তমান অ্যাপ্লিকেশনটি টাইমার 1 ব্যবহার করে ঠিক আছে, আমি যদি এই অন্যান্য প্রায়শ অবহেলিত টাইমারগুলির সম্পর্কে কিছু মিস করি তবে আমি কৌতূহলী।

উত্তর:


16

যদি প্রশ্নটি একটি খালি AVR মাইক্রোকন্ট্রোলার সম্পর্কিত হয়, তবে না, টাইমারগুলির কোনও ব্যবহারে কোনও বাধা নেই

  • Arduino জন্য, Timer0 সেরা এড়ানো হয়, যেমন millis(), delay()এবং যাও Arduino গ্রন্থাগারে সমস্ত অভ্যন্তরীণ গণনার এই টাইমার ব্যবহার করুন। সময় স্থিরভাবে পরিবর্তন করা এই ক্রিয়াকলাপগুলিকে প্রভাবিত করবে।
  • Timer1 , প্রশ্ন যুক্তরাষ্ট্রের মতো, জনপ্রিয় প্রথম পছন্দ যেমন লাইব্রেরি মাধ্যমে যে কোনো টাইমার / কাউন্টার কাজের জন্য, TimerOne গ্রন্থাগার , সেইসাথে সরাসরি ম্যানিপুলেশন। এটি একটি 16-বিট টাইমার, সুতরাং 8-বিট টাইমারগুলির চেয়ে সূক্ষ্ম রেজোলিউশনের সাথে।
  • টাইমার 2 টি স্বর () গ্রন্থাগার দ্বারা ব্যবহৃত হয়, তবে যেহেতু এটি সর্বব্যাপী ব্যবহৃত হয় না, তাই এমএসটাইমার 2 লাইব্রেরিও রয়েছে যা অনেকেরই খুব দরকারী, অনেকটা টাইমরনের মতো। টাইমার 2 এর সরাসরি ম্যানিপুলেশনও ঠিক আছে।
  • মেগা, অতিরিক্ত টাইমার Timer3 , Timer4 এবং Timer5 প্রতিটি 16 বিট টাইমার, যদি আপনি একটি ব্যবহার করেন, ব্যবহারের জন্য উপলব্ধ রয়েছে যাও Arduino মেগা বোর্ড।

9

সম্পর্কিত পিডব্লিউএম নিষ্ক্রিয় করা ছাড়াও অন্যান্য কারণগুলির বিষয়ে আমি ভাবতে পারি:

  • TIMER0 একটি 8-বিট টাইমার হয় যখন TIMER1 একটি 16-বিট টাইমার।

  • আরডুইনো ওয়ার্ল্ডে টাইমার ফাংশন যেমন দেরি () এবং মিলিস () এর জন্য TIMER0 ব্যবহৃত হয় 0 আমি দেখেছি এমন অনেকগুলি কোড এটিকে একইভাবে ব্যবহার করে কারণ 8-বিট রেজোলিউশন সাধারণত যথেষ্ট হয়।

  • টিআইএমইআর 2 একটি 8-বিটও বটে, আমি কেবল 8-বিট প্রয়োজন হলে তা এড়াতে কোনও কারণ মনে করতে পারি না। এটি তবে আরডুইনো টোন () ফাংশন দ্বারা ব্যবহৃত হয়।

সুতরাং আমি অনুমান করি যে টিআইএমআর 1 কে মোটামুটি জেনেরিক পছন্দ হিসাবে ছেড়ে যায় এবং যখন 16-বিট টাইমার প্রয়োজন হয় তখন ছোট এভিআরগুলিতে একমাত্র পছন্দ। AVR মেগা ডিভাইসগুলিতে TIMER3 - TIMER5 রয়েছে যা সমস্ত 16-বিট।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.