Fr4nk
09.02.2010, 09:22
Hallo zusammen,
da ich das auf die schnelle nicht finde, frage ich lieber gleich, dazu folgender Quelltext:
/***Programmanfang***/
#include <avr/io.h>
#ifndef F_CPU
#define F_CPU 16000000 //16MHz
#endif
int main(){
DDRB = (1<<PB0); //PB0 auf Ausgang
while(1){
PORTB |= (1<<PB0); //einschalten und
PORTB &= ~(1<<PB0); //sofort wieder ausschalten
}
return 0;
}
/***Programmende***/
Das Programm soll natürlich mit maximaler Frequenz den PORT/PIN B0 ein und ausschalten. Ich bekomme aber 800kHz.
Meine Fusebits:
CKSEL = 1111 (16MHz Quarz)
CKOPT = 0
SUT0 = 0
SPIEN = 0
der Rest auf 1
Frage 1:
Dachte die maximale Frequenzausgabe liegt bei mindestens 1/2 F_CPU also 8MHz, stimmt das?
Frage 2:
Die Fusebits sind okay?
Beste Grüße
Frank
da ich das auf die schnelle nicht finde, frage ich lieber gleich, dazu folgender Quelltext:
/***Programmanfang***/
#include <avr/io.h>
#ifndef F_CPU
#define F_CPU 16000000 //16MHz
#endif
int main(){
DDRB = (1<<PB0); //PB0 auf Ausgang
while(1){
PORTB |= (1<<PB0); //einschalten und
PORTB &= ~(1<<PB0); //sofort wieder ausschalten
}
return 0;
}
/***Programmende***/
Das Programm soll natürlich mit maximaler Frequenz den PORT/PIN B0 ein und ausschalten. Ich bekomme aber 800kHz.
Meine Fusebits:
CKSEL = 1111 (16MHz Quarz)
CKOPT = 0
SUT0 = 0
SPIEN = 0
der Rest auf 1
Frage 1:
Dachte die maximale Frequenzausgabe liegt bei mindestens 1/2 F_CPU also 8MHz, stimmt das?
Frage 2:
Die Fusebits sind okay?
Beste Grüße
Frank