ВУЗ:
Составители:
Рубрика:
24
данные временно сохраняются в регистре TEMP. Когда CPU записывает
младший байт OCR1AL или OCR1BL, регистр TEMP одновременно
записывается в OCR1AH или OCR1BH. Следовательно, для полной
16-разрядной операции записи регистра сначала должен быть записан старший
байт OCR1AH или OCR1BH.
Регистр TEMP также используется при доступе к TCNT1 и ICR1. Если
основная программа и подпрограммы прерываний выполняют доступ к
регистрам, использующим TEMP, прерывания должны быть заблокированы в
течение доступа из основной программы.
Регистр сбора данных таймера-счетчика1 - ICR1H и ICR1L
Бит 15 14 13 12 11 10 9 8
MSB
LSB
Бит 7 6 5 4 3 2 1 0
Чтение/запись R/W R/W R/W R/W R/W R/W R/W R/W
R/W R/W R/W R/W R/W R/W R/W R/W
Начальное значение 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
Регистр сбора данных – 16-разрядный регистр, предназначенный только
для чтения.
Когда фронт↑ или фронт↓ (согласно установке ICES1) сигнала на выводе
захвата входных данных ICР обнаружен, текущее значение Т/С1 перемещается
в регистр сбора данных – ICR1. В то же время устанавливается флаг захвата
данных ICF1.
Так как регистр сбора данных (ICR1) является 16-разрядным регистром,
используется временный регистр TEMP, когда читается ICR1, чтобы
гарантировать, что оба байта читаются одновременно. Когда CPU читает
младший байт ICR1L, данные посылаются в CPU, и данные старшего байта
ICR1H помещаются в регистр TEMP. Когда CPU читает данные в старшем
байте ICR1H, CPU получает данные регистра TEMP. Следовательно, для
полной 16-разрядной операции чтения регистра сначала необходимо обратиться
к младшему байту ICR1L.
Регистр TEMP также используется при доступе к TCNT1, OCR1A и
OCR1B. Если основная программа и подпрограммы прерываний выполняют
доступ к регистрам, использующим TEMP, прерывания должны быть
заблокированы в течение доступа из основной программы.
Страницы
- « первая
- ‹ предыдущая
- …
- 23
- 24
- 25
- 26
- 27
- …
- следующая ›
- последняя »
