ATmega8 Timer probleme

OP #2261335
Lesenswert?

Hallo,

ich beschäftige mich Studiums bedingt mit dem oben erwähnten µC. Ich 
habe mir ein Programm geschrieben das so eigentlich funktionieren sollte 
wenn ich das bei AVR Studio durchklicke macht es das auch und auch in 
der Realität wird das gemacht was erwartet wird bloß nicht mit den 
werten.
Ich habe eine Winkelberechnung realisiert also
Phi= ((Delta t)/(Periode))*360.0 da kommt auch was raus aber nicht das 
was ich erwarte. Ich lege an den Eingang von INT0 und INT1 jeweils ein 
Rechteck mit -0.3 bis 5V an, Die ein Delta t von 312µs haben und eine 
Frequenz von 100Hz also erwarte ich das ein Winkel von ca.11,3° aber 
raus kommt was mit 43°. Ich ermittele die Werte wie im Anhang zu sehen 
ich hab auch noch die Interrupt Freigabe für INT0 und INT1 mit beigefügt 
sowie die Initialisierung der Timer. Im Programm sind das alles separate 
.c Dateien mit entsprechenden .h Dateien also schön modular. Es ist auch 
soweit kommentiert dass es verständlich sein sollte. Wenn jemand die 
Muße haben sollte sich das anzuschauen würde mich das freuen und für 
alle Anregungen wäre ich dankbar. Langsam hab ich nämlich keine Ideen 
mehr.

Delta t wird auch anscheinend halbwegs richtig berechnet es schwangt 
zwar bisschen hin und her aber es ist nahe der Realität. Die Periode 
sagt aber aus wenn ich mir dann mal den Inhalt der Variable T0 anschaue 
das da ca.500Hz anliegen sollen (schon umgerechnet von (T0/16M)^(-1)) 
Was wie oben schon erwähnt nicht sein kann da ich da ein Rechteck dran 
habe mit 100 Hz.

F_CPU ist 16000000 (16 MHz)

mfg
Marek
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren