Разработать программу для микроконтроллера ATmega328 отладочной платы Arduino Nano

Необходимо реализовать функцию автоколебательного мультивибратора с одним выходом. Частота прямоугольных импульсов составляет f-10 кГц, длительность импульса текущего сигнала составляет 36 мкс. Каждые 20 мс опрашивайте кнопку с помощью таймера, и если кнопка нажата, импульсы отключаются, а если кнопка не нажата, генератор включается снова.

uint16_t x = 10000;
float y = 36.0;
void setup() { 
Serial.begin(115200); 
pinMode(9,OUTPUT); 
TCCR1A=(1<<COM1A1)|(1<<WGM11); 
TCCR1B=(1<<WGM13)|(1<<WGM12)|(1<<CS10); 
OCR1A = ((float) y / 0.0625 ) // или OCR1A = (F_CPU/x) / 4; ??? 
ICR1 = (F_CPU/x)-1; 
} 
void loop() { 
}

Ответы (0 шт):