C2000 Assembly

void Flash_StartApplication(uint32_t startAddress)
{
    asm ("      C28OBJ"); //Select C28x object mode
    asm ("      C28ADDR") ; //Select C27x/C28x addressing

    asm ("      SETC INTM");
    asm ("      ZAPA");
    asm ("      MOV @SP,#0");
    asm ("      PUSH ACC");
    asm ("      PUSH AL");
    asm ("      MOV AL, #0x0a08");
    asm ("      PUSH AL");
    asm ("      MOVL XAR7, #0x003F3FFE");
    asm ("      PUSH XAR7");

    asm ("      POP RPC");
    asm ("      POP ST1");
    asm ("      POP ST0");
    asm ("      POP IER");
    asm ("      POP DBGIER");
    asm ("      LRETR");
}

Share >