CLASSIC
Modul: cantrcv
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_CANTRCV_SECTION_8_3_4_CanTrcv_GetBusWuReason
Wortlaut
8.3.4 CanTrcv_GetBusWuReason
[SWS_CanTrcv_00007] Definition of API function CanTrcv_GetBusWuReason
Upstream requirements: SRS_BSW_00310, SRS_BSW_00369, SRS_BSW_00375, SRS_BSW_
00377, SRS_BSW_00406, SRS_Can_01091, SRS_Can_01095, SRS_Can_01097,
SRS_Can_01103,
SRS_Can_01106,
SRS_Can_01109,
SRS_Can_01110
⌈
Service Name
CanTrcv_GetBusWuReason
Syntax
Std_ReturnType CanTrcv_GetBusWuReason (
uint8 Transceiver,
CanTrcv_TrcvWakeupReasonType* reason
)
Service ID [hex]
0x03
Sync/Async
Synchronous
Reentrancy
Reentrant
Parameters (in)
Transceiver
CAN transceiver to which API call has to be applied.
Parameters (inout)
None
Parameters (out)
reason
Pointer to wake up reason of the bus the API is applied to.
Return value
Std_ReturnType
E_OK: will be returned if the transceiver wakeup reason was
provided.
E_NOT_OK: will be returned if no wake up reason is available or if
the service request failed due to development errors.
Description
Gets the wakeup reason for the Transceiver and returns it in parameter Reason.
▽
△
Available via
CanTrcv.h
⌋
[SWS_CanTrcv_00107] ⌈The function CanTrcv_GetBusWuReason shall collect the
reason for the wake up that the CAN transceiver has detected in the parameter Reason.⌋
The ability to detect and differentiate the possible wake up reasons depends strongly
on the CAN transceiver hardware.
Be aware if more than one bus is available, each bus may report a different wake up
reason. E.g. if an ECU has CAN, a wake up by CAN may occur and the incoming data
may cause an internal wake up for another CAN bus.
The CAN transceiver driver has a "per bus" view and does not vote the more important
reason or sequence internally. The same may be true if e.g. one transceiver controls
the power supply and the other is just powered or un-powered.
The number of supported busses is statically set in the configuration phase.
[SWS_CanTrcv_00116] ⌈If there is no/incorrect communication to the transceiver, the
function CanTrcv_GetBusWuReason shall report the runtime error code CANTRCV_
E_NO_TRCV_CONTROL to the Default Error Tracer and return E_NOT_OK.⌋
[SWS_CanTrcv_00125] ⌈If development error detection for the module CanTrcv is
enabled:
If called before the CanTrcv module has been initialized, the function
CanTrcv_GetBusWuReason shall raise development error CANTRCV_E_UNINIT otherwise (if DET is disabled) return E_NOT_OK.⌋
[SWS_CanTrcv_00130] ⌈If development error detection for the module CanTrcv is enabled: If called with an invalid Transceiver number, the function CanTrcv_GetBusWuReason shall raise development error CANTRCV_E_INVALID_TRANSCEIVER
otherwise (if DET is disabled) return E_NOT_OK.⌋
[SWS_CanTrcv_00133] ⌈If development error detection for the module CanTrcv is enabled: If called with reason = NULL, the function CanTrcv_GetBusWuReason shall
raise the development error CANTRCV_E_PARAM_POINTER otherwise (if DET is disabled) return E_NOT_OK.⌋
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
Cited verbatim in the snippet (deterministic citation).
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SWS_CANTransceiverDriver.pdf |
|---|---|
| Dokumentseite | Seite 35 |
| Ziel-Modul | cantrcv (classic) |
| Ziel-Anforderung | SWS_Std_00005 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |