Zeitschalter mit ATtiny13 auf STK 500 in C

OP #2291608
Lesenswert?

Hallo zusammen,

ich versuche verzweifelt mit einem Attin13 auf einem STK 500 Board einen
simplen Zeitschalter mit einem Attiny 13 zu realisieren. Das Ding soll
folgendermassen aussehen. Es soll eine Taste gedrückt werden, danach
läuft eine Timer ab der einen Ausgan für eine gewisse Zeit schaltet. Mit
einer zweiten Taste kann der Timer vorzeitug abgebrochen werden und der
Ausgang wird resettet.  Der Tiny soll im CTC Mode arbeiten. Der Timer
funktioniert so grundsätzlich auch, nur stimmt die Dauer überhaubt nicht
mit den errechneten Werten überein. Ich habe einen OCR Wert von 47
ausgerechnet bei einer internen Taktfrequenz von 4.8 MHz um einen
Interrupt nach 10ms auszulösen. Durch runterteilen der Dauer müsste ich
bei einer Wartezeit von 100 , genau 1s erreichen. Das Problem ist, dass
die Zeit immer unterschieldlich ist, mal 1s mal 3s mal 2s. Ich komme
hier einfach nicht weiter. Vielleicht könnt ihr mir ja helfen? Ich habe
das Programm vorher auf einem Mega8515 laufen gehbat und habe
entsprechende die IO Konfiguaration und die Register angepasst. Die
Taktfrequenz hab ich über das AVR Studio eingestellt
(Boardeinstellungen), dort ist auch der Code entstanden. Bitte
berücksichtigt, dass ich ein uC Neuling bin und mein Wissen aus der
Technikerausbildung habe. Also bitte nicht zu hart mit mir umspringen
falls es ein banaler Fehler ist.

Vielen Dank schonmal und schönen Abend noch

Grüße aus Bayern

Sasscha
Angehängte Dateien:
Gast #2291931
Lesenswert?

Sorry, ich wusste nicht wie ich den Code sonst schicken soll dass es 
einigermassen gut aussieht. Die Taktfrequenz hab ich über das AVR 
Studion eingestellt. Die sache mit dem CKDIV8 muss ich noch prüfen. Was 
macht dieses Bit genau?
#2291979
Lesenswert?

sascha2011 schrieb:
> Sorry, ich wusste nicht wie ich den Code sonst schicken soll dass es
> einigermassen gut aussieht.

Das macht das Forum schon ganz alleine, sogar mit Syntax-Highlighting, 
C-Files sind hier ja öfters.

Du solltest Deinem Editor nur vorher sagen, die Tabs durch Leerzeichen 
zu ersetzen.
Der Forum-Formatter kann ja nicht wissen, wie lang ein Tab bei Dir 
eingestellt ist.


Peter

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