Hab hier jetzt mal ein kleines Programm geschrieben. Funktioniert natürlich mal wieder gar nix!!!
Code:
#include <avr/io.h>
#include <stdint.h>
#define CPU_F 1000000UL
int main(void)
{
while(1)
{
DDRB |= (1<<DDB3); //Damit ist PB4 (OC0 PWM-Ausgang) als Ausgang gesetzt
PORTB |= (1<<PB3);
TCCR0 |= ((1<<WGM00) | (1<<WGM01)); //hier stelle ich Modus 3 ein (fast PWM)
TCCR0 |= ((1<<COM00) | (1<<COM01)); //Set OC0 on Compare Match, Clear OC0 on Top
TCCR0 |= ((1<<TSC00) | (1<<TSC02)); //Takt kommt vom Vorteiler (prescaler) setzt
//die ZählerFrequenz auf ca. 1kHz (teilung durch 1024)
TCNT0 = 0xff; //Zähler soll von 0 bis 255 zählen
OCR0 = 0x80; //Match soll bei 128 erfolgen, Match ist doch aber gleich Top, oder?
//(bottom = 0), (Match = 128), (Top=Max=255)???
}
}
//LED müsste ca. halb hell leuchten
Kann mir jemand sagen wieso? Kann mir jemand was zu meinem Beitrag oben sagen, stimmen die Kommentare?
Hoffe irgendjemand kann mir helfen.
MfG Jan
Lesezeichen