Msp430 FreeRTOS

Gast #1478694
Lesenswert?

Hallo, versuche das FreeRTOS auf einem MSP430F1612 zum laufen zu 
bringen. Auf deren Webseite gibts es nen Example zu der MSP430x4xx 
Family. Leider funktioniert es noch nicht so wie es sollte, zum einen 
gibt es unter anderen Probleme mit dem cTaskStartScheduler(). Da würde 
mich interessieren ob der Port für den MSP430F449 ohne weiteres auch für 
den MSP430F1612 funktioniert? Da gibt es nämlich Assemblerfunktionen 
drin, wo der Compiler immer aussteigt.
z.B.:
#define portRESTORE_CONTEXT()                \
  asm volatile (  "mov.w  pxCurrentTCB, r12    \n\t"  \
      "mov.w  @r12, r1      \n\t"  \
      "pop    r15        \n\t"  \
      "mov.w  r15, usCriticalNesting          \n\t"  \
      "pop    r15        \n\t"  \
      "pop    r14        \n\t"  \
      "pop    r13        \n\t"  \
      "pop    r12        \n\t"  \
      "pop    r11        \n\t"  \
      "pop    r10        \n\t"  \
      "pop    r9        \n\t"  \
      "pop    r8        \n\t"  \
      "pop    r7        \n\t"  \
      "pop    r6        \n\t"  \
      "pop    r5        \n\t"  \
      "pop    r4        \n\t"  \
      "bic    #(0xf0),0(r1)                \n\t"   \
                        "reti                                   \n\t" 
\ );
Scheint aber an dem reti zu liegen. Ist mir auch unklar warum er aus der 
ISR rausspringen soll, obwohl er in keiner drin ist. Hoffe jemand kennt 
sich mit dem freeRTOS aus, danke.

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