[TI]/LM4F2011. 12. 9. 21:00

[LM4F] LM4F232H 의 GPIO속도 테스트

[LM4F] LM4F232H 의 GPIO속도 테스트



TI사의 Cortex-M4 시리즈 LM4F232 가 출시 되었다. 
기존 Cortex-M3 에 비해 향상된 부분은 속도가 50Mhz에서 80Mhz로 증가 되었고 FPU가 추가 되었다.
그래서 대략적인 속도 체크를 해 보았다.
(같은 Cortex-M4 코어 STM32F4 속도 측정 결과 참고)


시스템 클럭이 변경되었기 때문에 PLL설정 부분에 코드 수정이 필요하다.

void SystemInit(void)
{
    // Set Clock to illegal 100Mhz
   // SysCtlClockSet(SYSCTL_SYSDIV_2 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN |  SYSCTL_XTAL_16MHZ);

    // Set Clock to 80Mhz MAX. legal speed
    //SysCtlClockSet(SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN |  SYSCTL_XTAL_16MHZ);
}

  

메인 클럭 80Mhz에서 GPIO토글 속도는 10Mhz정도의 출력 속도를 보인다.

 가격이 저렴하긴 (5~6$ @1K) 하지만 그렇게 매리트 있지는 않는것 같다.
단순 비교는 좀 그렇지만 8$대의 STM32F4 와비교해 보면 ST가 더 좋은것 같다.

[참고] MCU속도 측정 결과 

Posted by nexp

댓글을 달아 주세요

[TI]/LM4F2011. 12. 8. 21:00

[LM4F232 EKI] TI Cortex-M4 EVM 보드 테스트

[LM4F232 EKI] TI Cortex-M4 EVM 보드 테스트



TI의 Cortex-M4 LM4F  EKI LM4F232 보드에 연결되어 있는 LED를 제어 해 보았다.

PORTG에 연결되어 있고 기존 Setllaris 시리즈 코드와 호환 되기 때문에 별 수정없이 그대로 동작한다.






[LM4F232 EVM]  HAL 드라이버 코드

#define LED1_BIT    BIT2
#define LED1_PORT    GPIOG

#define Led1Off()    cbi(LED1_PORT, LED1_BIT)
#define Led1On()    sbi(LED1_PORT, LED1_BIT)
#define Led1Toggle()   Tbi(PROTG, LED1_BIT)

#define Led1Init()     SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOG);\
        GPIOPinTypeGPIOOutput(GPIO_PORTG_BASE, LED1_BIT);\
        GPIOPadConfigSet(GPIO_PORTG_BASE, LED1_BIT, GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_STD);





[LM4F232 EVM] LED 제어 테스트 예제 코드
#include "system.h"

int main()
{
    SystemInit();

    Led1Init();
    Led1On();

    while(1)
    {
        Led1Toggle();
        Delay(1000);
    }
}
Posted by nexp

댓글을 달아 주세요

[TI]/LM4F2011. 12. 8. 20:30

[LM4F] 개발환경 설정

[LM4F] 개발환경 설정

Cortex-M4 코어는 IAR EWARM 6.x 에서 개발 가능하다. 



프로젝트 생성후 옵션에서 Target에서 Cortex-MF4 설정 한다.






EWARM을 위해 icf 파일을 등록한다







기존 드라이버 파일은 driverlib-cm4f.a로 변경되었고 startup코드도 변경되었으니 수정해 주면 기존 코드 수정없이 컴파일 된다.
 

Posted by nexp

댓글을 달아 주세요