ZCU_Front의 모든 함수 정의
More...
◆ ClearFault()
폴트 레지스터에서 특정 폴트 비트를 지움
- Parameters
-
◆ HandleAdasMessage()
'on message L002_ADAS_Sensor' 이벤트 핸들러 로직을 처리
- Parameters
-
◆ HandleEpasMessage()
'on message L001_EPAS_Data' 이벤트 핸들러 로직을 처리
- Parameters
-
◆ HandleFaultInjectionKey()
void HandleFaultInjectionKey |
( |
| ) |
|
'on key 'f'' 이벤트 핸들러 로직을 처리
◆ HandleMainTaskTimer()
void HandleMainTaskTimer |
( |
| ) |
|
'on timer timerMainTask' 이벤트 핸들러 로직을 처리
◆ HandleStartEvent()
void HandleStartEvent |
( |
| ) |
|
'on start' 이벤트 핸들러 로직을 처리
◆ HandleStatusDisplayKey()
void HandleStatusDisplayKey |
( |
| ) |
|
'on key 's'' 이벤트 핸들러 로직을 처리
◆ HandleStopEvent()
'on stopMeasurement' 이벤트 핸들러 로직을 처리
◆ InitializeGlobals()
void InitializeGlobals |
( |
| ) |
|
시작 시 모든 전역 변수를 기본 상태로 초기화
- Note
- 시스템 시작 시 모든 데이터 구조체와 변수를 안전한 초기값으로 설정
◆ MonitorCommunication()
void MonitorCommunication |
( |
| ) |
|
다른 ECU와의 통신 타임아웃을 모니터링
- Note
- 설정된 타임아웃 시간을 초과하면 통신 폴트를 설정
◆ OnEnterDegraded()
DEGRADED 상태 진입 시 호출되는 함수
- Note
- 시스템이 제한된 기능으로 작동함을 알림
◆ OnEnterFailSafe()
FAIL_SAFE 상태 진입 시 호출되는 함수
- Note
- 시스템 안전을 보장하기 위해 모든 CAN 전송을 중지하고 고장 상태를 전파
◆ OnEnterNormal()
NORMAL 상태 진입 시 호출되는 함수
- Note
- 시스템이 완전히 작동 중임을 알림
◆ PerformDiagnostics()
void PerformDiagnostics |
( |
| ) |
|
주기적인 진단 검사를 수행
- Note
- CPU, 메모리 사용량 및 동작 시간을 업데이트하고 과부하 상태를 감지
◆ PerformInitialSelfTest()
void PerformInitialSelfTest |
( |
| ) |
|
시작 시 중요한 센서에 대한 자체 테스트를 수행
- Note
- APS, BPPS 센서의 초기 상태를 확인하고 교차 검증을 수행
◆ PerformSecureBoot()
byte PerformSecureBoot |
( |
| ) |
|
시스템 부팅 시 보안 검증을 수행
- Returns
- 검증 성공 시 1, 실패 시 0
- Note
- 펌웨어 서명을 검증하여 변조된 소프트웨어 실행을 방지
◆ PerformWatchdog()
메인 루프가 실행 중인지 확인하기 위해 워치독 검사를 수행
- Note
- 설정된 시간 내에 응답이 없으면 시스템 과부하 폴트를 설정
◆ ReadAPS()
시뮬레이션 환경에서 가속 페달 위치를 읽음
- Returns
- 현재 APS 위치 (%)
◆ ReadBPPS()
시뮬레이션 환경에서 브레이크 페달 위치를 읽음
- Returns
- 현재 BPPS 위치 (%)
◆ ReadVehicleSpeed()
float ReadVehicleSpeed |
( |
| ) |
|
시뮬레이션 환경에서 차량 속도를 읽음
- Returns
- 현재 차량 속도 (km/h)
◆ SendFailSafeStatus()
void SendFailSafeStatus |
( |
byte | faultLevel | ) |
|
Fail-Safe 상태 메시지(M004)를 전송
- Parameters
-
- Note
- 시스템 고장 발생 시 다른 ECU에 상태를 전파
◆ SendM005_EXT_BrakePedal()
void SendM005_EXT_BrakePedal |
( |
| ) |
|
◆ SendM005_VehicleDynamics()
void SendM005_VehicleDynamics |
( |
| ) |
|
주요 차량 동역학 메시지(M005)를 전송
- Note
- 속도, APS, 조향각과 같은 핵심 차량 데이터를 포함
◆ SetFault()
폴트 레지스터에 특정 폴트 비트를 설정하고 상태 업데이트를 트리거
- Parameters
-
◆ TransitionToState()
시스템 상태 간의 전환을 관리
- Parameters
-
- Note
- 상태 변경 시 해당 상태의 진입 함수를 호출
◆ UpdateSystemState()
void UpdateSystemState |
( |
| ) |
|
현재 폴트 레지스터를 기반으로 시스템 상태를 업데이트
- Note
- 활성화된 폴트를 평가하고 적절한 시스템 상태를 결정
◆ ValidateSensorRange()
센서 값이 정의된 최소/최대 범위 내에 있는지 확인
- Parameters
-
value | 확인할 센서 값 |
min | 허용되는 최소값 |
max | 허용되는 최대값 |
- Returns
- 유효하면 0, 유효하지 않으면 2