Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Timer/Counter1 (TCNT1H, TCNT1L)

 

Біт $2D($4D) R/W Поч.знач. TCNT1H
MSB - - - - - - -
R/W R/W R/W R/W R/W R/W R/W R/W

 

Біт $2C($4C) R/W Поч.знач. TCNT1L
- - - - - - - LSB
R/W R/W R/W R/W R/W R/W R/W R/W

Рис. 5.9 - Таймер/лічильник 1 (TCNT1H і TCNT1L)

 

Це 16-розрядний регістр, що містить поточне значення TC1. Щоб читання й запис двох байт лічильника відбувалося синхронно, для роботи з ним використовується тимчасовий регістр (TEMP).

Запис у таймер лічильник 1: При записі старшого байта в TCNT1H, записувані дані поміщаються в регістр TEMP. Потім, при записі молодшого байта, він разом з даними з TEMP переписується в таймер/лічильник 1. Таким чином, при записі 16-розрядного значення першим повинен записуватися байт в TCNT1H.

Читання TC1: При читанні молодшого байта з TCNT1L, він посилається в процесор, а дані з TCNT1H переписуються в регістр TEMP, тобто одночасно читаються всі 16-розрядів. При наступному читанні регістра TCNT1H, дані беруться з регістра TEMP.

TC1 організований як підсумовуючий лічильник (у режимі ШІМ - підсумовуючий/віднімаючий) з можливістю читання й запису. Якщо обрано джерело тактових імпульсів для TC1, після запису в нього нового значення, він продовжує рахунок у наступному після запису періоді тактової частоти.

 

T/C1 Output Compare Register (OCR1AH, OCR1AL)

Біт $2B ($4B) R/W Поч.знач. OCR1AH
MSB - - - - - - -
R/W R/W R/W R/W R/W R/W R/W R/W

 

Біт $2A ($4A) R/W Поч.знач. OCR1AL
- - - - - - - LSB
R/W R/W R/W R/W R/W R/W R/W R/W

Рис. 5.10 - Регістри збігу А ТС1 (OCR1AH і OCR1AL)

T/C1 Output Compare Register (OCR1BH, OCR1BL)

Біт $29 ($49) R/W Поч.знач. OCR1BH
MSB - - - - - - -
R/W R/W R/W R/W R/W R/W R/W R/W

 

Біт $28 ($48) R/W Поч.знач. OCR1BL
- - - - - - - LSB
R/W R/W R/W R/W R/W R/W R/W R/W

Рис. 5.11 - Регістри збігу В ТС1 (OCR1ВH і OCR1ВL)

 

Регістри збігу – 16-розрядні регістри, доступні для читання й запису. У цих регістрах зберігаються дані, які безперервно порівнюються з поточним значенням TC1. Дія по збігу задається регістрами керування таймером/лічильником 1 і регістром стану.

Оскільки регістри OCR1A і OCR1B є 16-розрядними, при записі нового значення в регістр, для того щоб обидва байти регістра записувалися одночасно, використовується тимчасовий регістр. При записі старшого байта, дані поміщаються в тимчасовий регістр, який переписується в OCR1AH або OCR1ВH при записі молодшого байта в OCR1AL або OCR1ВL. Таким чином, для запису в регістр першим повинен записуватися старший байт.

Timer/Counter1 Input Capture Register (ICR1H, ICR1L)

Біт $25 ($45) R/W Поч.знач. ICR1H
MSB - - - - - - -
R R R R R R R R

 

Біт $24 ($44) R/W Поч.знач. ICR1L
- - - - - - - LSB
R R R R R R R R

Рис. 5.12 - Регістри захвату TC1 (ICR1H і ICR1L)

 

Регістр захвату (ICR1H, ICR1L) - 16-розрядний регістр, доступний тільки для читання.

По наростаючому або спадаючому фронту (відповідно до вибору фронту імпульса захвату ICES1) сигналу на виводі ICP, поточне значення TC1 переписується в регістр захвату ICR1. Одночасно встановлюється прапорець захвату ICF1.

Оскільки регістр захвату (ICR1х) є 16-розрядним, для читання його значення, щоб обидва байти прочиталися одночасно, використовується тимчасовий регістр. При читанні молодшого байта ICR1L, він посилається в ЦПП, а старший байт регістра ICR1H переписується в тимчасовий регістр. При читанні старшого байта, він приймається з тимчасового регістра. Таким чином, для читання 16-розрядного регістра першим повинен читатися молодший байт.

Регістр TEMP також використовується при доступі до регістрів TCNT1, OCR1A і OCR1B. Якщо основна програма й підпрограми обробки переривання також звертаються до цього регістра, то переривання повинні бути заборонені до тих пір, поки вміст зазначених трьох регістрів не буде повністю прочитано.


Читайте також:

  1. Timer/Counter1 Control Register A (TCCR1A)




Переглядів: 614

<== попередня сторінка | наступна сторінка ==>
Timer/Counter1 Control Register A (TCCR1A) | Таймер/лічильник 1 в режимі ШІМ

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.038 сек.