Was mich ein wenig stört.
Wo ist der Sprungeintrag für den Reset der bei Adresse 0 im Flash, also im Programmspeicher stehen sollte ?
Hiermal ein Auszug für einen ATtiny13
Code:
.include "tn13def.inc" ;Label Zuweisungen
;
;Programmspeicher initialisieren
;
.CSEG ;Code Segment
.ORG $0000 ;Programm beginnt bei Adresse 0
;
;Programmstart mit Interrupt Vektoren
;
rjmp Anfang ;(RESET) External Pin, Power-on Reset, Brown-out
reti ;(INT0)External Interrupt Request 0
reti ;(PCINT0) Pin Change Interrupt Request 0
reti ;(TIM0_OVF) Timer/Counter Overflow
reti ;(EE_RDY) EEPROM Ready
reti ;(ANA_COMP) Analog Comparator
reti ;(TIM0_COMPA) Timer/Counter Compare Match A
reti ;(TIM0_COMPB) Timer/Counter Compare Match B
reti ;(WDT) Watchdog Time-out
reti ;(ADC) ADC Conversion Complete
;
; Hier Startet das Programm bei einem Reset
;
Anfang: ldi r16,$FF ;Zählerwert laden...
...
Bernd_Stein
Lesezeichen