본문 바로가기
MCU/C2000

[TMS320F28377D] CCS 프로젝트 설정 및 기본 프로그램

by linuxgo 2025. 8. 6.
반응형

TMS320F28377D는 Texas Instruments의 C2000 시리즈 마이크로컨트롤러로, 실시간 제어 애플리케이션에 최적화된 강력한 칩입니다. 이 포스트에서는 Code Composer Studio(CCS)에서 TMS320F28377D 프로젝트를 생성하고, GPIO를 사용해 LED를 깜빡이는 기본 프로그램을 설정하는 방법을 단계별로 설명합니다. 초보자도 따라 할 수 있도록 상세히 구성했습니다.

준비물

  • 하드웨어: TMS320F28377D 개발 보드 (예: 싱크웍스 초소형 모듈, TI 제어 카드)
  • 소프트웨어: Code Composer Studio (CCS), C2000Ware
  • 부품: LED, 330Ω 저항
  • JTAG 에뮬레이터: 디버깅용 (예: XDS100v2)

TMS320F28377D 기본 프로그램 코드

GPIO34를 사용해 LED를 0.5초 간격으로 깜빡이는 예제 코드입니다.

#include "F28x_Project.h"

void InitGpio(void);

void main(void)
{
    InitSysCtrl();      // 시스템 클럭 및 주변 장치 초기화
    InitGpio();         // GPIO 초기화
    DINT;               // 인터럽트 비활성화
    InitPieCtrl();      // 인터럽트 제어 레지스터 초기화
    IER = 0x0000;
    IFR = 0x0000;
    InitPieVectTable(); // 인터럽트 벡터 테이블 초기화

    for(;;)
    {
        GpioDataRegs.GPBTOGGLE.bit.GPIO34 = 1; // GPIO34 토글
        DELAY_US(500000); // 0.5초 대기
    }
}

void InitGpio(void)
{
    EALLOW;
    GpioCtrlRegs.GPBMUX1.bit.GPIO34 = 0; // GPIO 기능 설정
    GpioCtrlRegs.GPBDIR.bit.GPIO34 = 1;  // 출력 방향 설정
    EDIS;
}

CCS 프로젝트 생성 및 설정 단계

Code Composer Studio에서 TMS320F28377D 프로젝트를 생성하는 상세 과정을 안내합니다.

1. CCS 설치 및 C2000Ware 준비

  •    CCS 설치: TI 공식 웹사이트에서 최신 버전의 Code Composer Studio를 다운로드하고 설치하세요.
  •    C2000Ware 설치: C2000Ware 다운로드에서 설치 (기본 경로: C:\ti\c2000).
    •    C2000Ware에는 TMS320F28377D의 헤더 파일, 드라이버 라이브러리, 예제가 포함됩니다.

2. 새 프로젝트 생성

  1. CCS를 실행하고, 메뉴에서 File > New > CCS Project를 선택합니다.
  2. New Project Wizard 창에서 다음을 설정:
    •    Target: TMS320F28377D를 선택 (Generic C28x Device 목록에서 확인).
    •    Project Name: 예: F28377D_LED_Blink.
    •    Compiler Version: 최신 TI C2000 컴파일러 선택 (예: TI v20.2.0.LTS 이상).
    •    Project Type: Empty Project 선택.
    •    Output Type: Executable 선택.
  3. Finish를 클릭하여 프로젝트 생성.

3. C2000Ware 라이브러리 및 헤더 파일 추가

  1. C2000Ware 파일 복사:
    •    C2000Ware 경로(C:\ti\c2000\C2000Ware_X_XX_XX_XX)에서 device_support/f2837xd 폴더의 includecommon 폴더를 프로젝트에 복사.
    •    예: F28x_Project.h, F2837xD_device.h 등이 포함된 폴더.
  2. 프로젝트 속성 설정:
    •    프로젝트 탐색기에서 프로젝트 이름을 우클릭하고 Properties 선택.
    •    Build > C2000 Compiler > Include Options:
      •    Add dir to #include search path에서 C2000Ware의 include 경로 추가 (예:       C:\ti\c2000\C2000Ware_X_XX_XX_XX\device_support\f2837xd\headers\include).
    •    Build > C2000 Linker > File Search Path:
      •    Include library file에서 driverlib.lib 추가 (경로: C:\ti\c2000\C2000Ware_X_XX_XX_XX\driverlib\f2837xd\driverlib\ccs\Debug\driverlib.lib).
      •    링커 커맨드 파일 추가 (예: 2837xD_RAM_lnk_cpu1.cmd).

4. 코드 작성 및 빌드

  1. 프로젝트 탐색기에서 main.c 파일을 열고 위의 예제 코드를 붙여넣기.
  2. GPIO 핀 확인: 개발 보드의 핀맵을 확인하여 LED가 연결된 GPIO 번호(예: GPIO34)를 조정.
  3. Project > Build Project를 클릭하여 빌드.
  4. 오류가 없으면 성공 메시지 확인.

5. 하드웨어 연결 및 디버깅

  1. GPIO 연결: GPIO34에 LED와 330Ω 저항 연결 (개발 보드 매뉴얼 참고).
  2. JTAG 연결: XDS100v2 또는 기타 JTAG 에뮬레이터를 보드에 연결.
  3. 디버그 설정:
    •    Run > Debug Configurations에서 새 구성 생성.
    •    타겟으로 TMS320F28377D와 JTAG 에뮬레이터 선택.
    •    Debug 버튼 클릭하여 코드 업로드 및 실행.
  4. LED가 0.5초 간격으로 깜빡이는지 확인.

문제 해결 팁

  • 빌드 오류: F28x_Project.h 또는 driverlib.lib 경로가 올바른지 확인.
  • JTAG 연결 실패: CCS에서 Target Configurations에서 연결 설정 확인.
  • LED 동작 안 함: GPIO 핀 번호와 보드 핀맵 일치 여부 점검.

추가 자료

  • TI 문서: C2000Waredriverlib/f2837xd/examples/gpio.
  • 싱크웍스 매뉴얼: TMS320F28377D 초소형 모듈 핀 배치.
  • TI E2E 포럼: TMS320F28377D 관련 질문 검색.
반응형