arduino uno generowani eprzebiegu prostokątnego

0

próbuje wygenerować przebieg o określonej częstotliwości na wyjściu lecz nic nie otrzymuje

void timer1_init2()
{
  DDRB |= (1 << PB1); 
  DDRB |= (1 << PB2);

  TCCR1A |= (1<<COM1A1);
  TCCR1B |= (1<<WGM13)|(1<<WGM12)|(1<<CS11);
  
  ICR1 = 1000; 
}

na tej stronie:link jest opisane ale na wyjściu otrzymuje skaczącą częstotliwość

void timer1_init4()
{      
  TCCR1A |= (1<<COM1A0); 
  TCCR1B |= (1<<WGM12) | (1<<CS12) | (1<<CS10); 
  OCR1A = 1000;
  DDRB |= (1<<PB1);
}

2

Musisz zajrzec do noty katalogowej (atmega 328p datasheet).

Chyba ze korzystasz z libki arduino. To wtedy pewnie da sie to latwo zrobic.

1

@czesław111:

Nie dałeś nic, oprócz inicjowania timera.

Różne złe rzeczy mogą sie dziać w pozostałym kodzie

0

I sprzecie

1 użytkowników online, w tym zalogowanych: 0, gości: 1