주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.

매크로 정의 (#define)

C 구조

#define myParam 9.8;

생성된 매크로 정의 내보내기

1. 예제 모델 ex_param_macro를 엽니다.

2. 모델에서 Gain 블록을 선택하십시오. 속성 인스펙터에서 Gain 파라미터의 값을 myParam로 설정하십시오.

3. 파라미터 값 옆에 있는 작업 버튼(세로로 나란히 놓인 점 세 개가 있는 버튼)을 클릭한 다음 생성을 선택합니다.

4. '새 데이터 만들기' 대화 상자에서 Simulink.Parameter(9.8)로 설정하십시오. 만들기를 클릭하십시오. Simulink.Parameter 객체인 myParam가 기본 작업 공간에 나타납니다. Gain 블록은 해당 객체를 사용하여 게인(Gain) 파라미터의 값을 설정하며, 이 경우 9.8의 값을 설정합니다.

5. 코드 생성 탭에서 Coder 앱에서 구성 버튼을 클릭합니다. 코드 매핑 편집기에서 스토리지 클래스Define로 설정하십시오. 확인을 클릭합니다.

6. 모델을 구축하고 코드를 생성하려면 Ctrl+B를 누르십시오.

생성된 헤더 파일 ex_param_macro.h는 매크로를 사용하여 myParam를 스칼라 리터럴로 정의합니다.

/* Definition for custom storage class: Define */
#define myParam                        9.8                       /* Referenced by: '<Root>/Gain' */

/* External inputs (root inport signals with default storage) */

손으로 작성한 코드에서 매크로 재사용하기

1. 코드 매핑 편집기의 파라미터 탭에서 코드 매핑 업데이트 버튼을 클릭합니다.

2. myParam스토리지 클래스Define에서 ImportedDefine로 변경하십시오.

3. 속성 인스펙터의 코드 섹션에서 헤더 파일external_params.h로 설정하십시오. 생성된 코드는 external_params.h라는 사용자 지정 헤더 파일에서 매크로 정의를 가져옵니다.

4. 현재 폴더에 #define 문이 포함된 C 헤더 파일 external_params.h를 생성하십시오.

#ifndef _EXTERNAL_PARAMS
#define _EXTERNAL_PARAMS

#define myParam 9.8

#endif

/* EOF */

5. 모델을 구축하고 코드를 생성하려면 Ctrl+B를 누르십시오.

생성된 헤더 파일 ex_param_macro.h에는 해당 매크로가 정의되어 있지 않습니다. 대신, 이 파일은 #include를 사용하여 사용자 지정 헤더 파일인 external_params.h를 포함합니다.

/* Includes for objects with custom storage classes */
#include "external_params.h"

소스 파일 ex_param_macro.c에는 myParam에 대한 정의가 존재하는지 확인하는 가드 조건이 포함되어 있습니다.

#include "rtwtypes.h"
#include "external_params.h"

/*
 * Check that imported macros with storage class "ImportedDefine" are defined
 */
#ifndef myParam
#error The value of parameter "myParam" is not defined
#endif

/* External inputs (root inport signals with default storage) */

참고 항목

도움말 항목