이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
생성된 C/C++ 코드에 주석 포함
튜토리얼 소개
학습 목표
이 튜토리얼에서는 다음을 포함하는 코드를 생성하는 방법을 보여줍니다.
함수 배너에 있는 함수 시그니처와 함수 도움말 텍스트.
추적성 태그가 포함된 주석으로서의 MATLAB® 소스 코드. 코드 생성 리포트에서 추적성 태그는 대응하는 MATLAB 소스 코드에 연결됩니다.
선행 조건
이 튜토리얼을 완료하려면 다음 제품이 필요합니다.
MATLAB
MATLAB Coder™
Embedded Coder®
C 컴파일러
지원되는 컴파일러 목록은 지원되는 컴파일러를 참조하십시오.
MATLAB 소스 파일 만들기
쓰기 가능한 폴더에 다음 코드가 포함된 MATLAB 소스 파일 polar2cartesian.m
을 만듭니다.
function [x y] = polar2cartesian(r,theta) %#codegen % Convert polar to Cartesian x = r * cos(theta); y = r * sin(theta);
빌드 파라미터 구성
coder.EmbeddedCodeConfig
코드 생성 구성 객체를 만들고 다음 속성을 true
로 설정합니다.
생성 코드 내의 주석을 허용하는
GenerateComments
.MATLAB 소스 코드를 추적성 태그가 포함된 주석으로 생성하는
MATLABSourceComments
. 코드 생성 리포트에서 태그는 대응하는 MATLAB 코드에 연결됩니다. 이 속성이true
인 경우, 코드 생성기는 함수 배너에 함수 서명도 생성합니다.함수 배너에 함수 도움말 텍스트를 생성하는
MATLABFcnDesc
.
cfg = coder.config('lib', 'ecoder', true); cfg.GenerateComments = true; cfg.MATLABSourceComments = true; cfg.MATLABFcnDesc = true;
C 코드 생성
C 코드를 생성하려면 codegen
함수를 호출하십시오. 다음 옵션을 사용하십시오:
-config
는 코드 생성 구성 객체cfg
를 전달합니다.-report
를 사용하여 코드 생성 리포트를 만듭니다.-args
는 입력 파라미터의 클래스, 크기, 실수/복소수 여부를 지정합니다.
codegen -config cfg -report polar2cartesian -args {0, 0}
codegen
은 C 정적 라이브러리, polar2cartesian.lib
, C 코드를 /codegen/lib/polar2cartesian
하위 폴더에 생성합니다. 리포트 생성을 선택했기 때문에 codegen
은 리포트에 대한 링크를 제공합니다.
생성된 C 코드 보기
생성된 코드를 코드 생성 리포트에서 확인하십시오.
코드 생성 리포트를 열려면
리포트 보기
를 클릭합니다.생성 코드 창에서
polar2cartesion.c
를 클릭합니다.생성된 코드에는 다음이 포함됩니다.
함수 배너에 있는 함수 시그니처와 함수 도움말 텍스트.
생성된 C/C++ 코드에 대응하는 MATLAB 소스 코드가 포함된 주석. 해당 주석에는 원본 MATLAB 코드에 연결되는 추적성 태그가 포함되어 있습니다.
생성된 함수 배너는 코드 생성 템플릿(CGT) 파일에 따라서도 달라집니다. 디폴트 CGT를 사용하면 코드 생성기가 인수에 대한 정보를 함수 배너에 배치합니다. CGT를 수정하여 함수 배너를 사용자 지정할 수 있습니다. Generate Custom File and Function Banners for C/C++ Code 항목을 참조하십시오.
생성된 코드를 MATLAB 코드까지 추적
추적성 태그는 생성된 코드를 원래 MATLAB 코드까지 추적하는 데 도움이 되는 정보와 링크를 제공합니다. 예를 들어, x = r * cos(theta);
코드 앞에 있는 추적성 태그를 클릭합니다.
리포트는 polar2cartesian.m
을 열고 4번째 줄을 강조 표시합니다.
리포트에서 MATLAB 소스 코드와 생성된 C/C++ 코드를 나란히 보고 대화형 방식으로 추적하려면 코드 추적을 클릭하십시오. Interactively Trace Between MATLAB Code and Generated C/C++ Code 항목을 참조하십시오.