DEENESPTFRRUARHIKOZHNL
CLASSIC Modul: can Rolle: heuristic Konfidenz: 90%

SNIP_CLASSIC_CAN_SECTION_7_3_CAN_Controller_State_Machine

Quelle: SWS_CANDriver.pdf (Seite 30) • Ziel-Anforderung: SWS_Can_91013

Wortlaut

7.3 CAN Controller State Machine Each CAN controller has complex state machines implemented in hardware. For simplification, the number of states is reduced to the following four basic states in this description: UNINIT, STOPPED, STARTED and SLEEP. Any CAN hardware access is encapsulated by functions of the Can module, but the Can module does not memorize the state changes. The Can module offers the services Can_Init, Can_SetBaudrate and Can_SetControllerMode. These services perform the necessary register settings that cause the required change of the hardware CAN controller state. There are two possibilities for triggering state changes by external events: • Bus-off event • HW wakeup event These events are indicated either by an interrupt or by a status bit that is polled in the Can_MainFunction_BusOff or Can_MainFunction_Wakeup. The Can module does the register settings that are necessary to fulfill the required behavior (i.e. no hardware recovery in case of bus off). Then it notifies the CanIf module with the corresponding callback function. The software state is then changed inside this callback function. In case development errors are enabled and there is a not allowed transition requested by the upper layer, the Can module shall rise the development error CAN_E_TRANSITION. The Can module does not check the actual state before it performs Can_Write or raises callbacks.

Versionen & Provenienz · Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Begründung & Zuweisungs-Evidenz

Controller state machine states defined.

Dokumenten-Herkunft & Rückverfolgbarkeit

Spezifikations-Dokument SWS_CANDriver.pdf
Dokumentseite Seite 30
Ziel-Modul can (classic)
Ziel-Anforderung SWS_Can_91013
Semantische Rolle heuristic
Automatisierungs-Konfidenz 0.90