C Caller
C 코드를 Simulink에 통합
라이브러리:
Simulink /
User-Defined Functions
설명
C Caller 블록은 외부 C 코드를 Simulink®에 통합합니다. 이 블록은 외부 C 코드의 함수를 가져와 나열하며, 사용자가 Simulink 모델에 통합할 해석된(resolved) C 함수를 선택할 수 있게 합니다.
라이브러리 브라우저 > Simulink > User Defined Functions를 사용하여 C Caller 블록을 Simulink 캔버스로 가져옵니다.
그런 다음 블록 대화 상자에서
아이콘을 클릭합니다. 그러면 구성 파라미터 대화 상자가 열립니다. 구성 파라미터 대화 상자의 시뮬레이션 타깃 창으로 이동하고 코드 정보 탭의 파라미터를 사용하여 소스 코드와 지원 파일을 정의합니다. 소스 코드에서 함수 정의를 찾아보려면
아이콘을 사용하십시오. 소스 코드와 지원 파일 정의에 대한 자세한 내용은 Specify and Configure Custom C/C++ Code 항목을 참조하십시오.
소스 코드와 지원 파일을 변경하려면, 구성 파라미터 대화 상자의 시뮬레이션 타깃 창에 있는 코드 정보 탭에서 동일한 파라미터를 사용합니다. 소스 코드와 지원 파일을 변경한 후에는 블록 대화 상자의
버튼을 클릭하여 함수 목록을 새로 고칩니다.
예제
제한 사항
사용자 지정 코드 설정 초기화/종료 — 사용자 지정 코드에 사용되는 메모리를 할당 및 할당 해제해야 하는 경우, 사용자 지정 코드 설정의 초기화 함수 필드와 종료 함수 필드에 할당 코드 및 할당 해제 코드를 삽입하거나 C Function 블록을 사용하십시오.
복소수 데이터 지원 — 블록은 Simulink에서 복소수 데이터형을 지원하지 않습니다.
변수 인수 — C의 변수 인수는 지원되지 않습니다(예:
int sprintf(char *str, const char *format, ...)).C++ 구문 — 이 블록은 네이티브 C++ 구문을 직접 지원하지 않습니다. C++ 코드와 상호 작용하도록 C 함수 래퍼를 작성해야 합니다.
Simulink Test™ Observer 지원 — R2026a부터 Observer Port 블록과 Observer Reference 블록을 사용하여 C Caller 블록에서 내보낸 전역 변수를 관측할 수 있습니다. 이러한 블록은 정적 전역 변수 또는 n차원 행렬의 전역 변수를 관측하는 데는 사용할 수 없습니다.
포트
입력
출력
파라미터
블록 특성
세부 정보
팁
C Caller 블록을 포함하는 모델을 테스트하려면 Test Integrated C Code (Simulink Test) 항목을 참조하십시오.
모델에 사용자 지정 코드가 있는 경우, 모델 업데이트 또는 실행이 끝나면 불러온 사용자 지정 코드 시뮬레이션 실행 파일로 인해
slprj폴더가 잠길 수 있습니다. 잠긴 폴더는 삭제할 수 없습니다. 실행 파일을 언로드하고slprj폴더의 잠금을 해제하려면clear mex명령을 사용하십시오.clear항목을 참조하십시오.
확장 기능
버전 내역
R2018b에 개발됨참고 항목
블록
- C Function | MATLAB Function | MATLAB System | S-Function | S-Function Builder | Observer Reference (Simulink Test) | Observer Port (Simulink Test)








