Hey,
Irgendwie bin ich gerade ein bisschen verwirrt.
Ich habe zwei assembler Befehle mit hi8 und lo8 und bekomme dort jeweils
eine Fehlermeldung. Folgender Code:
1 | ldi r18, hi8( F_CPU / 100 / 3 )
|
2 | ldi r19, lo8( F_CPU / 100 / 3 ) - 1
|
Nun kommt dazu folgende Fehlermeldung.
1 | Error: `)' required
|
2 | Error: garbage at end of line
|
3 | Error: `)' required
|
4 | Error: garbage at end of line
|
Wenn ich jedoch ein hi8( 0x3000 ) angebe, dann kompiliert er alles
richtig. F_CPU wird richtig mit übergeben mit 368600UL. Ich habe nun
schon wie verrückt gegoogelt. Konnte jedoch nichts finden. Also,
entweder ist bei mir gerade der Wurm drin, oder es ist schon zu spät.
Wer weiß.
Bei AVR-Studio habe ich es wie folgendermaßen gemacht.
1 | .equ F_CPU = 3686400
|
2 | .equ CYCLE_HIGH = HIGH( F_CPU / 100 / 3 )
|
3 | .equ CYCLE_LOW = LOW( F_CPU / 100 / 3 ) - 1
|
Nun wollte ich es halt nur auf avr-as portieren. Aber irgendwie mag der
nicht.
Wenn ihr dazu eine Lösung habt, wäre ich euch sehr dankbar!
mfg
sep