본문 바로가기

[TI]/TM4C

TM4C123 - IAR 컴파일러 개발환경 설정

TM4C123 - IAR 컴파일러 개발환경 설정

TM4C123 개발 환경 설정을 위해 IAR 컴파일러를 이용하였고 개발 환경을 구축할 수 있다.


Tiva-C 시리즈는 하드웨어 자체의 ROM 영역에 기본적인 라이버러리가 포함되어 있기 때문에 개발 환경 자체는 상당히 간단하게 구성할 수 있다. 함수의 정의 파일이 있는 inc 폴더만 있으면 끝난다.



IAR 실해하고 Device를 [TM4C123 EVM]에 적용된 TM4C123FH6PM으로 선택한다.



내부 ROM 코드를 이용하기 위해서는 TARGET_IS_BLIZZARD_RB1 를 정의 해 주면된다.




그리고 ROM코드를 사용하기 위해서는 접두사로 ROM_으로 시작 하는 함수를 사용하면 된다.

#define _SET_SYSTEM_CLK()               ROM_SysCtlClockSet(SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ)


//-----------------------------------------------------------------------------

//LED Driver

#define LED1_BIT BIT2

#define LED1_PORT PORTB


#define Led1Off() GPIOPinWrite(GPIO_PORTB_BASE, LED1_BIT, LED1_BIT);

#define Led1On() GPIOPinWrite(GPIO_PORTB_BASE, LED1_BIT, 0);



#define Led1Init()   ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);\

                                             ROM_GPIOPinTypeGPIOOutput(GPIO_PORTB_BASE, LED1_BIT);

//-----------------------------------------------------------------------------





코드 사이즈

실제 ROM코드를 이용하여 컴파일 해보면 코드사이즈가 272byte로 아주 작다.

[1] = D:\WORK\ARM\TM4C\tm4c123_evm\ex01_led\ewarm66\Debug\Obj

[2] = command line

[3] = dl7M_tln.a

[4] = driverlib.a

[5] = m7M_tlv.a

[6] = rt7M_tl.a

[7] = shb_l.a


  272 bytes of readonly  code memory

  620 bytes of readonly  data memory

  512 bytes of readwrite data memory




시리얼 포트 및 printf 코드를 이용해도 1.3kbyte 밖에 되지 않아 코드 사이즈 측면에서 보면 상당히 좋을것 같다.

  1 376 bytes of readonly  code memory

    636 bytes of readonly  data memory

    520 bytes of readwrite data memory


반응형