Skip to content

Instantly share code, notes, and snippets.

@avr-programmierung
Created May 14, 2019 11:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save avr-programmierung/d8aaa47fe1ba94c4fa443a5e8acc9770 to your computer and use it in GitHub Desktop.
Save avr-programmierung/d8aaa47fe1ba94c4fa443a5e8acc9770 to your computer and use it in GitHub Desktop.
100Hz Rechtecksignal am OC1A (Pin 15) erzeugen
/* rectangle_01.c
* Ein 100Hz Rechtecksignal am OC1A (Pin 15) erzeugen
* Controller: ATmega88 @ 1MHz */
#include <avr/io.h>
int main(void)
{
DDRB |= (1<<PB1); // OC1A = output
OCR1A = 39999; // Compare match auf 39999 setzen
TCCR1A = (1 << COM1A0); // Toggle OC1A bei einem Compare Match
TCCR1B = (1 << WGM12) + (1 << CS10); // Mode 4, CTC on OCR1A und Prescaler = 1
while(1)
{
asm ("NOP"); // Nichts tun
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment