Ви не увійшли.
Приветствую!
Работаю над проектом для атмега328р + кварц 16мгц (или ардуино нано 3)
Нуждаюсь в создании 2х меандров 50гц со сдвигом друг от друга 5мс (могу приложить осциллограмму, но не пойму как тут это сделать)
Меандры должны быть на разных пинах.
Очень важна именно качественная привязка второго меандра к первому. В loop будет достаточное количество вычислений, поэтому важно, что бы меандры работали независимо от основного кода программы.
Заранее благодарен за помощь!
Неактивний
Даташит на ATMega328P, параграф 15 "16-bit Timer/Counter1 with PWM".
Если не хотите разбираться самостоятеьно, обращайтесь, сделаю.
Неактивний
void init_Timer1(void) {
TCCR1A = (1 << COM1A0) | (1 << COM1B0); // Toggle OC1A/OC1B on Compare Match
TCCR1B = (1 << WGM12) | (1 << CS12) | (1 << CS10); // CTC mode, clk/1024 (From prescaler)
OCR1A = 312; // 20 ms at 16MHz
OCR1B = 234; // 15 ms at 16MHz
TCNT1 = 0;
}
void setup() {
DDRB |= _BV(1) | _BV(2); // Enable the output driver on PB1, PB2 (UNO pins 9, 10)
init_Timer1();
}
void loop() {
}
Очень благодарен!
А если нужно будет сдвиг инвертировать, т.е. сдвинуть канал А относительно B, это будет так?
OCR1A = 234;
OCR1B = 312;
И встречный вопрос - как поменять сдвиг А относительно B в процессе работы?
Неактивний
Даташит на ATMega328P, параграф 15 "16-bit Timer/Counter1 with PWM".
Если не хотите разбираться самостоятеьно, обращайтесь, сделаю.
Очень благодарен! Буду иметь ввиду.
Неактивний
А если нужно будет сдвиг инвертировать, т.е. сдвинуть канал А относительно B, это будет так?
OCR1A = 234;
OCR1B = 312;
Нет
И встречный вопрос - как поменять сдвиг А относительно B в процессе работы?
?А как же:
В loop будет достаточное количество вычислений, поэтому важно, что бы меандры работали независимо от основного кода программы.
И встречный вопрос - как поменять сдвиг А относительно B в процессе работы?
Двухканальный тумблер поможет менять выходы местами.
Даташит на ATMega328P, параграф 15 "16-bit Timer/Counter1 with PWM".
Если не хотите разбираться самостоятеьно, обращайтесь, сделаю.
Вернулся опять к этому проекту. Хочу всё таки побороть данный вопрос. Есть пару сотен грн. Если устроит, то готов обратится.
Неактивний