RX 소프트웨어 설정


easyDSP는 RX Smart Configurator 에서 생성된 소스 코드를 사용하고 있습니다.
하기에서는 RX Smart Configurator v1.40기준으로 설명드립니다.

STEP 1 : Smart Configurator 설정

Components 탭에서 'Add component' 버튼을 누르고, SCI Driver 컴포넌트를 추가하면



아래처럼 r_sci_rx 및 r_byteq 컴포넌트가 생성됩니다.

easyDSP는 SCI 채널 1을 사용하므로,  r_sci_rx 컴포넌트에서 관련 설정이 필요합니다. 아래 그림 빨간색 부분을 참조하세요. easyDSP 용도로는 circular 버퍼를 사용할 필요가 없습니다만 만약 다른 용도로 사용하게 된다면, 추후 r_byteq 설정에서 적절한 주의가 필요합니다. 큐버퍼의 크기는 TX, RX 각각 최소 12개, 2개가 필요합니다.

 

TEI 인터럽트는 사용하지 않습니다.
ERI, TEI 인터럽트 순위는 가장 낮은 1로 설정하세요.

 

SCI1의 RXD1, TXD1 핀을 활성화시킵니다. 다른 SCI1 핀은 사용하지 않습니다.

다음은 r_byteq 컴포넌트 설정입니다. easyDSP 통신을 위해 최소 2개의 queue control blocks이 필요합니다.
Circular 버퍼를 사용하지 않는다면 'Use disable interrupt to protect queue' 값을 Unused로 설정합니다. Circular buffer 사용시 'Used'로 설정합니다.

 

r_bsp 컴포넌트의 Process Mode를 Stay in Supervisor mode로 설정해야 합니다.

Pins 탭에서 RXD1, TXD1 핀을 할당합니다. 'Assignment'에서의 설정은 RX 하드웨어 설정 과 매칭시켜 주세요. Pin Number 설정은 MCU 데이타시트를 참조하여 선택하시기 바랍니다.

마지막으로 코드를 생성합니다.
 

 

STEP 2 : easyDSP_init() 함수 호출

먼저 easyDSP 통신을 위해 제공되는 소스파일 (easyRX.h, easyRX.c)을 프로젝트에 포함하시기 바랍니다.
해당 파일은 easyDSP 프로그램이 인스톨된 폴더에서 \source\RX에서 찾을 수 있습니다.

먼저 easyRX.h파일에서 easyDSP 통신에 사용할 SCI 채널의 보드레이트를 설정하시기 바랍니다. 이 값은 easyDSP 프로젝트 설정에서 지정할 보드레이트와 서로 일치해야 합니다.

 

그리고 하기와 같이 main.c에서 easyDSP_init()를 호출하여 주십시요.
easyDSP가 사용하는 SCI 채널 관련 인터럽트의 순위는 가장 낮은 1로 설정됩니다. 따라서 다른 사용자 인터럽트의 순위는 이보다 높은 값으로 설정하세요.

  
 

STEP 3 : IDE 설정

1. easyDSP에서 사용하는 출력 파일(easyDSP 프로젝트에서 선정)은 DWARF 형식 디버깅 정보를 가지는 파일이어야 합니다. 따라서 CC-RX 컴파일러를 사용하실 경우, 매 컴파일마다 DWARF 디버깅 정보를 가지는 출력 파일을 생성시켜 줘야 합니다. e2 studio 경우 기본 IDE 설정에서 이를 지원하며, *.x 확장자로 출력 파일이 생성됩니다.
2. 매 컴파일마다 hex 파일(인텔 형식)이 생성되어 출력 파일과 동일한 폴더에 동일한 이름으로 위치하도록 개발 환경을 설정 해주세요. hex 파일은 플래시 프로그래밍할 때 사용됩니다.
   Hex 파일 확장자는 hex 또는 ihex가 될 수 있습니다. easyDSP는 확장자 hex 파일의 존재를 먼저 확인하여 사용하고, 존재하지 않을 경우 확장자 ihex 파일을 사용합니다.

예를 들어 e2 stuio에서 GCC 컴파일러 사용 경우 :


또는 e2 studio에서 CC-RX 컴파일러 사용 경우 :


3. easyDSP로 변수를 억세스하기 위해서는, 출력 파일(예:*.elf)에 debug information이 반드시 포함되어야 합니다.
이를 위해 어셈블리/ 컴파일러/링커 옵션을 적절히 선택하시기 바랍니다.
4.
최적화 또는 링커 세팅에 따라, 선언되었지만 실제 사용되지 않는 변수는 debug information에 포함되지 않아 easyDSP에서 모니터링되지 않을 수 있습니다. 이 경우에도 변수가 포함되게 하기 위해서라면 적절히 옵션을 변경하시기 바랍니다.
5. easyDSP는 little endian 형식만 지원합니다.

e2 stuio에서 GCC 컴파일러 사용 경우 :
 

또는 e2 studio에서 CC-RX 컴파일러 사용 경우 :