Содержание
- 2. Структурная схема 8-разрядного таймера/счетчика
- 3. Упрощенная структурная схема 8-разрядного таймера/счетчика
- 4. Регистр управления TCCR0 (Timer/Counter0 Control Register)
- 5. Регистр управления TCCR0: Режим работы компаратора
- 6. Регистр управления TCCR0: Режим работы таймер/счетчика
- 7. Регистр управления TCCR0: Выбор источника синхронизации
- 8. Регистр маски прерываний от таймеров/счетчиков TIMSK (Timer/Counter Interrupt MaSK Register)
- 9. Регистр маски прерываний от Т/С TIMSK
- 10. Регистр флагов прерываний от таймеров/счетчиков TIFR (Timer/Counter Interrupt Flag Register)
- 11. Регистр маски прерываний от Т/С TIMSK
- 12. Регистры TCNT0, OCR0 и SREG TCNT0 (Timer/Counter Register) OCR0 (Output Compare Register) SREG (Status Register)
- 13. Расчет частоты срабатывания прерывания
- 14. Настройка таймера/счетчика 0 void timer_init(void) { TCNT0=0b00000000; //Очистка TCNT0 OCR0=250; //Содержимое компаратора ТС0 TCCR0=0b00001110; //Сброс при
- 15. Обработчик прерывания от Т/С0 ISR (TIMER0_COMP_vect) { /*Обработчик прерывания компаратора ТС0*/ ms_counter++; if(ms_counter==125) { ms_counter=0; sec_flag=1;
- 16. Фрагмент основной программы int main(void) { /// asm ("cli"); //Команда ассемблера "запрет прерываний" init(); //Вызов функции
- 17. Фрагмент основной программы while(1) { if (sec_flag==1) //Проверка установки флага события «секунда» { sec_flag=0; //Обнуление флага
- 18. Фрагмент основной программы tim[2]=0; tim[3]++; //Инкремент счетчика десятков минут if(tim[3]>5) { tim[3]=0; tim[4]++; //Инкремент счетчика единиц
- 20. Скачать презентацию