Перейти к содержанию

Помогите с таймерами-счетчиками ATmega2560


Гость Dreddku75

Рекомендуемые сообщения

Доброго времени суток!

Имеется микроконтроллер Ардуино на ATmega2560/V. не могу разобраться с таймерами.

 

Надо посчитать количество входящих импульсов за единицу времени (40 мс) - будет скорость.

Тему еще одного макса прочитал всю, и не единожды (спасибо ему). На нем и основывался, но у него другой проц.

 

   // Timer/Counter 5 initialization

  // Clock source: T5 pin Falling Edge

  // Mode: Normal top=FFh

  // OC0 output: Disconnected

  // Pin: 47

  TCCR5B=0x06;

  // Timer/Counter 1 initialization

  // Clock source: System Clock

  // Clock value: 62,500 kHz

  // Mode: Normal top=FFFFh

  // OC1A output: Discon.

  // OC1B output: Discon.

  // Noise Canceler: Off

  // Input Capture on Falling Edge

  // Timer 1 Overflow Interrupt: Off

  // Input Capture Interrupt: Off

  // Compare A Match Interrupt: On

  // Compare B Match Interrupt: Off

  TCCR3A=0x00;

  TCCR3B=0x05;//4;

  TCCR3C=0x00;

  TCNT3H=0x00;

  TCNT3L=0x00;

  OCR3AH=0x02;//09;

  OCR3AL=0x71;//C4;

  OCR3BH=0x00;

  OCR3BL=0x00;

  ICR3H=0x00;

  ICR3L=0x00;  

  // Timer(s)/Counter(s) Interrupt(s) initialization

  TIMSK3=0x02;

  // Watchdog Timer initialization

  // Watchdog Timer Prescaler: OSC/64k

  //WDTCSR=0xD8;

  //WDTCSR=0x05;

  sei(); 

 

ISR(TIMER3_COMPA_vect)

{

  // Place your code here

  speed_cur=TCNT5;

  TCNT5=0x00;

  TCNT3H=0x00;

  TCNT3L=0x00;

}

 

подскажите кто знает.

Изменено пользователем Dreddku75
Ссылка на комментарий
Поделиться на другие сайты

Разобрался, здесь всё правильно. Проблемы были дальше в коде .

теперь всё работает.

Спасибо всем откликнувшимся! :smile:

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...