Forum: Mikrocontroller und Digitale Elektronik Problem bei Attinity 15L


von Klein (Gast)


Lesenswert?

Hallo,

hoffe ihr könnt mir helfen. Habe unten das Programm gemacht und in drei 
verschiedene IC geladen, zwei lassen sich nun nicht mehr beschreiben und 
der eine macht zwar 1 an den Ausgang PB0, aber am PB1 liegt nichts an.

Kann es sein das ich den Timer falsch ansteuere ???
Für Hilfe wäre ich sehr dankbar!


;-----------------------------------------------------------------;
.include "tn15def.inc"      ;
.org 0x00
rjmp RESET ; Reset handler
;rjmp EXT_INT0 ; IRQ0 handler
;rjmp PIN_CHANGE ; Pin change handler
;rjmp TIM1_CMP ; Timer1 compare match
;rjmp TIM1_OVF ; Timer1 overflow handler
.org 0x08    rjmp TIM0_OVF ; Timer0 overflow handler
;rjmp EE_RDY ; EEPROM Ready handler
;.org 0x06    rjmp ANA_COMP ; Analog Comparator handler
;rjmp ADC ; ADC Conversion Handler

; ---- Hauptprogramm --- ;
.org 0x50
RESET:
;-----------------------------------------------------------------;
;    Ports initalisieren                      ;
;-----------------------------------------------------------------;


  ; --- Counter 0 --- ;

  ldi r16,0x02
  out TCCR0, r16    ; Counter Setzen auf 1/256
  ldi r16,0x00
  out TIFR, r16    ; Flag Counter 0 löschen
  ldi r16,0x02
  out TIMSK,r16    ; Interrupt setzen


  ; --- PORT --- ;

  ldi r16,0x03
  out DDRB,r16    ; PORT 0 und 1 als Ausgang setzen



  sei          ; Aktiviere die Interrupts

LOOP:
  nop
  nop
  SBI PORTB,0      ; SETZE PB1
  rjmp LOOP


TIM0_OVF:
  SBI PORTB,1      ; SETZE PB1
  ldi r16,0x00
  out TIFR, r16    ; Flag Counter 0 löschen
reti

von Gast (Gast)


Lesenswert?

>lassen sich nun nicht mehr beschreien

Fuses ?????????????

+ ach ja geht nicht mehr!

was hast Du wirklich gemacht?

von reti (Gast)


Lesenswert?

wo ist die Initialisierung des SP?

>reti

von Volker (Gast)


Lesenswert?

Der tiny15l hat einen Hardware-Stack.

von Gast (Gast)


Lesenswert?

.. sorry

von Klein (Gast)


Lesenswert?

Hardware Stack ?

Muss ich den noch irgendwie initalisieren ?

     ldi r16, LOW(RAMEND)  ;
            out SPL, r16
            ldi r16, HIGH(RAMEND) ;
            out SPH, r16

Diesen Code kann ich nicht einbinden, weil eben kein RAM... Was läuft 
falsch? In der Simulation funktioniert alles einwandfrei!

von Gast (Gast)


Lesenswert?

>verschiedene IC geladen, zwei lassen sich nun nicht mehr beschreiben

was hast Du gemacht   ?????

von Volker (Gast)


Lesenswert?

>Hardware Stack ?

>Muss ich den noch irgendwie initalisieren ?

Nein, den kann und braucht man nicht initialisieren. Mußt nur darauf 
achten daß dieser nicht besonders groß ist.

von Gast (Gast)


Lesenswert?

>Kann es sein das ich den Timer falsch ansteuere ???
>Für Hilfe wäre ich sehr dankbar!

Was willst mit Deinem Prog. erreichen?

von Gast (Gast)


Lesenswert?

>ldi r16,0x00
  >out TIFR, r16

wenn Du es an/aus schalten willst

    com r16  ; R16 = / R16

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.