본문 바로가기

[DSP]/DSP280x

TMS320F2808 최적화 옵션 문제


#define Led1Off()      GpioDataRegs.GPADAT.bit.GPIO16 = 1
#define Led1On()      GpioDataRegs.GPADAT.bit.GPIO16 = 0

#define Led2Off()      GpioDataRegs.GPADAT.bit.GPIO15 = 1
#define Led2On()      GpioDataRegs.GPADAT.bit.GPIO15 = 0

main(void)
{
    :
    while(1)
    {
        swiech(status)
        {   
          case 0:
            Led1On();Led1Off();
            break;

          case 1:
            Led1Off();Led1On();
            break;
               :
    }
}

최적화 옵션처리후 정상 동작하지 않음


아래와 같이 처리 하니 정상 동작을 잘한다.

#define NOP()          asm(" RPT #7 || NOP")

#define Led1Off()      GpioDataRegs.GPADAT.bit.GPIO16 = 1;NOP()
#define Led1On()      GpioDataRegs.GPADAT.bit.GPIO16 = 0;NOP()

#define Led2Off()      GpioDataRegs.GPADAT.bit.GPIO15 = 1;NOP()
#define Led2On()      GpioDataRegs.GPADAT.bit.GPIO15 = 0;NOP()




 

반응형