wie ich schon sagte, alles zu theoretisch ( A = A*2)
Du müsstes mal den Codeausschnitt oder den Algorithmus zeigen.
ASM Routinen für die Berechnungen
gute Idee, da Bascom in ASM direkt die Bascom-Variablen ansprechen kann:
Hier mal ein Codeschnipsel für eine NoSave-ISR mit zwei Variablen in den verschiedenen Schreibweisen (Pointer etc)
Code:
Config Timer0 = Timer , Prescale = 1024 'Takt: 64µs
On Timer0 Timer_irq Nosave 'Timerüberlauf ISR
Const Timervorgabe = 0
Dim Ueberlauf As Byte 'wegen Assembler als Byte
Timer_irq:
'Nosave ISR -> save used register
push r24
in r24,sreg
push r24
'Timer0 laden
ldi r24, Timervorgabe
!out Tcnt0 , R24
'Set Ueberlauf
ldi r24, $01
sts {Ueberlauf}, r24
'restore used register
pop r24
!out sreg,r24
pop r24
Return
Lesezeichen