1편에서 IoHwAbGeneral을 통해 하드웨어 연결과 기본 구조를 정의했다면,
이번 글에서는 실제 제어 동작을 구성하는 IoHwAbConfig 영역을 정리한다.
IoHwAbConfig는 IoHwAbGeneral에서 정의한 리소스를 기반으로 실제 동작 가능한 형태로 매핑하는 단계다.
즉, IoHwAbGeneral에서 “무엇을 쓸지 정의”를 했다면,
IoHwAbConfig에서는 “그걸 어떻게 사용할지 정의”하는 단계라고 보면 된다.
이 설정에 따라 IoHwAb API가 어떤 MCAL 드라이버를 호출하는지가 결정된다.
1. IoHwAbConfig 구조
각 항목은 MCAL 드라이버와 직접 연결되는 구조다.

1.1 IoHwAbDemEventParameterRefs
이 영역은 IoHwAb에서 발생하는 오류를 DEM(Diagnostic Event Manager)과 연결하는 설정이다.
IoHwAb 내부에서 상태 이상이나 동작 오류가 발생했을 때, 이를 단순 에러로 끝내는 것이 아니라 진단 이벤트로 올리기 위해 사용한다.
즉, “이런 오류가 발생하면 어떤 진단 코드로 처리할 것인가”를 정의하는 부분이다.
이 설정이 없으면 문제는 발생해도 차량 진단 시스템에서는 아무것도 감지하지 못하는 상태가 된다.
1.2 IoHwAbDigitalDirect
이 설정은 디지털 출력 제어를 위한 가장 기본적인 구조다.
IoHwAb에서 특정 이름으로 핀을 제어하면, 그 요청이 Dio Driver를 통해 실제 핀으로 전달된다.

Short Name은 코드에서 사용할 논리 이름이고,
Port Pin Ch Ref는 IoHwAbGeneral에서 정의한 Port Pin 채널 경로를 참조한다.
결국 이 설정은 “이 이름으로 이 핀을 ON/OFF 하겠다”는 매핑이다.
구조가 단순하기 때문에 LED, 릴레이 같은 단순 제어에 가장 많이 사용된다.
1.3 IoHwAbGpt
이 영역은 타이머(GPT)를 IoHwAb에서 사용할 수 있도록 연결하는 설정이다.
주기적인 동작이나 시간 기반 제어가 필요한 경우 사용된다.

Short Name은 타이머를 식별하는 이름이고,
Callback Via Rte는 타이머 이벤트 발생 시 콜백을 어디로 전달할지 결정하는 옵션이다.
(true면 RTE를 통해 SWC Runnable로 전달되고, false면 BSW 레벨에서 직접 처리된다.)
Hw Gpt Ch Ref는 실제 사용할 GPT 채널 경로를 참조한다.
즉, 단순 타이머 연결이 아니라 이벤트 전달 구조까지 포함한 설정이다.
1.4 IoHwAbIcu
ICU는 외부 입력 신호를 측정하기 위한 설정이다.
예를 들어 펄스 신호의 주기, 주파수, 듀티 등을 분석할 때 사용된다.

Short Name은 해당 입력을 식별하는 이름이고,
Callback Via Rte는 신호 이벤트 발생 시 콜백을 RTE로 전달할지 여부를 결정한다.
Hw Icu Ch Ref는 사용할 ICU 채널 경로를 참조한다.
이 설정은 단순 입력이 아니라 시간 기반 신호 분석이 필요한 경우에 사용되는 구조다.
1.5 IoHwAbAnalogInputDirect
AnalogInputDirect는 ADC 값을 그대로 읽어오는 설정이다.
IoHwAbGeneral에서 정의한 Adc Group을 참조하여 해당 그룹의 값을 읽는다.
이 방식은 별도의 필터링이나 보정 없이 Raw 데이터를 반환하는 구조다.
따라서 속도는 빠르지만, 노이즈 처리나 스케일링은 상위 로직에서 처리해야 한다.

Short Name은 논리 이름이고,
Adc Group Ref는 IoHwAbGeneral에서 정의한 ADC Group 경로를 참조한다.
센서 입력을 빠르게 받아야 하는 경우에 주로 사용된다.
1.6 IoHwAbIOManager
IoHwAbIOManager는 IoHwAb 내부에서 입력값을 단순 전달이 아니라 일정 수준 가공/관리하는 기능이다.
Direct 방식과 다르게 내부 로직(필터, 기본값 등)이 포함된 구조다.
- IoHwAbIOManager > IoHwAbIoMTimer
이 설정은 OManager 내부에서 사용할 타이머를 정의한다.
주기적으로 값을 읽거나 필터링을 적용하기 위한 기준 시간이 된다.

Short Name은 타이머 이름이고, Gpt Ch Ref는 사용할 GPT 채널 경로를 참조한다.
즉, OManager 동작 주기를 결정하는 타이머 설정이다.
- IoHwAbIOManager > IoHwAbAnalogInput
이 영역은 ADC 값을 단순 읽는 것이 아니라 필터링 및 상태 관리까지 포함해서 사용하는 설정이다.

Short Name은 논리 이름이고, Adc Group Ref는 사용할 ADC 그룹 경로를 지정한다.
Direct Access가 true면 Raw 값 그대로 사용하고, false면 OManager 내부 로직을 거친 값을 사용한다.
Default Value는 초기값 또는 오류 시 사용할 값이고,
Filter Constant는 값의 변화를 부드럽게 만들기 위한 필터 계수다.
즉, Direct 방식 대비 값 안정성이나 신뢰성이 중요한 경우 사용된다.
1.7 IoHwAbPwm
이 설정은 PWM 출력 제어를 위한 영역이다.
IoHwAb에서 Duty 값을 변경하면, 해당 PWM 채널로 전달되어 출력이 제어된다.

Short Name은 PWM 제어 이름이고,
Callback Via Rte는 PWM 관련 이벤트를 RTE로 전달할지 결정한다.
Hw Pwm Ch Ref는 실제 PWM 채널 경로를 참한다.
이 설정은 모터 제어나 밝기 제어처럼 연속적인 출력 제어가 필요한 경우 사용된다.
정리
IoHwAbConfig는 IoHwAbGeneral에서 정의한 하드웨어 리소스를 기반으로
실제 동작 가능한 제어 구조를 완성하는 단계다.
각 설정은 결국 논리 이름(Short Name)과 실제 MCAL 채널(Hw Ref)을 연결하고,
동작 방식(Callback, Direct/가공 여부 등)을 정의하는 구조로 이루어진다.
Digital, ADC, PWM, Timer, ICU 등 모든 기능은
이 매핑을 통해 IoHwAb API와 실제 하드웨어가 연결된다.
특히 IoHwAbConfig에서는 단순 연결뿐 아니라
이벤트 전달 방식 (Callback Via Rte), 데이터 처리 방식 (Direct vs IOManager), 진단 연계 (DEM)
까지 함께 결정된다는 점이 중요하다.
결론적으로 IoHwAb는 General에서 “구조를 만들고”, Config에서 “동작을 완성하는” 형태로 동작한다.
이 두 설정이 정확히 맞물려야
RTE → IoHwAb → MCAL → Hardware 흐름이 정상적으로 이어진다.
'mobilgene > 미분류' 카테고리의 다른 글
| [Det] AUTOSAR Det(Development Error Tracer)란 무엇인가? (0) | 2026.05.25 |
|---|---|
| [WdgM] Watchdog Manager란? Mobilgene에서 WdgM 설정 구조 이해하기 (0) | 2026.05.15 |
| [IoHwAb] SWC에서 IoHwAb Analog Input을 읽는 과정 (Rte_Call 기반 실무 흐름) (0) | 2026.05.01 |
| [IoHwAb] AUTOSAR IoHwAb 완전 정리 1편 – IoHwAbGeneral 구조와 실무 설정 (0) | 2026.04.30 |
| [EcuC] AUTOSAR EcuC 모듈 이해 – 구조부터 EcuPartition 실무 설정까지 (0) | 2026.04.29 |