• AVR mikrokontroller taymerlari/hisoblagichlari
  • Reja: Kirish avr va pic mikrokontroller arxitekturasi avr mikrokontrollerlarining eeprom xotirasi Qayta tiklash Qo'riqchi Kirish




    Download 305.63 Kb.
    bet9/24
    Sana28.01.2023
    Hajmi305.63 Kb.
    #39960
    1   ...   5   6   7   8   9   10   11   12   ...   24
    Bog'liq
    AVR mikrokontrollerlari
    sdfsd, Shamuradov shuxrat, электр машина, Creative-Drawing-On-Global-Ecology-Industry-PowerPoint-Templates-Standard, Что такое интегральная микросхема, Расчёт интегральной микросхемы, 10-06 Туман қарор ЖШ мухокамаси йиғилишлари жадвали 2023 йил учун - копия, 11-fizika-test-uzbekrus, TPU401612, 5. Ногиронлиги борлар Анкетаси, Falsafa tezis, ДИПЛОМ (3) (2), RELE o\'quv qo\'llanma (1), Малакавий Aмалиёт учун услубий кўрсатма СИРТҚИ
    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.


    AVR mikrokontroller taymerlari/hisoblagichlari

    AVR mikrokontrollerlarida quyidagi taymerlar/hisoblagichlardan foydalanish mumkin:


    8 yoki 16 bitli T / S0;
    16-bit T / S1;
    8 yoki 16 bitli T/S2.
    Bunday holda, boshqaruv registrlari TCCR0, TCCR1 va TCCR2 (kirish/chiqish maydonida joylashgan) deb nomlanadi va osilator chastotasining ishlash tartibi va bo'linish koeffitsienti ushbu registrlarning CSx2, CSxl va CSx0 bitlari yordamida aniqlanadi. Masalan, t/S0 va T/S1 taymerlari/hisoblagichlari uchun rejim va kirish soatini tanlash jadvalda keltirilgan bitlarning kombinatsiyasi yordamida aniqlanishi mumkin. 4.1.

    Jadval 4.1. T/S0 va T/S1 uchun rejim va kirish soatini tanlash



    CSx2

    CSx1

    CSxO

    tavsifi

    0

    0

    0

    to'xtash

    0

    0

    1

    "taymer" rejimi, soat tsikli \ u003d tizim sinxronlash

    soati 0

    1

    0

    "taymer" rejimi, soat tsikli \ u003d tizim sinxronlash soati/ 8

    0

    1

    1

    "taymer" rejimi, soat tsikli \ u003d tizimni sinxronlashtirish vaqti/ 64

    1

    0

    0

    "taymer" rejimi, soat tezligi \ u003d tizim sinxronizatsiyasi soati/ 256

    1

    0

    1

    "taymer" rejimi, soat tsikli \ u003d tizimni sinxronlashtirish vaqti/1024

    1

    1

    0

    "hisoblagich" rejimi, tsikl-t0 (T1) kirishida tashqi, signalning faol jabhasi-1

    1

    1

    1

    "hisoblagich" rejimi, tsikl-t0 (T1) kirishida tashqi), faol signal jabhasi-ortib bormoqda

    T / S2 uchun cs22, CS21 va CS20 bitlarining kombinatsiyasi turli xil mikrokontroller modellari uchun har xil ma'noga ega bo'lishi mumkin.




    T / S0

    T/S0 taymer/hisoblagichning ishlash sxemasi sek. 4.1.


    TCCR0 registrining CS00, CS01 va CS02 bitlari (kirish/chiqish maydonidagi 0x33 manzili, SRAMDAGI 0x53 manzili) yordamida chastota bo'luvchisi uchun 000 dan boshqa kombinatsiya o'rnatilishi bilanoq, taymer / hisoblagich t/S0 soat kirishiga kiradigan har bir impuls uchun tcnt0 registrining tarkibini bittaga ko'paytira boshlaydi (kirish/chiqish maydonida 0x32 manzili, SRAMDA 0x52 manzili). TCNT0 registridagi hisoblagich holati 0xff dan 0x00 gacha o'zgarganda, TIFR registrida (kirish/chiqish maydonidagi 0x38 manzil) TOV0 toshib ketish bayrog'i o'rnatiladi.

    Shakl: 4.1. Taymer/hisoblagich sxemasi T / S0

    TCCR0 registrining CS00, CS01 va CS02 bitlaridan tashqari (0-2 bit), ushbu registrdagi boshqa bitlardan foydalanilmaydi.


    Taymer/hisoblagich t/S0 vaqt oralig'ini baholash uchun juda mos keladi. Buning uchun dasturni bajarish paytida asl qiymati tcnt0 registriga yoziladi. Keyin t/S0 kerakli kirish tsikli bilan ishga tushirilishi mumkin. Dastur TIFR registrida TOV0 toshib ketish bayrog'i paydo bo'lishini kutmoqda, bu talab qilingan vaqt tugaganligini ko'rsatadi.
    Aytaylik, tizimni sinxronlashtirish chastotasi 4 MGts ni tashkil qiladi va ba'zi harakatlar dastur tomonidan har 0,5 s da bajarilishi kerak, bu holda siz chastotani 8 ga bo'lishingiz mumkin, bu 500 kHz yoki 2 MS soat tezligiga to'g'ri keladi. Shunday qilib, 256 soat pulsini hisoblash uchun hisoblagichga 512 MS kerak bo'ladi. Ushbu qiymat 500 MS ga ko'paytirilishi kerak, shunda dasturdagi 1000 multiplikator yordamida kerakli harakatni 500 MS davr bilan aniq amalga oshirish mumkin. Buning uchun har bir hisobni boshlashdan oldin hisoblagichga 6 qiymati yuklanishi kerak, shunda toshib ketishdan oldin 256 emas, balki atigi 250 soat pulslari hisoblanadi.

    T / S1

    16-bitli taymer/hisoblagich t/S1 T/S0 ga qaraganda ancha murakkab (1-rasm). 4.2).



    Shakl: 4.2. T/C1 taymer/hisoblagich davri

    Hisoblash registri va boshqaruv registridan tashqari, u kirishni yozib olish registrini (ICR1) va chiqishda ikkita 16 bitli taqqoslash registrini o'z ichiga oladi (ba'zi mikrokontroller modellarida taqqoslash registri mavjud emas).


    Alohida registrlarning maqsadini ko'rib chiqing:
    TCNT1-hisoblash registri (hisoblagich tarkibi);
    TCCR1A-PIN reaktsiyasini aniqlash uchun boshqaruv registri
    OS1A/OS1V tcnt1 registridagi hisoblagich holati OCR1A/OCR1B taqqoslash registrlari bilan mos kelganda, shuningdek impuls kengligi modulyatsiyasi rejimini tanlash uchun;
    TCCR1B-chastota bo'linuvchisini sozlash, TCNT1 registri uchun asl holatini tiklash signalini berish va ushlashni boshqarish uchun boshqaruv registri;
    ICR1-kirish orqali yozib olish registri (ICP pinida faol deb belgilangan kirish signalining old qismi paydo bo'lganda, hisoblagichning joriy holati ushbu registrga o'tkaziladi);
    OCR1A, OCR1B-taqqoslash registrlari; ularning tarkibi doimiy ravishda hisoblagich holati bilan taqqoslanadi. Agar mos keladigan bo'lsa, tccr1a registri tomonidan belgilangan harakatlar amalga oshiriladi.
    TCCR1A boshqaruv registri (rasm. 4.3) kirish/chiqish maydonida 0x2f (SRAM-dagi 0x4f manzili) da joylashgan.



    7

    6

    5

    4

    3

    2

    1

    0

    COM1A1

    COM1A0

    COM1B1

    COM1B0





    PWM11

    PWM10

    Shakl: 4.3. T/C1 taymer/hisoblagich tccr1a registri

    Som1a1/SOM1A0 va SOM1V1/SOM1V0 bitlari a/B taqqoslash registrining tarkibi hisoblagich tarkibiga to'g'ri kelganda OS1 A/OS 1B chiqish holatini aniqlaydi. Taqqoslash rejimi uchun mumkin bo'lgan Sozlamalar jadvalda keltirilgan. 4.2.


    Jadval 4.2. Taqqoslash rejimida ishlashning mumkin bo'lgan variantlari



    Som1x1

    SOM1X0

    harakatlar

    0

    0 tasodif

    bo'lsa, chiqish qiymati yo'q

    0

    1 mos kelganda Os1x

    boshqa holatga o'tadi

    1

    0

    0 chiqish mos kelganda Os1x jurnalni o'rnatadi. 0

    1

    1

    os1x chiqishi mos kelganda jurnalni o'rnatadi. 1

    PWM rejimi faollashtirilgan taqdirda, tccr1a registridagi 4...7 raqamlar jadvalda ko'rsatilganidan farq qiladi. 1.6. TCCR1A boshqaruv registri puls kengligi modulyatori konfiguratsiyasida ishlashni aniqlasa, u holda T / S1 0x0000 dan maksimal torus qiymatiga tsikllarni amalga oshirib, keyin yana 0x0000 ga qaytib, summa va ayirish hisoblagichi sifatida ishlaydi. Dasturlashtirilgan PWM piksellar sonini N bitda Thor qiymati quyidagicha hisoblanadi:





    PWM tsikllari takrorlanadigan fshm chastotasi quyidagi formula bo'yicha hisoblanadi:





    bundan tashqari, ft/ci taymer/hisoblagich chastotasi TCCR1B registrining CSIO–CS 12 bitlari yordamida, n o'lchamlari esa TCCR1A registrining PWM10 va PWM11 bitlari yordamida tanlanadi.tegishli munosabatlar jadvalda ko'rsatilgan. 4.3.


    Jadval 4.3. PWM rejimini tanlash (PWM11 va PWM10)



    PWM11

    PWWI10

    qaror

    qiymati tor

    chastota PWM

    0

    0

    PWM rejimi faol emas

    0

    1

    8 bit

    0x00FF (255)

    fT / S1 /510

    1

    0

    9

    0x01ff (511)

    ft/S1 raqamlari /1022

    1

    1

    10

    0x03ff(1023)

    ft/S1 /2046 raqamlari

    TCNT1 registridagi hisoblagich holati OCR1A/OCR1B registrining 10 kichik bitining qiymatiga to'g'ri kelganda, u holda TCCR1A registrining COM1A1/SOM1A0 yoki SOM1V1/SOM1V0 bitlarining holatiga qarab, os1a/OS1 chiqishi keyingi soat impulsi bilan o'rnatiladi yoki tiklanadi. Tegishli munosabatlar jadvalda ko'rsatilgan. 4.4.


    Jadval 4.4. Taqqoslash rejimini tanlash imkoniyatlari



    Som1x1

    Som1x0

    harakat

    os1x pinida 0

    0 mos

    Os1x pinida hech qanday signal yo'q

    keladigan bo'lsa, os1x pinida 0

    1 signal yo'q

    Os1x pinida hech qanday signal yo'q

    1

    0

    signal yo'q teskari bo'lmagan puls kengligi modulyatori. Muvofiqlik holatida, summa hisoblanganda, os1x pinida jurnal o'rnatiladi. 0, va ayirish bilan hisoblashda – jurnal. 1

    1

    1

    inverting puls kengligi modulyatori. Muvofiqlik holatida, summa hisoblanganda, os1x pinida jurnal o'rnatiladi. 1, va ayirish bilan hisoblashda –jurnal. 0

    Qaytmaydigan puls kengligi modulyatori bo'lsa, PWM pinidagi to'rtburchaklar signalning g to'ldirish koeffitsienti n / (2N - 1) qiymatiga to'g'ri keladi, bu erda n – tegishli OCR registridagi qiymat, A N – PWM ning bitlardagi o'lchamlari (1-rasm). 4.4).





    Shakl: 4.4. Davrni aniqlash T, to'ldirish koeffitsienti g va arifmetik o'rtacha UAV to'rtburchaklar kuchlanish impulslari U

    Agar ocr1a/OCR1B taqqoslash registrida Thor yoki 0 qiymati bo'lsa, u holda jadvalda keltirilgan qoidalarga muvofiq tegishli chiqishda. 4.5, log darajasi doimiy ravishda qo'llab-quvvatlanadi. 0 yoki log. 1.


    Shaklda. 4.5. a diagrammasida TCNT1 hisoblagich holatiga mos keladigan qadam signalining taxminiy ko'rinishi ko'rsatilgan, b diagrammasida teskari bo'lmagan va C diagrammasida teskari chiqish signali ko'rsatilgan. Bu holda tpwm davrining davomiyligi yuqorida muhokama qilingan tenglamaga muvofiq hisoblanadi tpwm = TT/C1 * (2N+1 - 2). Shunday qilib, N=3 da PWM davri TCNT1 kirishida ft/C1 soat signalining 14 davridan iborat.

    Jadval 4.5. Maxsus holatlar uchun PWM chiqishi



    Som1x1

    Som1ho

    OCR1X

    chiqish Os1x

    1

    0

    0

    0

    1

    0

    torus

    1

    1

    1

    0

    1

    1

    1

    torus

    0


    Shakl: 4.5. Teskari bo'lmagan va teskari PWM chiqish signallarini shakllantirish usuli

    Ushbu misolda ocr1b taqqoslash registri 5 qiymatini o'z ichiga oladi. Tcnt1 registrida uning asl qiymati 0 ekanligini hisobga olsak, 5 qiymati beshta soatdan keyin paydo bo'ladi. Keyingi soat pulsida, moslikni aniqlagandan so'ng, OS 1b pinida log darajasi o'rnatiladi. 0 (rasm. 1.12, C).


    Tcnt1 registri Thor qiymatiga erishilgunga qadar qo'shimcha ravishda ko'paytiriladi, bu uch bitli PWM uchun 7 ga teng. Thor qiymatiga erishilgandan so'ng, hisoblash yo'nalishi teskari tomonga o'zgaradi va registr ayirishni amalga oshiradi. To'qqizinchi soat impulsidan so'ng, boshlang'ich qiymati 0 dan boshlab, tcnt1 registrining tarkibi yana OCR1B registrining tarkibiga to'g'ri keladi.keyingi soat pulsida os1b chiqishida log darajasi o'rnatiladi. 1.
    Tcnt1 registri yana 0 qiymatiga erishilgunga qadar qayta ko'rib chiqiladi. Bu boshlang'ich qiymatdan 0 ni hisoblab, jami o'n to'rt soatlik zarbadan keyin sodir bo'ladi. Shunday qilib, PWM signal davri tugaydi, hisob yo'nalishi yana teskari tomonga o'zgaradi va tcnt1 registri yana qo'shishni amalga oshiradi. Shakldan ko'rinib turibdiki. 1.12 (B), chiqish signalining "yuqori" komponenti 6 soat, "past" esa 4. Shunday qilib, to'ldirish koeffitsienti g = 6/10 yoki g = 3/5. Xuddi shunday, rasmdagi C diagrammasi. 1.12 teskari PWM chiqishi uchun nisbatlarni ko'rsatadi.
    PWM rejimida TOV1 overflow bayrog'i o'rnatiladi, agar hisoblagich 0 holatiga yetganda hisob yo'nalishini teskari tomonga o'zgartirsa. Ushbu t / S1 toshib ketishi, hisoblagich rejimida normal ishlashda bo'lgani kabi, Sreg holat registrida i uzilishlarning umumiy o'lchamlari bayrog'i, shuningdek TIMSK registridagi TOIE1 bayrog'i o'rnatilgan bo'lsa, chaqiriladi. Shunga ko'ra, TCNT1 va OCR1A/OCR1B registrlari mos keladigan uzilishlar TIMSK registrida umumiy uzilish rezolyutsiyasi bayrog'i va ocie1a/OCIE1B bayrog'i o'rnatilganda chaqiriladi.
    T/S1 taymeri/hisoblagichiga kelsak, TCCR1B boshqaruv registrini (kirish/chiqish sohasidagi 0x2e manzili, SRAM-dagi 0x4e manzili) ko'rib chiqish kerak. Tccr1b registrining tuzilishi sek. 4.6.



    7

    6

    5

    4

    3

    2

    1

    0

    ICNC1

    ICES1





    CTC1

    CS12

    CS11

    CS10

    Shakl: 4.6. Tccr1 registri t/S1 taymer/hisoblagichda

    0 – 2 bitlari t/S1 soat tezligini tanlash uchun ishlatiladi (jadval. 1.5). Agar sts1 toifasi jurnalga o'rnatilgan bo'lsa. 1, keyin T / S1 0x0000 holatiga qaytadi, hisoblagich tarkibi va taqqoslash registri mos kelgandan keyin tizim sinxronizatsiyasi zarbasi bilan A. PWM rejimida ishlayotganda, bu raqam ish jarayoniga hech qanday ta'sir qilmaydi.


    Ices1 zaryadsizlanishi hisoblagich holatini icr1 yozib olish registriga qanday o'tkazish kerakligini aniqlaydi: ko'tarilish (ICES 1 \ u003d 1) yoki tushish jabhasi (ICES 1 \ u003d 0).
    ICNC1 zaryadsizlanishi shovqinlarni bostirishni faollashtirish kerakligini aniqlaydi (agar ICNC1 = 0 bo'lsa, shovqinlarni bostirish o'chirilgan), noto'g'ri ishga tushishiga olib kelishi mumkin bo'lgan qisqa muddatli shovqin impulslarini bostirish uchun kirish signali tizim sinxronizatsiyasining to'rt davri davomida tekshiriladi. Ices1 biti bilan belgilanadigan ketma-ket to'rtta past yoki yuqori kirish darajasi tan olingandan keyingina, shovqin faol bostirilganda, hisoblagichning joriy holati ICR1 registriga yoziladi.

    T / S2

    Taymer/hisoblagich t/S2 odatda 8 bitli bit tezligiga ega va T/S1 ga o'xshash chiqish va PWM taqqoslash funktsiyalarini amalga oshiradi. T / S2 ning asosiy xususiyati shundaki, u soat impulslari manbai sifatida tizimdan mustaqil generatordan foydalanishi mumkin. T / S2 ni boshqarish uchun ikkita registr ishlatiladi: ASSR (1-rasm). 4.7) va TCCR2 (rasm. 4.8).



    7

    6

    5

    4

    3

    2

    1

    0









    AS2

    TCN2UB

    OCR2UB

    TCR2UB

    Shakl: 4.7. T/S2 taymer/hisoblagich ASSR registri

    Agar jurnalga o'rnatilgan bo'lsa. AS2 ning 1-toifasi, keyin tashqi osilator soat impulslari manbai sifatida ishlatilishi mumkin. Qolgan uchta raqam (0-2) dasturiy ta'minotda ma'lumotlar t/S2 registrlariga apparat tomonidan yangilangan vaqtda yozilmasligini tekshirish uchun ishlatiladi. Bunday tekshirish t/S2 osilatori tizim osilatoriga nisbatan asenkron ishlashi sababli zarur.



    7

    6

    5

    4

    3

    2

    1

    0



    PWM2

    COM21

    COM20

    CTC2

    CS22

    CS21

    CS20

    Shakl: 4.8. T/S2 taymer/hisoblagichning tccr2 registri

    Jurnalga o'rnatish. 1-toifali PWM2 T/S2 ni PWM rejimiga o'tkazadi. COM21 va COM20 bitlarining maqsadi com lxl va com 1x0 t/S1 taymer/hisoblagich bitlarining maqsadi bilan bir xil – chiqishda taqqoslash rejimini tanlash.


    STS2 razryadi, agar uning tarkibi taqqoslash registriga to'g'ri kelsa, hisoblagich nolga teng bo'lishi kerakligini aniqlaydi. 0 – 2 bitlari tizim sinxronizatsiyasining dastlabki soat chastotasi bo'luvchisi yordamida olingan soat signalining chastotasini aniqlaydi.



    Download 305.63 Kb.
    1   ...   5   6   7   8   9   10   11   12   ...   24




    Download 305.63 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Reja: Kirish avr va pic mikrokontroller arxitekturasi avr mikrokontrollerlarining eeprom xotirasi Qayta tiklash Qo'riqchi Kirish

    Download 305.63 Kb.