목표

함수 정리 및 개인적인 시간이 있을 때 설명 읽어두기.

각 함수 설명

sysGetVariableString

  • 시스템 변수(System Variable) 중 문자열(String, char[]) 타입의 값을 설정(변경)하는 함수입니다.
  • CANoe에서 시스템 변수를 이용해 메시지 전송, ECU 상태 저장, 내부 변수 관리 등을 수행할 수 있으며, 이 함수는 문자열 변수 값을 동적으로 변경할 때 유용합니다.

함수의 반환값

반환값설명

0 정상적으로 실행됨 (성공)
1 네임스페이스를 찾을 수 없음 또는 동일한 네임스페이스를 중복 정의
2 변수를 찾을 수 없음 또는 동일한 변수를 중복 정의
3 네임스페이스에 대한 쓰기 권한 없음
4 변수의 타입이 char[]이 아님 (문자열이 아님)

form 1: 네임스페이스와 변수 이름을 문자열로 전달

long sysSetVariableString(char namespace[], char variable[], char value[]);
  • namespace → 시스템 변수가 속한 네임스페이스
  • variable → 변수 이름
  • value → 설정할 문자열 값

예제

sysSetVariableString("VehicleData", "SpeedText", "Fast");

➡️ “VehicleData” 네임스페이스의 “SpeedText” 변수 값을 “Fast”로 변경.

form 2: 시스템 변수의 전체 경로를 직접 지정

long sysSetVariableString(SysVarName, char value[]);
  • SysVarName → 시스템 변수의 전체 이름 (네임스페이스 포함)
  • value → 설정할 문자열 값

예제

sysSetVariableString(sysvar::VehicleData::SpeedText, "Fast");

➡️ “VehicleData::SpeedText” 시스템 변수 값을 “Fast”로 변경.

시스템 변수의 특정 요소 값 설정

시스템 변수가 구조체(struct) 또는 배열(array) 인 경우, 특정 요소만 설정할 수도 있습니다.

📌 예제 (배열 요소 값 변경)

sysSetVariableString(sysvarMember::XCP::ECU_2::KL2.Curve2[0], "NewValue");

➡️ “XCP::ECU_2::KL2.Curve2[0]” 배열의 첫 번째 요소 값을 “NewValue”로 변경.

'Programming > CANoe' 카테고리의 다른 글

CANoe 함수: mbstrncpy  (0) 2025.03.10
CANoe 함수: strlen  (0) 2025.03.10
CANoe 함수: sysGetVariableString  (0) 2025.03.02
CANoe 함수: elcount  (0) 2025.03.02
CANoe 함수: on sysvar  (0) 2025.03.02
블로그 이미지

RIsN

,