Timer beim Attiny26

Gast #856872
Lesenswert?
• ▲
▼
Hallo!

Ich hatte vor, eine LED im Sekudnentakt blinken zu lassen, allerdings 
macht mir der Timer einen Strich durch die Rechnung.

Als erstes berechnete ich die Taktrate:
Oszillatorfrequenz/Prescaler = 10^6Hz/64 = 15625Hz
Daraus leitete ich ab, dass der Timer in einer Sekunde 15625 Schritte 
zählt. Um auf eine Sekunde zu kommen, ziehe ich die maximalen 
Zählschritte von der Taktrate ab:
65535-15625=49910

Daraus schrieb ich folgendes Programm:
1
'Versuch
2
'Timer-Übung
3

4
$regfile = "Attiny26.dat"
5
$crystal = 1000000
6

7

8
Config Porta.5 = Output
9
Config Porta.6 = Output
10
Led1 Alias Porta.5
11
Led2 Alias Porta.6
12

13
Config Timer1 = Timer , Prescale = 1024
14
Enable Timer1
15
On Timer1 Ueberlauf
16
Enable Interrupts
17
Timer1 = 49910
18

19

20

21
Do
22

23

24
   Led2 = 0
25
   Waitms 100
26

27
   Led2 = 1
28
   Waitms 100
29

30
Loop
31

32

33

34
Ueberlauf:
35

36
   Timer1 = 49910
37
   Toggle Led1
38

39
Return
40

41
End

Leider bekomme ich beim kompilieren nur Fehlermeldungen, da "Value 
doesen't fit into BYTE[49910]".

Kann mir jemand sagen, warum das so ist?

Vielen Dank für eure Antworten!

Thomas
Gast #856924
Lesenswert?
• ▲
▼
Ebenfalls kuhl

Bei dem Niveau mancher Antworten frage ich mich, ob die Antwortgeber 
vor Inbetriebnahme ihres Rechners das Gehirn eingeschaltet haben.

Hochachtungsvoll

Herbert von Caravan
Gast #857009
Lesenswert?
• ▲
▼
Hallo!

Vielen Dank für eure Antworten!
Eine Frage hätte ich noch: Im Datenblatt steht, dass der Timer1 ein 
sogenannter "High-Speed"-Zähler ist. Was genau kann ich mit diesem 
"High-Speed"-Zähler machen?

Übrigens: Ich besitze seit einem Unfall nicht die Fähigkeit aufrecht zu 
gehen.

MfG
Thomas

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