Выдача частоты 4мГц с Arduino(без использования прерываний )
- Войдите на сайт для отправки комментариев
Втр, 18/12/2012 - 13:17
Добрый день уважаемые.
Для оптимизации схемы, требуется выдать с платы Aurdino (с ATMEGA-328) меандр с частотой 4 - мегагераца.
Смотрел по схеме. Вроде можно сконфигурировать таймеры, чтобы выдача импульсов шла не на прерывание а на внешний порт.
Уважаемые гуру прошу пример скетча с конфигурацией таймеров и управляющих регистров для выдачи частоты на порт без использования прерываний.
Буду вам крайне благодарен.....
Попробуйте это:
void setup() { pinMode(9, OUTPUT); // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 16000.000 kHz // Mode: Fast PWM top=ICR1 // OC1A output: Non-Inv. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x82; TCCR1B=0x19; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x04; OCR1AH=0x00; OCR1AL=0x02; OCR1BH=0x00; OCR1BL=0x00; } void loop() { }Полезная статья по программированию таймеров в ардуино
Еще вот так можно:
void setup() { pinMode(11, OUTPUT); OCR2A=1; TCCR2A=66; TCCR2B=1; } void loop() { ... }