Microprocessor/Code Composer Studio DSP 기본 Code 설명
  • 728x90
    반응형

    초기화 코드

     
    #include "DSP28x_Project.h"
    
    static void InitInt(void);
    
    Uint16 Loop_status;  
    
    void main(void) 
    {
        Loop_status = 0;
    
        /* Disable Global Interrupt */
        DINT;                                              
    
        /* 고속 CLOCK 설정 */
        EALLOW;
        /* HSPCLK = SYSCLKOUT/(HISPCP*2) 
         * HSPCLK = 150MHz/(1*2) = 75MHz */
        SysCtrlRegs.HISPCP.bit.HSPCLK = 1;                  
        EDIS;            
    
        /* 시스템 컨트롤 초기화 */
        InitSysCtrl();    
        InitInt();    
    
        EINT;   /* Enable Global interrupt INTM */
        ERTM;   /* Enable Global realtime interrupt DBGM */
    
        for(;;)
        {  
        	Loop_status++;
        }
    }
    
    static void InitInt(void)
    {  
        /* 인터럽트 초기화 */
        InitPieCtrl();      /* PIE reg 개별 인터럽트 설정 초기화 */
        IER = 0x0000;       /* Core Inturrupts Enable Register 초기화 */ 
        IFR = 0x0000;       /* Core Inturrupts Flag Register 초기화 */
        InitPieVectTable(); /* 개별 인터럽트 확장 함수 */    
    }

    EINT : 전역 인터럽트 스위치 On

    DINT : 전역 인터럽트 스위치 Off

    ERTM : 리얼타임 전역 인터럽트 가동

    DRTM : 리얼타임 전역 인터럽트 해제

    EALLOW : Protected 영역에 쓰기를 위해 보호영역 해제

    EDIS : Protected 영역 보호

    ESTOP0 : 에뮬레이션 스탑 

     

    HISPCP(High-Speed Peripheral Clock Prescaler) Register

    저속회로에 고속클럭이 필요하거나 고속회로에 저속클럭이 필요한경우 HSPCLK 와 LSPCLK의 주파수 조정 레지스터를 사용하며, 각각 HISPCP 와 LOSPCP 로 구분된다.

     

    void InitSysCtrl (void)

    Step.1 와치독을 OFF 한다.

    Step.2 PLLCR 레지스터를 설정하여 SYSCLKOUT을 생성한다.

    Step.3 pre-scaler 를 설정하여 고속 주변장치 클럭과 저속  주변장치 클럭을 조정한다.

    Step.4 클럭을 ON 하여 주변장치에 공급한다.

     

    Interrupt 초기화 

    Step.1 InitPieCtrl : 개별 인터럽트 설정플래그 비트를 모두 클리어한다.

    Step.2 IER(Iterrupt Enable Register) : CPU 인터럽트 활성화 레지스터를 클리어한다.

    Step.3 IFR(Interrupt Flag Register) : CPU 인터럽트 플래그 레지스터를 클리어한다.

    Step.4 InitPieVectTable : PIE(Peripheral Interrupt Expansion) 벡터 테이블을 초기화 한다. 

     

    System Control and Interrupt Data Sheet :    

    sprufb0d(PIE).pdf
    다운로드

     

     

    728x90
    반응형
상단으로