Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[25]

РЕГИСТР МАСОК ПРЕРЫВАНИЯ ПО ТАЙМЕРАМ/СЧЕТЧИКАМ-TIMSK (Timer/Counter Interrupt Mask Register)

Бит76543210

$37 ($57)I OCIE2 I TOIE2 TICIE1 OCIE1AOCIE1BTOIE1 OCIE0 TOIE0~1 TIMSK

Чтение/Запись R/W R/W R/W R/W R/W R/W R/W R/W

Начальное значение 00000000

•Bit 7 - OCIE2: Timer/Counter2 Output Compare Interrupt Enable - Разрешение прерывания по совпадению таймера/счетчика2

При установленном бите OCIE2 и установленном бите I регистра статуса разрешается прерывание по совпадению содержимого регистра сравнения и состояния таймера/ счетчика2. Соответствующее прерывание (с вектором $0012) выполняется если произойдет совпадение при сравнении содержимого регистра сравнения и состояния таймера/счетчика2. В регистре флагов прерывания TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг совпадения таймера/счетчика2.

•Bit 6 - TOIE2: Timer/Counter2 Overflow Interrupt Enable - Разрешение прерывания по переполнению таймера/счетчика2

При установленном бите TOIE2 и установленном бите I регистра статуса разрешается прерывание по переполнению таймера/счетчика2. Соответствующее прерывание (с вектором $0014) выполняется если произойдет переполнение таймера/счетчика2. В регистре флагов TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг переполнения таймера/счетчика2.

•Bit 5 - TICIE1: Timer/Counter! Input Capture Interrupt Enable - Разрешение прерывания по захвату таймера/счетчика!

При установленном бите TICIE1 и установленном бите I регистра статуса разрешается прерывание по захвату таймера/счетчика1. Соответствующее прерывание (с вектором $0016) выполняется если произойдет запуск захвата по выводу 29, PD4(IC1). В регистре флагов TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг захвата таймера/счетчика1.

•Bit 4 - OCE1A: Timer/Counter1 Output CompareA Match Interrupt Enable - Разрешение прерывания по совпадению регистра A с таймером/счетчиком1

При установленном бите OCIE1A и установленном бите I регистра статуса разрешается прерывание по совпадению регистра A с состоянием таймера/счетчика1. Соответствующее прерывание (с вектором $0018) выполняется если произойдет совпадение содержимого регистра A сравнения выхода с состоянием таймера/ счетчика1. В регистре флагов TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг совпадения регистра A с таймером/счетчиком1.

•Bit 3 - OCIE1B: Timer/Counter1 Output CompareB Match Interrupt Enable - Разрешение прерывания по совпадению регистра B с таймером/счетчиком1

При установленном бите OCIE1B и установленном бите I регистра статуса разрешается прерывание по совпадению регистра B с состоянием таймера/счетчика1. Соответствующее прерывание (с вектором $001A) выполняется если произойдет совпадение содержимого регистра B сравнения выхода с состоянием таймера/счетчика1. В регистре флагов TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг совпадения регистра B с таймером/счетчиком1.

•Bit 2 - TOIE1: Timer/Counter1 Overflow Interrupt Enable - Разрешение прерывания по переполнению таймера/счетчика1

При установленном бите OCIE1B и установленном бите I регистра статуса разрешается 84 -


прерывание по переполнению таймера/счетчика1. Соответствующее прерывание (с вектором $001C) выполняется если произойдет переполнение таймера/счетчика1. В регистре флагов TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг переполнения таймера/счетчика1.При нахождении таймера/счетчика1 в PWM режиме флаг переполнения счетчика устанавливается когда счетчик изменит направление счета

при $0000.

•Bit 1 - OCIE0: Timer/Counter0 Output Compare Interrupt Enable - Разрешение прерывания по совпадению таймера/счетчика0

При установленном бите OCIE0 и установленном бите I регистра статуса разрешается прерывание по совпадению содержимого регистра сравнения и состояния таймера/ счетчика0. Соответствующее прерывание (с вектором $001E) выполняется если произойдет совпадение при сравнении содержимого регистра сравнения и состояния таймера/счетчика0. В регистре флагов прерывания TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг совпадения таймера/счетчика0.

•Bit 0 - TOIE0: Timer/Counter0 Overflow Interrupt Enable - Разрешение прерывания по переполнению таймера/счетчикаР

При установленном бите TOIE0 и установленном бите I регистра статуса разрешается прерывание по переполнению таймера/счетчика0. Соответствующее прерывание (с вектором $0020) выполняется если произойдет переполнение таймера/счетчика0. В регистре флагов TIFR (Timer/Counter Interrupt Flag Register) устанавливается флаг переполнения таймера/счетчика0.

РЕГИСТР ФЛАГОВ ПРЕРЫВАНИЙ ПО ТАЙМЕРАМ/СЧЕТЧИКАМ TIFR (Timer/Counter Interrupt Flag Register)

Бит76543210

$36 ($56) OCF2 TOV2 ICF1 OCF1A OCF1B TOV1 OCF0 TOv0" TIFR

Чтение/Запись R/W R/W R/W R/W R/W R/W R/W R/W

Начальное значение 00000000

•Bit 7 - OCF2: Output Compare Flag 2:- Флаг 2 совпадения таймера/счетчика2 и данных OCR2

Бит OCF2 устанавливается при совпадении состояния таймера/счетчика2 и содержимого регистра OCR2 (Output Compare Register 2). Бит OCF2 аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных OCIE2 (Timer/Counter2 Output Compare Interrupt Enable) и OCF2 выполняется прерывание по совпадению выхода таймера/счетчика2.

•Bit 6 - TOV2: Timer/Counter2 Overflow Flag -Флаг переполнения таймера/счетчика2

Бит TOV2 устанавливается при переполнении таймера/счетчика2. Он аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных OCIE2 (Timer/Counter2 Overflow Interrupt Enable) и TOV2 выполняется прерывание по переполнению таймера/счетчика2. В режиме PWM этот бит устанавливается при смене направления счета при $00.

•Bit 5 - ICF1: Input Capture Flag 1 - Флаг 1 захвата входа

Бит ICF1устанавливается в случае захвата входа, показывающего, что состояние таймера/ счетчика1 переслано в входной регистр захвата ICR1. Бит очищается аппаратно при


обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1.

•Bit 4 - OCF1A: Output Compare Flag 1A - Флаг 1A совпадения выхода

Бит OCF1A устанавливается при совпадении состояния таймера/счетчика1 и содержимого регистра OCR1A (Output Compare Register 1A). Бит OCF1A аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных OCIE1A (Timer/Counter1 Compare Interrupt Enable) и OCF1A выполняется прерывание по совпадению выхода таймера/счетчика1.

•Bit 3 - OCF1B: Output Compare Flag 1B - Флаг 1B совпадения выхода

Бит OCF1B устанавливается при совпадении состояния таймера/счетчика1 и содержимого регистра OCR1B (Output Compare Register 1B). Бит OCF1B аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных OCIE1B (Timer/Counter1 Compare InterruptB Enable) и OCF1B выполняется прерывание по совпадению выхода таймера/счетчика1.

•Bit 2 - TOV1: Timer/Counter1 Overflow Flag - Флаг переполнения таймера/счетчика1

Бит TOV1 устанавливается при переполнении таймера/счетчика1. Он аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных TOIE1(Timer/Counter1 Overflow Interrupt Enable) и TOV1 выполняется прерывание по переполнению таймера/счетчика1. В режиме PWM этот бит устанавливается при смене таймером/счетчиком1 направления счета при $0000.

•Bit 1 - OCF0: Output Compare Flag 0 - Флаг 0 совпадения выхода

Бит OCF0 устанавливается при совпадении состояния таймера/счетчика0 и содержимого регистра OCR0 (Output Compare Register 0). Бит OCF0 аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных OCIE0 (Timer/Counter0 Output Compare Interrupt Enable) и OCF0 выполняется прерывание по совпадению выхода таймера/счетчика1.

•Bit 0 - TOV0: Timer/Counter0 Overflow Flag - Флаг переполнения таймера/счетчикаР

Бит TOV0 устанавливается при переполнении таймера/счетчика0. Он аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных TOIE0(Timer/Counter0 Overflow Interrupt Enable) и TOV0 выполняется прерывание по переполнению таймера/счетчика0. В режиме PWM этот бит устанавливается при смене таймером/счетчиком1 направления счета при $00.

ВРЕМЯ ОТКЛИКА НА ПРЕРЫВАНИЕ

Отклик на выполнение всех разрешенных прерываний AVR составляет минимум 4 тактовых цикла. В течение 4 тактовых циклов после установки флага прерывания выполняется переход по адресу вектора прерывания для выполнения подпрограммы прерывания. В течение этих 4 циклов содержимое счетчика команд (2 байта) опускаются в стек и указатель стека декрементируется на 2. Вектор указывает переход в подпрограмму обработки прерывания и этот переход занимает 3 тактовых цикла. Если прерывание возникнет во время выполнения многоцикловой команды, то команда завершается до начала обслуживания прерывания.

Возврат из подпрограммы обработки прерывания (как и вызов подпрограммы) занимает



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51]