2 * Configuration of module: IoHwAb (IoHwAb_Digital.c)
\r
7 * Configured for (MCU): MPC551x
\r
9 * Module vendor: ArcCore
\r
10 * Generator version: 3.1.2
\r
12 * Generated by Arctic Studio (http://arccore.com)
\r
14 #if defined(USE_DIO)
\r
16 #include "IoHwAb_Internal.h"
\r
18 #if defined(USE_DET)
\r
22 /************************************ External Device Drivers *************************************/
24 /***************************************** Signal states ******************************************/
26 boolean IoHwAb_DigitalSignal_Led4_Locked = IOHWAB_UNLOCKED;
\r
27 IoHwAb_LevelType IoHwAb_DigitalSignal_Led4_Saved = IOHWAB_LOW;
\r
28 const IoHwAb_LevelType IoHwAb_DigitalSignal_Led4_Default = IOHWAB_LOW;
\r
30 /**************************************** Digital outputs *****************************************/
32 /********************************** DigitalSignal_Led4 functions **********************************/
\r
34 Std_ReturnType IoHwAb_Set_Digital_DigitalSignal_Led4( IoHwAb_LevelType newValue, IoHwAb_StatusType *status ) {
\r
35 Std_ReturnType rv = E_OK;
\r
36 Dio_LevelType setLevel = 0;
\r
37 IoHwAb_QualityType q = IOHWAB_GOOD;
\r
39 if( IOHWAB_UNLOCKED == IoHwAb_DigitalSignal_Led4_Locked ) {
\r
40 setLevel = (Dio_LevelType) newValue;
\r
42 setLevel = (Dio_LevelType) IoHwAb_DigitalSignal_Led4_Saved;
\r
45 Dio_WriteChannel( DIO_CHANNEL_NAME_LEDS_LED4, setLevel );
\r
46 status->quality = q;
\r
51 Std_ReturnType IoHwAb_Dcm_DigitalSignal_Led4( uint8 action, IoHwAb_LevelType value ) {
\r
53 Std_ReturnType rv = E_OK;
\r
56 case IOHWAB_RETURNCONTROLTOECU:
\r
57 IoHwAb_DigitalSignal_Led4_Locked = IOHWAB_UNLOCKED;
\r
60 case IOHWAB_RESETTODEFAULT:
\r
61 IoHwAb_LockSave(state);
\r
62 IoHwAb_DigitalSignal_Led4_Saved = IoHwAb_DigitalSignal_Led4_Default;
\r
63 IoHwAb_DigitalSignal_Led4_Locked = IOHWAB_LOCKED;
\r
64 IoHwAb_LockRestore(state);
\r
67 case IOHWAB_FREEZECURRENTSTATE:
\r
68 if( IOHWAB_UNLOCKED == IoHwAb_DigitalSignal_Led4_Locked ) {
\r
69 IoHwAb_LockSave(state);
\r
70 IoHwAb_DigitalSignal_Led4_Saved = Dio_ReadChannel( DIO_CHANNEL_NAME_LEDS_LED4 );
\r
71 IoHwAb_DigitalSignal_Led4_Locked = IOHWAB_LOCKED;
\r
72 IoHwAb_LockRestore(state);
\r
76 case IOHWAB_SHORTTERMADJUST:
\r
77 IoHwAb_LockSave(state);
\r
78 IoHwAb_DigitalSignal_Led4_Saved = value;
\r
79 IoHwAb_DigitalSignal_Led4_Locked = IOHWAB_LOCKED;
\r
80 IoHwAb_LockRestore(state);
\r
91 /***************************************** Digital inputs *****************************************/
93 /************************************* Parameterized digital **************************************/
95 Std_ReturnType IoHwAb_Set_Digital(IoHwAb_SignalType signal, IoHwAb_LevelType newValue, IoHwAb_StatusType *status) {
\r
97 IOHWAB_VALIDATE_RETURN (
\r
98 IOHWAB_SIGNAL_IS_VALID_DIGITAL_OUTPUT(signal),
\r
99 IOHWAB_DIGITAL_SET_ID,
\r
100 IOHWAB_E_PARAM_SIGNAL,
\r
105 case IOHWAB_SIGNAL_DIGITALSIGNAL_LED4: {
\r
106 return IoHwAb_Set_Digital_DigitalSignal_Led4( newValue, status );
\r
116 Std_ReturnType IoHwAb_Get_Digital( IoHwAb_SignalType signal, IoHwAb_LevelType *value, IoHwAb_StatusType *status ) {
\r
118 IOHWAB_VALIDATE_RETURN (
\r
119 IOHWAB_SIGNAL_IS_VALID_DIGITAL_INPUT(signal),
\r
120 IOHWAB_DIGITAL_GET_ID,
\r
121 IOHWAB_E_PARAM_SIGNAL,
\r