Ich denke es geht nicht da er die ganze Zeit sofrt wieder ii in OCR1X schreibt und ihm nie Zeit bleibt das dann auch auszufüren. Er schreibt ja sofort wieder nen neuen Wert in OCR1X, nur das der Wert der gleiche wie der alte ist. Probier mal in dein erstes Beispiel eine Delay Funktion einzubauen die nach OCR1B=11; vielleicht 1Sekunde wartet.
So ähnlich wie hier: (von mc-projekt)
Code:
#include <avr/io.h>
#include <pwm_init.c>
#include <simple_delayroutinen.c>
int main(void) {
unsigned char i = 0;
pwm_init ();
for (;;) {
for (i=0; i<254; i++) {
OCR1A = i;
OCR1B = i;
delay_us (10000);
}
}
}
Wenn du das Beispiel sowieso von da hast? Wieso hast du dann die delay Funktion rausgenommen?
Gruß Muraad
Lesezeichen