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