Taymerlar/hisoblagichlar
Taymerlar/hisoblagichlar, eng ko'p ishlatiladigan mikrokontroller modullari. Ularning yordami bilan siz vaqt va chastotani o'lchashingiz, impulslarning kengligini aniqlashingiz, tezlikni hisoblashingiz va hk.
AVR mikrokontrollerlarida 8 va 16 bitli taymerlar/hisoblagichlar ishlatiladi. Bit chuqurligi hisoblagichni to'ldirish momentini aniqlaydi (nol holatiga qaytish). Shunday qilib, 8-bitli hisoblagich uchun hisob 255 ga, 16-bit uchun esa 65535 ga yetganda toshib ketish sodir bo'ladi.
Mikrokontrollerlarda taymerlar/hisoblagichlar soni va ularning bit chuqurligi modelga qarab farq qiladi va shuning uchun ushbu bo'limda faqat taymerlar/hisoblagichlardan foydalanish bilan bog'liq umumiy masalalar ko'rib chiqiladi.
Agar taymer / hisoblagich hisoblagich vazifasini bajarsa, u mikrokontrollerning ma'lum bir kirishiga keladigan impulslar sonini hisoblaydi. Bunday holda, tegishli chiqish dasturning boshlang'ich qismida kirish sifatida sozlanishi kerak.
Agar taymer sifatida ishlatilsa, taymer/hisoblagichning soat tezligi ichki kvarts osilatorining tizim sinxronlash soatining hosilasi hisoblanadi. Bunday holda, taymerlar / hisoblagichlar tizim sinxronizatsiyasining ajratilgan soatini soat signali sifatida ishlatadilar. Oldindan chastotani ajratuvchi bo'linish koeffitsienti taymerlarning har biri uchun taymer/hisoblagichni boshqarish registridagi raqamlar bilan boshqariladigan multipleksor yordamida alohida sozlanishi mumkin.
"Normal"Rejimi
"Normal" rejimi (WGM02:0 \ u003d 0) taymerning eng oson ishlash rejimidir. Ushbu rejimda hisob yo'nalishi har doim oldinga siljiydi (tarkib ko'payadi) va hisoblagichni majburiy tiklash amalga oshirilmaydi. Hisoblagich sakkiz bit uchun maksimal qiymatga yetganda (TOP = 0xFF) to'lib toshadi va keyin avval qayta boshlanadi (0x00).
Oddiy ishlashda taymer/hisoblagich toshib ketish bayrog'i (TOV0) TCNT0 nolga teng bo'lganda o'rnatiladi. TOV0 bayrog'i, bu holda, to'qqizinchi bit kabi harakat qiladi va bundan mustasno, u faqat o'rnatiladi, lekin qayta tiklanmaydi.
TOV0 bayrog'ini avtomatik ravishda tozalaydigan taymerni to'ldirish uzilishidan foydalanib, dasturni qayta hisoblash koeffitsientini oshirish mumkin. Oddiy rejimda diqqatni jamlashga arziydigan hech qanday xususiyat yo'q. Hisoblash registrining yangi qiymati istalgan vaqtda yozilishi mumkin.
Tasodif moduli ba'zan uzilishlarni chaqirish uchun ishlatilishi mumkin. Oddiy rejimda signallarni yaratish uchun mos keladigan signaldan foydalanish tavsiya etilmaydi, chunki bu protsessorning ishlashiga katta to'sqinlik qiladi.
Do'stlaringiz bilan baham: |