static const pointerType_t* pointerTypeValue;
extern pointerType_t* externPointerTypeFunction(void);
static void getMessageFunction(tU08 timeTick){
MessageInfo msg;
tS08 tick= (tS08)timeTick;
while(tick >= 0){
tick = tick-4;
if(tick==0){
msg = (*pointerTypeValue->message)(); // signal error 발생
break;
}
}
}
static const 포인터 변수에 접근할 때, static const 포인터 변수가 초기화되어 있지 않으면 signal error가 발생할 수 있습니다.
이 때는 Controller Tester에서 해당 함수의 테스트 편집창을 열고 테스트 구조 트리에서 초기화되지 않은 static const 포인터 변수를 찾아, 데이터 생성 방법을 [사용자 코드]로 지정합니다.
사용자 코드 작성창에서 동일한 타입의 새로운 객체를 초기화한 후, 코드에 선언된 static const 변수가 가리킬 수 있도록 합니다.
아래는 위 코드에 대해 작성한 사용자 코드의 예시입니다.
pointerType_t temp1 = {0x0,0x0,externPointerTypeFunction, };
pointerType_t* temp2 = &temp1;
pointerTypeValue = temp2;
테스트 편집창을 저장하고 테스트를 재실행하면 signal error를 해결할 수 있습니다.
Need more help with this?
Don’t hesitate to contact us here.