]> rtime.felk.cvut.cz Git - arc.git/commitdiff
Update and doxygen formatting for config parameter comments, fix #62
authortojo <devnull@localhost>
Wed, 10 Feb 2010 14:15:10 +0000 (15:15 +0100)
committertojo <devnull@localhost>
Wed, 10 Feb 2010 14:15:10 +0000 (15:15 +0100)
29 files changed:
boards/mpc5516it/config/Adc_Cfg.h
boards/mpc5516it/config/CanIf_Cfg.h
boards/mpc5516it/config/Can_Cfg.h
boards/mpc5516it/config/Com_Cfg.h
boards/mpc5516it/config/Det_Cfg.h
boards/mpc5516it/config/Dio_Cfg.h
boards/mpc5516it/config/Dma_Cfg.h
boards/mpc5516it/config/EcuM_Cfg.h
boards/mpc5516it/config/Fls_Cfg.h
boards/mpc5516it/config/Gpt_Cfg.h
boards/mpc5516it/config/LinIf_Cfg.h
boards/mpc5516it/config/Lin_Cfg.h
boards/mpc5516it/config/Mcu_Cfg.h
boards/mpc5516it/config/Port_Cfg.h
boards/mpc5516it/config/Pwm_Cfg.c [new file with mode: 0644]
boards/mpc5516it/config/Pwm_Cfg.h [new file with mode: 0644]
communication/PduR/PduR_Types.h
include/Adc.h
include/CanIf_Types.h
include/Com_Types.h
include/EcuM.h
include/Gpt.h
include/Lin.h
include/LinIf.h
include/Mcu.h
include/Platform_Types.h
include/Port.h
include/Pwm.h
include/Std_Types.h

index 391207bfb613433e43850dfdbea5fe4e0e246888..0fcdb6cf76495e42030d34d07ab22f057a705771 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Adc ADC Driver
+ *  @{ */
+
+/** @file Adc_Cfg.h
+ * Definitions of configuration parameters for ADC Driver.
+ */
+
 #ifndef ADC_CFG_H_\r
 #define ADC_CFG_H_\r
 
 #include "Dma.h"
-\r
-#define ADC_PRIORITY_HW                   0\r
-#define ADC_PRIORITY_HW_SW                1\r
+
+/** HW priority mechanism only. @see ADC_PRIORITY_IMPLEMENTATION */
+#define ADC_PRIORITY_HW                   0
+/** HW and SW priority mechanism. @see ADC_PRIORITY_IMPLEMENTATION  */
+#define ADC_PRIORITY_HW_SW                1
+/** No priority mechanism. @see ADC_PRIORITY_IMPLEMENTATION  */
 #define ADC_PRIORITY_NONE                 2\r
-\r
-#define ADC_DEINIT_API                    STD_ON\r
-#define ADC_DEV_ERROR_DETECT              STD_ON\r
-#define ADC_ENABLE_QUEUING                STD_ON\r
-#define ADC_ENABLE_START_STOP_GROUP_API   STD_ON\r
-#define ADC_GRP_NOTIF_CAPABILITY          STD_ON\r
-#define ADC_HW_TRIGGER_API                STD_OFF           /* Not implemented. */\r
-#define ADC_PRIORITY_IMPLEMENTATION       ADC_PRIORITY_HW\r
-#define ADC_READ_GROUP_API                STD_ON\r
-#define ADC_VERSION_API                   STD_ON            /* Not implemented. */\r
+
+/** Build DeInit API */
+#define ADC_DEINIT_API                    STD_ON
+/** Enable Development Error Trace */
+#define ADC_DEV_ERROR_DETECT              STD_ON
+/** Not supported. */
+#define ADC_ENABLE_QUEUING                STD_ON
+/** Build Start/Stop group API. */
+#define ADC_ENABLE_START_STOP_GROUP_API   STD_ON
+/** Enable group conversion notification. */
+#define ADC_GRP_NOTIF_CAPABILITY          STD_ON
+/** Not supported. */
+#define ADC_HW_TRIGGER_API                STD_OFF
+/** Implemented priority mechanism. */
+#define ADC_PRIORITY_IMPLEMENTATION       ADC_PRIORITY_HW
+/** Build Read group API */
+#define ADC_READ_GROUP_API                STD_ON
+/** Build version info API (Not supported) */
+#define ADC_VERSION_API                   STD_ON
 
 typedef uint16_t Adc_ValueGroupType;
 
 
-/* Non-standard type */
+/** HW specific data type. */
 typedef union
 {
   vuint32_t R;
@@ -55,14 +74,14 @@ typedef union
    } B;
 }Adc_CommandType;
 
-/* Std-type, supplier defined */
+/** Type of clock input for the conversion unit. */
 typedef enum
 {
   ADC_SYSTEM_CLOCK
 }Adc_ClockSourceType;
 
 
-/* Std-type, supplier defined */
+/** Clock prescaler factor. */
 typedef enum
 {
   ADC_SYSTEM_CLOCK_DISABLED,
@@ -101,7 +120,7 @@ typedef enum
   ADC_SYSTEM_CLOCK_DIVIDE_FACTOR_64,
 }Adc_PrescaleType;
 
-/* Non-standard type */
+/** Container for HW setup. */
 typedef struct
 {
   Adc_ClockSourceType clockSource;
@@ -109,14 +128,14 @@ typedef struct
   Adc_PrescaleType    adcPrescale;
 }Adc_HWConfigurationType;
 
-/* Std-type, supplier defined */
+/** Reference voltage source. */
 typedef enum
 {
   ADC_REFERENCE_VOLTAGE_GROUND,
   ADC_REFERENCE_VOLTAGE_5V,
 }Adc_VoltageSourceType;
 
-/* Std-type, supplier defined */
+/** Duration of conversion. */
 typedef enum
 {
   ADC_CONVERSION_TIME_2_CLOCKS,
@@ -125,21 +144,20 @@ typedef enum
   ADC_CONVERSION_TIME_128_CLOCKS
 }Adc_ConversionTimeType;
 
-/* Non-standard type */
+/** Enable/disable calibration. */
 typedef enum
 {
   ADC_CALIBRATION_DISABLED,
   ADC_CALIBRATION_ENABLED
 }Adc_CalibrationType;
 
-/* Std-type, supplier defined */
+/** Channel resolution. */
 typedef enum
 {
   ADC_RESOLUTION_12BITS
 }Adc_ResolutionType;
 
-/* Non-standard type */
-/* Channel definitions. */
+/** Container for channel configuration. */
 typedef struct
 {
   Adc_ConversionTimeType adcChannelConvTime;
@@ -151,26 +169,26 @@ typedef struct
 
 
 /* TODO list timer sources here. */
-/* Std-type, supplier defined */
+/** Not supported. */
 typedef enum
 {
   ADC_NO_TIMER,
 }Adc_HwTriggerTimerType;
 
 
-/* Std-type, supplier defined */
+/** Not supported. */
 typedef uint16_t Adc_StreamNumSampleType;
 
-/* Std-type, supplier defined */
+/** Channel conversion mode. */
 typedef enum
 {
   ADC_CONV_MODE_DISABLED,
-  ADC_CONV_MODE_ONESHOT   = 1,
-  ADC_CONV_MODE_CONTINOUS = 9,
+  ADC_CONV_MODE_ONESHOT   = 1,  /**< A single conversion. */
+  ADC_CONV_MODE_CONTINOUS = 9,  /**< Conversions performed continuously. */
 }Adc_GroupConvModeType;
 
 
-/* Impl. specific */
+/** Container for module initialization parameters. */
 typedef struct
 {
   const Adc_HWConfigurationType*      hwConfigPtr;
@@ -183,7 +201,7 @@ typedef struct
 extern const Adc_ConfigType AdcConfig [];
 
 
-/* Used ?? */
+/** Container for groups status info. */
 typedef struct
 {
   uint8 notifictionEnable;
@@ -191,7 +209,7 @@ typedef struct
   Adc_StatusType groupStatus;
 }Adc_GroupStatus;
 
-/* Implementation specific */
+/** Container for group setup. */
 typedef struct
 {
   Adc_GroupAccessModeType      accessMode;
@@ -214,7 +232,8 @@ typedef struct
 }Adc_GroupDefType;
 \r
 /* Group definitions. */\r
-\r
+
+/** ID of group */
 typedef enum\r
 {\r
   ADC_GROUP0,\r
@@ -223,7 +242,8 @@ typedef enum
   ADC_GROUP3,\r
   ADC_NBR_OF_GROUPS\r
 }Adc_GroupType;\r
-\r
+
+/** ID of channel */
 typedef enum\r
 {\r
   ADC_CH0,\r
@@ -286,8 +306,11 @@ typedef enum
   ADC_GROUP3_CH2,\r
   ADC_NBR_OF_GROUP3_CHANNELS,\r
 }Adc_Group3Signals;\r
-\r
-extern const struct tcd_t AdcGroupDMACommandConfig [ADC_NBR_OF_GROUPS];\r
+
+/** HW specific command configarations. */
+extern const struct tcd_t AdcGroupDMACommandConfig [ADC_NBR_OF_GROUPS];
+/** HW specific result buffer configarations. */
 extern const struct tcd_t AdcGroupDMAResultConfig [ADC_NBR_OF_GROUPS];\r
 \r
 #endif /*ADC_CFG_H_*/\r
+/** @} */
index 1307e6a9f2b5fdc8770725a2091e1cec0722242a..33c69ef8d4f46bcce1b0c1ec3df3c84cd7205fb6 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup CanIf CAN Interface
+ *  @{ */
 
-
-
-
-
-
+/** @file CanIf_Cfg.h
+ *  Definitions of configuration parameters for CAN Interface.
+ */
 
 #ifndef CANIF_CFG_H_\r
 #define CANIF_CFG_H_\r
 \r
 #include "Can.h"\r
 
-// Identifiers for the elements in CanIfControllerConfig[]
-// This is the ConfigurationIndex in CanIf_InitController()
+/** Identifiers for the elements in CanIfControllerConfig[].
+ *  This is the ConfigurationIndex in CanIf_InitController(). */
 typedef enum {
        CANIF_CHANNEL_0_CONFIG_0 = 0,
 
@@ -35,20 +35,23 @@ typedef enum {
        CANIF_CHANNEL_CONFIGURATION_CNT
 } CanIf_Arc_ConfigurationIndexType;
 
+/** Channel id's */
 typedef enum {
        CANIF_CHANNEL_0,
        CANIF_CHANNEL_1,
        CANIF_CHANNEL_CNT,
 } CanIf_Arc_ChannelIdType;
-\r
+
+/** Software filtering type */
 typedef enum {\r
-       CANIF_SOFTFILTER_TYPE_BINARY = 0,  // Not supported\r
-       CANIF_SOFTFILTER_TYPE_INDEX,  // Not supported\r
-       CANIF_SOFTFILTER_TYPE_LINEAR, // Not supported\r
-       CANIF_SOFTFILTER_TYPE_TABLE,  // Not supported\r
-       CANIF_SOFTFILTER_TYPE_MASK,  // CanIfCanRxPduCanIdMask in RxPduConfig is used for filtering\r
+       CANIF_SOFTFILTER_TYPE_BINARY = 0,  /**< Not supported */
+       CANIF_SOFTFILTER_TYPE_INDEX,       /**< Not supported */
+       CANIF_SOFTFILTER_TYPE_LINEAR,      /**< Not supported */
+       CANIF_SOFTFILTER_TYPE_TABLE,       /**< Not supported */
+       CANIF_SOFTFILTER_TYPE_MASK,        /**< CanIfCanRxPduCanIdMask in RxPduConfig is used for filtering */
 } CanIf_SoftwareFilterTypeType;\r
-\r
+
+/** Type of the upper layer interfacing this module */
 typedef enum {\r
        CANIF_USER_TYPE_CAN_NM,\r
        CANIF_USER_TYPE_CAN_TP,\r
@@ -56,15 +59,16 @@ typedef enum {
        CANIF_USER_TYPE_CAN_SPECIAL,\r
 } CanIf_UserTypeType;\r
 \r
-\r
-\r
+/** Notification function for CANIF_USER_TYPE_CAN_SPECIAL */
 typedef void (*CanIf_FuncTypeCanSpecial)(PduIdType, const uint8 *, uint8, Can_IdType);\r
-\r
+
+/** Defines if PDU Can id can be changed at runtime. */
 typedef enum {\r
   CANIF_PDU_TYPE_STATIC = 0,\r
-  CANIF_PDU_TYPE_DYNAMIC       // Not supported\r
+  CANIF_PDU_TYPE_DYNAMIC       /**< Not supported */
 } CanIf_PduTypeType;\r
-\r
+
+/** PDU Can id type */
 typedef enum {\r
   CANIF_CAN_ID_TYPE_29 = 0,\r
   CANIF_CAN_ID_TYPE_11\r
@@ -73,17 +77,17 @@ typedef enum {
 /*\r
  * Public container\r
  */\r
-#define CANIF_VERSION_INFO_API            STD_ON\r
-#define CANIF_DEV_ERROR_DETECT                             STD_ON\r
-#define CANIF_DLC_CHECK                   STD_ON\r
-#define CANIF_MULITPLE_DRIVER_SUPPORT     STD_OFF  // Not supported\r
-#define CANIF_READRXPDU_DATA_API                           STD_OFF  // Not supported\r
-#define CANIF_READRXPDU_NOTIFY_STATUS_API      STD_OFF  // Not supported\r
-#define CANIF_READTXPDU_NOTIFY_STATUS_API      STD_OFF  // Not supported\r
-#define CANIF_SETDYNAMICTXID_API          STD_OFF  // Not supported\r
-#define CANIF_WAKEUP_EVENT_API                             STD_OFF  // Not supported\r
-#define CANIF_TRANSCEIVER_API             STD_OFF  // Not supported\r
-#define CANIF_TRANSMIT_CANCELLATION       STD_OFF  // Not supported\r
+#define CANIF_VERSION_INFO_API              STD_ON   /**< Build version info API */
+#define CANIF_DEV_ERROR_DETECT              STD_ON   /**< Enable Development Error Trace */
+#define CANIF_DLC_CHECK                     STD_ON   /**< Enable/disable DLC checking. */
+#define CANIF_MULITPLE_DRIVER_SUPPORT       STD_OFF  /**< Not supported */
+#define CANIF_READRXPDU_DATA_API            STD_OFF  /**< Not supported */
+#define CANIF_READRXPDU_NOTIFY_STATUS_API      STD_OFF  /**< Not supported */
+#define CANIF_READTXPDU_NOTIFY_STATUS_API      STD_OFF  /**< Not supported */
+#define CANIF_SETDYNAMICTXID_API            STD_OFF  /**< Not supported */
+#define CANIF_WAKEUP_EVENT_API              STD_OFF  /**< Not supported */
+#define CANIF_TRANSCEIVER_API               STD_OFF  /**< Not supported */
+#define CANIF_TRANSMIT_CANCELLATION         STD_OFF  /**< Not supported */
 \r
 //-------------------------------------------------------------------\r
 \r
@@ -98,54 +102,52 @@ typedef struct {
 \r
 \r
 //-------------------------------------------------------------------\r
-/*\r
- * CanIfHrhRangeConfig container\r
- */\r
 \r
+/** Parameters for configuring Can id ranges. Not supported. */
 typedef struct {\r
-       //      Lower CAN Identifier of a receive CAN L-PDU for identifier range\r
-       //      definition, in which all CAN Ids shall pass the software filtering. Range: 11\r
-       //      Bit for Standard CAN Identifier 29 Bit for Extended CAN Identifer\r
+       /** Lower CAN Identifier of a receive CAN L-PDU for identifier range
+        *  definition, in which all CAN Ids shall pass the software filtering. Range: 11
+     *  Bit for Standard CAN Identifier 29 Bit for Extended CAN Identifer */
        uint32 CanIfRxPduLowerCanId;\r
 \r
-       //      Upper CAN Identifier of a receive CAN L-PDU for identifier range\r
-       //      definition, in which all CAN Ids shall pass the software filtering. Range: 11\r
-       //      Bit for Standard CAN Identifier 29 Bit for Extended CAN Identifer\r
+       /** Upper CAN Identifier of a receive CAN L-PDU for identifier range
+        *  definition, in which all CAN Ids shall pass the software filtering. Range: 11
+        *  Bit for Standard CAN Identifier 29 Bit for Extended CAN Identifer */
        uint32 CanIfRxPduUpperCanId;\r
 } CanIf_HrhRangeConfigType;\r
 \r
 \r
-\r
 //-------------------------------------------------------------------\r
 /*\r
  * CanIfInitHrhConfig container\r
- */\r
+ */
+/** Definition of Hardware Receive Handle */
 typedef struct {\r
-       //      Defines the HRH type i.e, whether its a BasicCan or FullCan. If BasicCan is\r
-       //      configured, software filtering is enabled.\r
+       /** Defines the HRH type i.e, whether its a BasicCan or FullCan. If BasicCan is
+        *  configured, software filtering is enabled. */
   Can_Arc_HohType CanIfHrhType;\r
 \r
-       //      Selects the hardware receive objects by using the HRH range/list from\r
-       //      CAN Driver configuration to define, for which HRH a software filtering has\r
-       //      to be performed at during receive processing. True: Software filtering is\r
-       //      enabled False: Software filtering is disabled\r
+       /** Selects the hardware receive objects by using the HRH range/list from
+        *  CAN Driver configuration to define, for which HRH a software filtering has
+        *  to be performed at during receive processing. True: Software filtering is
+        *  enabled False: Software filtering is disabled */
        boolean  CanIfSoftwareFilterHrh;\r
 \r
-       //      Reference to controller Id to which the HRH belongs to. A controller can\r
-       //      contain one or more HRHs.\r
+       /** Reference to controller Id to which the HRH belongs to. A controller can
+        *  contain one or more HRHs. */
        CanIf_Arc_ChannelIdType CanIfCanControllerHrhIdRef;\r
 \r
-       //      The parameter refers to a particular HRH object in the CAN Driver Module\r
-       //      configuration. The HRH id is unique in a given CAN Driver. The HRH Ids\r
-       //      are defined in the CAN Driver Module and hence it is derived from CAN\r
-       //      Driver Configuration.\r
+       /** The parameter refers to a particular HRH object in the CAN Driver Module
+        *  configuration. The HRH id is unique in a given CAN Driver. The HRH Ids
+        *  are defined in the CAN Driver Module and hence it is derived from CAN
+        *  Driver Configuration. */
        Can_Arc_HRHType CanIfHrhIdSymRef ;\r
 \r
-       //      Defines the parameters required for configuraing multiple\r
-       //      CANID ranges for a given same HRH.\r
+       /** Defines the parameters required for configuraing multiple
+        *  CANID ranges for a given same HRH. */
        const CanIf_HrhRangeConfigType *CanIfHrhRangeConfig;\r
 \r
-  // End Of List. Set to TRUE is this is the last object in the list.\r
+  /** End Of List. Set to TRUE if this is the last object in the list. */
   boolean CanIf_Arc_EOL;\r
 } CanIf_HrhConfigType;\r
 \r
@@ -153,42 +155,41 @@ typedef struct {
 /*\r
  * CanIfInitHthConfig container\r
  */\r
-\r
+/** Definition of Hardware Transmit Handle */
 typedef struct {\r
-  //  Defines the HTH type i.e, whether its a BasicCan or FullCan.\r
+  /** Defines the HTH type i.e, whether its a BasicCan or FullCan. */
   Can_Arc_HohType CanIfHthType;\r
 \r
-  // Reference to controller Id to which the HTH belongs to. A controller\r
-  // can contain one or more HTHs\r
+  /** Reference to controller Id to which the HTH belongs to. A controller
+   *  can contain one or more HTHs */
   CanIf_Arc_ChannelIdType CanIfCanControllerIdRef;\r
 \r
-  //  The parameter refers to a particular HTH object in the CAN Driver Module\r
-  //  configuration. The HTH id is unique in a given CAN Driver. The HTH Ids\r
-  //  are defined in the CAN Driver Module and hence it is derived from CAN\r
-  //  Driver Configuration.\r
+  /** The parameter refers to a particular HTH object in the CAN Driver Module
+   *  configuration. The HTH id is unique in a given CAN Driver. The HTH Ids
+   *  are defined in the CAN Driver Module and hence it is derived from CAN
+   *  Driver Configuration. */
   Can_Arc_HTHType CanIfHthIdSymRef ;\r
 \r
-  // End Of List. Set to TRUE is this is the last object in the list.\r
+  /** End Of List. Set to TRUE if this is the last object in the list. */
   boolean CanIf_Arc_EOL;\r
 } CanIf_HthConfigType;\r
 \r
 //-------------------------------------------------------------------\r
 /*\r
  * CanIfInitHohConfig container\r
- */\r
+ */
+/** Definition of Hardware Object Handle. */
 typedef struct {\r
-  //  Selects the CAN interface specific configuration setup. This type of external\r
-  // data structure shall contain the post build initialization data for the\r
-  // CAN interface for all underlying CAN Drivers.\r
+  /** Reference to the CAN Driver controller config. */
   const Can_ConfigSetType   *CanConfigSet;\r
 \r
-  // This container contains contiguration parameters for each hardware receive object.\r
+  /** This container contains contiguration parameters for each hardware receive object. */
   const CanIf_HrhConfigType *CanIfHrhConfig;\r
 \r
-  // This container contains parameters releated to each HTH\r
+  /** This container contains parameters releated to each HTH */
   const CanIf_HthConfigType *CanIfHthConfig;\r
 \r
-  // End Of List. Set to TRUE is this is the last object in the list.\r
+  /** End Of List. Set to TRUE if this is the last object in the list. */
   boolean CanIf_Arc_EOL;\r
 } CanIf_InitHohConfigType;\r
 \r
@@ -197,54 +198,52 @@ typedef struct {
  * CanIfTxPduConfig container\r
  */\r
 \r
-// This container contains the configuration (parameters) of each transmit\r
-// CAN L-PDU. The SHORT-NAME of "CanIfTxPduConfig" container\r
-// represents the symolic name of Transmit L-PDU.\r
+/** Definition of Tx PDU (Protocol Data Unit). */
 typedef struct {\r
-       //      ECU wide unique, symbolic handle for transmit CAN L-PDU. The\r
-       //      CanIfCanTxPduId is configurable at pre-compile and post-built time.\r
-       //      Range: 0..max. number of CantTxPduIds   PduIdType       CanTxPduId;\r
+       /** ECU wide unique, symbolic handle for transmit CAN L-PDU. The
+        *  CanIfCanTxPduId is configurable at pre-compile and post-built time.
+        *  Range: 0..max. number of CantTxPduIds       PduIdType       CanTxPduId; */
        PduIdType CanIfTxPduId;\r
 \r
-       //      CAN Identifier of transmit CAN L-PDUs used by the CAN Driver for CAN L-\r
-       //      PDU transmission. Range: 11 Bit For Standard CAN Identifier ... 29 Bit For\r
-       //      Extended CAN identifier\r
+       /** CAN Identifier of transmit CAN L-PDUs used by the CAN Driver for CAN L-
+        *  PDU transmission. Range: 11 Bit For Standard CAN Identifier ... 29 Bit For
+        *  Extended CAN identifier */
        uint32  CanIfCanTxPduIdCanId;\r
 \r
-       //      Data length code (in bytes) of transmit CAN L-PDUs used by the CAN\r
-       //      Driver for CAN L-PDU transmission. The data area size of a CAN L-Pdu\r
-       //      can have a range from 0 to 8 bytes.\r
+       /** Data length code (in bytes) of transmit CAN L-PDUs used by the CAN
+        *  Driver for CAN L-PDU transmission. The data area size of a CAN L-Pdu
+        *  can have a range from 0 to 8 bytes. */
        uint8           CanIfCanTxPduIdDlc;\r
 \r
-       // Defines the type of each transmit CAN L-PDU.\r
-       // DYNAMIC  CAN ID is defined at runtime.\r
-       // STATIC  CAN ID is defined at compile-time.\r
+       /** Defines the type of each transmit CAN L-PDU.
+        *  DYNAMIC  CAN ID is defined at runtime.
+        *  STATIC  CAN ID is defined at compile-time. */
        CanIf_PduTypeType               CanIfCanTxPduType;\r
 \r
 #if ( CANIF_READTXPDU_NOTIFY_STATUS_API == STD_ON )\r
-       //      Enables and disables transmit confirmation for each transmit CAN L-PDU\r
-       //      for reading its notification status. True: Enabled False: Disabled\r
+       /** Enables and disables transmit confirmation for each transmit CAN L-PDU
+        *  for reading its notification status. True: Enabled False: Disabled */
        boolean         CanIfReadTxPduNotifyStatus;\r
 #endif\r
 \r
-       //      CAN Identifier of transmit CAN L-PDUs used by the CAN Driver for CAN L-\r
-       //      PDU transmission.\r
-       //  EXTENDED_CAN  The CANID is of type Extended (29 bits)\r
-       //  STANDARD_CAN  The CANID is of type Standard (11 bits)\r
+       /** CAN Identifier of transmit CAN L-PDUs used by the CAN Driver for CAN L-
+        *  PDU transmission.
+        *  EXTENDED_CAN  The CANID is of type Extended (29 bits).
+        *  STANDARD_CAN  The CANID is of type Standard (11 bits). */
        CanIf_CanIdTypeType             CanIfTxPduIdCanIdType;\r
 \r
-       //      Name of target confirmation services to target upper layers (PduR, CanNm\r
-       //      and CanTp. If parameter is not configured then no call-out function is\r
-       //      provided by the upper layer for this Tx L-PDU.\r
+       /** Name of target confirmation services to target upper layers (PduR, CanNm
+        *  and CanTp. If parameter is not configured then no call-out function is
+        *  provided by the upper layer for this Tx L-PDU. */
        void (*CanIfUserTxConfirmation)(PduIdType);   /* CANIF 109 */\r
 \r
-       //      Handle, that defines the hardware object or the pool of hardware objects\r
-       //      configured for transmission. The parameter refers HTH Id, to which the L-\r
-       //      PDU belongs to.\r
+       /** Handle, that defines the hardware object or the pool of hardware objects
+        *  configured for transmission. The parameter refers HTH Id, to which the L-
+        *  PDU belongs to. */
        const CanIf_HthConfigType *CanIfCanTxPduHthRef;\r
 \r
-       //      Reference to the "global" Pdu structure to allow harmonization of handle\r
-       //      IDs in the COM-Stack.  ..\r
+       /** Reference to the "global" Pdu structure to allow harmonization of handle
+        *  IDs in the COM-Stack. */
        void *PduIdRef;\r
 } CanIf_TxPduConfigType;\r
 \r
@@ -254,70 +253,67 @@ typedef struct {
  */\r
 \r
 \r
-// This container contains the configuration (parameters) of each receive\r
-// CAN L-PDU. The SHORT-NAME of "CanIfRxPduConfig" container itself\r
-// represents the symolic name of Receive L-PDU.\r
-\r
+/** Definition of Rx PDU (Protocol Data Unit). */
 typedef struct {\r
-  //  ECU wide unique, symbolic handle for receive CAN L-PDU. The\r
-  //  CanRxPduId is configurable at pre-compile and post-built time. It shall fulfill\r
-  //  ANSI/AUTOSAR definitions for constant defines. Range: 0..max. number\r
-  //  of defined CanRxPduIds\r
+  /** ECU wide unique, symbolic handle for receive CAN L-PDU. The
+   *  CanRxPduId is configurable at pre-compile and post-built time. It shall fulfill
+   *  ANSI/AUTOSAR definitions for constant defines. Range: 0..max. number
+   *  of defined CanRxPduIds */
   PduIdType CanIfCanRxPduId;\r
 \r
-  //   CAN Identifier of Receive CAN L-PDUs used by the CAN Interface. Exa:\r
-       //      Software Filtering. Range: 11 Bit For Standard CAN Identifier ... 29 Bit For\r
-       //      Extended CAN identifier\r
+  /** CAN Identifier of Receive CAN L-PDUs used by the CAN Interface. Exa:
+   *  Software Filtering. Range: 11 Bit For Standard CAN Identifier ... 29 Bit For
+   *  Extended CAN identifier */
        uint32          CanIfCanRxPduCanId;\r
 \r
-       //      Data Length code of received CAN L-PDUs used by the CAN Interface.\r
-       //      Exa: DLC check. The data area size of a CAN L-PDU can have a range\r
-       //      from 0 to 8 bytes.      uint8           CanIfCanRxPduDlc;\r
+  /** Data Length code of received CAN L-PDUs used by the CAN Interface.
+   *  Exa: DLC check. The data area size of a CAN L-PDU can have a range
+   *  from 0 to 8 bytes.       uint8           CanIfCanRxPduDlc; */
        uint8           CanIfCanRxPduDlc;\r
 \r
 #if ( CANIF_CANPDUID_READDATA_API == STD_ON )\r
-       //      Enables and disables the Rx buffering for reading of received L-PDU data.\r
-       //      True: Enabled False: Disabled\r
+  /** Enables and disables the Rx buffering for reading of received L-PDU data.
+   *  True: Enabled False: Disabled */
        boolean         CanIfReadRxPduData;\r
 #endif\r
 \r
 #if ( CANIF_READRXPDU_NOTIF_STATUS_API == STD_ON )\r
-       //      CanIfReadRxPduNotifyStatus {CANIF_READRXPDU_NOTIFY_STATUS}\r
-       //      Enables and disables receive indication for each receive CAN L-PDU for\r
-       //      reading its' notification status. True: Enabled False: Disabled\r
+  /** CanIfReadRxPduNotifyStatus {CANIF_READRXPDU_NOTIFY_STATUS}
+   *  Enables and disables receive indication for each receive CAN L-PDU for
+   *  reading its' notification status. True: Enabled False: Disabled */
        boolean         CanIfReadRxPduNotifyStatus;\r
 #endif\r
 \r
-  //  CAN Identifier of receive CAN L-PDUs used by the CAN Driver for CAN L-\r
-  //  PDU transmission.\r
-  //  EXTENDED_CAN  The CANID is of type Extended (29 bits)\r
-  //  STANDARD_CAN  The CANID is of type Standard (11 bits)\r
+  /** CAN Identifier of receive CAN L-PDUs used by the CAN Driver for CAN L-
+   *  PDU transmission.
+   *  EXTENDED_CAN  The CANID is of type Extended (29 bits)
+   *  STANDARD_CAN  The CANID is of type Standard (11 bits) */
        CanIf_CanIdTypeType     CanIfRxPduIdCanIdType;\r
 \r
-       //      This parameter defines the type of the receive indication call-outs called to\r
-       //      the corresponding upper layer the used TargetRxPduId belongs to.\r
+  /** This parameter defines the type of the receive indication call-outs called to
+   *  the corresponding upper layer the used TargetRxPduId belongs to. */
        CanIf_UserTypeType  CanIfRxUserType;\r
 \r
-       //      Name of target indication services to target upper layers (PduRouter,\r
-       //      CanNm, CanTp and ComplexDeviceDrivers). If parameter is 0 no call-out\r
-       //      function is configured.\r
+  /** Name of target indication services to target upper layers (PduRouter,
+   *  CanNm, CanTp and ComplexDeviceDrivers). If parameter is 0 no call-out
+   *  function is configured. */
        void *CanIfUserRxIndication;\r
 \r
-       //      The HRH to which Rx L-PDU belongs to, is referred through this\r
-       //      parameter.\r
+  /** The HRH to which Rx L-PDU belongs to, is referred through this
+   *  parameter. */
        const CanIf_HrhConfigType *CanIfCanRxPduHrhRef;\r
 \r
-       //      Reference to the "global" Pdu structure to allow harmonization of handle\r
-       //      IDs in the COM-Stack.\r
+  /** Reference to the "global" Pdu structure to allow harmonization of handle
+   *  IDs in the COM-Stack. */
        void *PduIdRef;\r
 \r
-       // Defines the type of software filtering that should be used\r
-       // for this receive object.\r
+  /** Defines the type of software filtering that should be used
+   *  for this receive object. */
        CanIf_SoftwareFilterTypeType CanIfSoftwareFilterType;\r
 \r
-       // Acceptance filters, 1 - care, 0 - don't care.\r
-       // Is enabled by the CanIfSoftwareFilterMask in CanIf_HrhConfigType\r
-       // ArcCore exension\r
+  /** Acceptance filters, 1 - care, 0 - don't care.
+   *  Is enabled by the CanIfSoftwareFilterMask in CanIf_HrhConfigType
+   *  ArcCore exension */
        uint32 CanIfCanRxPduCanIdMask;\r
 \r
 } CanIf_RxPduConfigType;\r
@@ -327,7 +323,7 @@ typedef struct {
 /*\r
  * CanIfControllerConfig container\r
  */\r
-\r
+/** Not supported. */
 typedef enum {\r
        CANIF_WAKEUP_SUPPORT_CONTROLLER,\r
        CANIF_WAKEUP_SUPPORT_NO_WAKEUP,\r
@@ -335,15 +331,20 @@ typedef enum {
 } CanIf_WakeupSupportType;\r
 \r
 \r
-// This is the type supplied to CanIf_InitController()\r
-typedef struct {\r
-       CanIf_WakeupSupportType WakeupSupport;  // Not used\r
+/** Container used to create channel init configurations.
+ *  @see CanIf_Arc_ConfigurationIndexType
+ *  @see CanIf_Arc_ChannelIdType */
+typedef struct {
+    /** Not used */
+       CanIf_WakeupSupportType WakeupSupport;
 
-       // CanIf-specific id of the controller\r
+       /** CanIf-specific id of the controller */
        CanIf_Arc_ChannelIdType CanIfControllerIdRef;\r
-\r
-       const char CanIfDriverNameRef[8]; // Not used\r
-\r
+
+       /** Not used */
+       const char CanIfDriverNameRef[8];
+
+       /** Reference to */
        const Can_ControllerConfigType *CanIfInitControllerRef;\r
 } CanIf_ControllerConfigType;\r
 \r
@@ -362,100 +363,80 @@ typedef struct {
        uint32 todo;\r
 } CanIf_TransceiverConfigType;\r
 \r
-// Callout functions with respect to the upper layers. This callout functions\r
-// defined in this container are common to all configured underlying CAN\r
-// Drivers / CAN Transceiver Drivers.\r
+/** Callout functions with respect to the upper layers. This callout functions
+ *  defined in this container are common to all configured underlying CAN
+ *  Drivers / CAN Transceiver Drivers. */
 typedef struct {\r
-       //      Name of target BusOff notification services to target upper layers\r
-       //      (PduRouter, CanNm, CanTp and ComplexDeviceDrivers).\r
-       //  Multiplicity: 1\r
+       /** Name of target BusOff notification services to target upper layers
+        *  (PduRouter, CanNm, CanTp and ComplexDeviceDrivers). */
        void (*CanIfBusOffNotification)(uint8 Controller);\r
 \r
-       //      Name of target wakeup notification services to target upper layers\r
-       //      e.g Ecu_StateManager. If parameter is 0\r
-       //      no call-out function is configured.\r
-       //  Multiplicity: 0..1\r
+       /** Name of target wakeup notification services to target upper layers
+        *  e.g Ecu_StateManager. If parameter is 0
+        *  no call-out function is configured. */
        void (*CanIfWakeUpNotification)();\r
 \r
-       //      Name of target wakeup validation notification services to target upper\r
-       //      layers (ECU State Manager). If parameter is 0 no call-out function is\r
-       //      configured.\r
-       //  Multiplicity: 0..1\r
+       /** Name of target wakeup validation notification services to target upper
+        *  layers (ECU State Manager). If parameter is 0 no call-out function is
+        *  configured. */
        void (*CanIfWakeupValidNotification)();\r
 \r
-       // ArcCore ext.\r
+       /** ArcCore ext. */
        void (*CanIfErrorNotificaton)(uint8,Can_Arc_ErrorType);\r
 \r
 } CanIf_DispatchConfigType;\r
 \r
-// This container contains the references to the configuration setup of each\r
-// underlying CAN driver.\r
-\r
+/** This container contains the references to the configuration setup of each
+ *  underlying CAN driver. */
 typedef struct {\r
-       //      Selects the CAN Interface specific configuration setup. This type of the\r
-       //      external data structure shall contain the post build initialization data for the\r
-       //      CAN Interface for all underlying CAN Dirvers. constant to CanIf_ConfigType\r
+       /** Not used. */
        uint32 CanIfConfigSet;\r
-\r
-       uint32 CanIfNumberOfCanRxPduIds;\r
-       uint32 CanIfNumberOfCanTXPduIds;\r
+
+       /** Size of Rx PDU list. */
+       uint32 CanIfNumberOfCanRxPduIds;
+       /** Size of Tx PDU list. */
+       uint32 CanIfNumberOfCanTXPduIds;
+       /** Not used */
        uint32 CanIfNumberOfDynamicCanTXPduIds;\r
 \r
        //\r
        // Containers\r
        //\r
 \r
-  //  This container contains the reference to the configuration\r
-       //  setup of each underlying CAN driver.\r
-  //  Multiplicity: 0..*\r
+  /** Hardware Object Handle list */
        const CanIf_InitHohConfigType *CanIfHohConfigPtr;\r
 \r
-       //      This container contains the configuration (parameters) of each\r
-       //      receive CAN L-PDU. The SHORT-NAME of\r
-       //      "CanIfRxPduConfig" container itself represents the symolic\r
-       //      name of Receive L-PDU.\r
-       // Multiplicity: 0..*\r
+  /** Rx PDU's list */
        const CanIf_RxPduConfigType *CanIfRxPduConfigPtr;\r
-\r
-       //      This container contains the configuration (parameters) of each\r
-       //      transmit CAN L-PDU. The SHORT-NAME of\r
-       //      "CanIfTxPduConfig" container represents the symolic name of\r
-       //  Transmit L-PDU.\r
-       // Multiplicity: 0..*\r
+
+  /** Tx PDU's list */
        const CanIf_TxPduConfigType *CanIfTxPduConfigPtr;\r
 \r
 } CanIf_InitConfigType;\r
 \r
-\r
+/** Top level config container. */
 typedef struct {\r
-       //      This container contains the configuration (parameters) of all\r
-       //      addressed CAN controllers by each underlying CAN driver.\r
-       //  Multiplicity: 1..*\r
+       /** Reference to the list of channel init configurations. */
        const CanIf_ControllerConfigType        *ControllerConfig;\r
 \r
-       //      Callout functions with respect to the upper layers. This callout\r
-       //      functions defined in this container are common to all\r
-       //      configured underlying CAN Drivers / CAN Transceiver Drivers\r
+       /** Callout functions with respect to the upper layers. This callout
+        *  functions defined in this container are common to all
+        *  configured underlying CAN Drivers / CAN Transceiver Drivers */
        const CanIf_DispatchConfigType  *DispatchConfig;\r
 \r
-       //      This container contains the init parameters of the CAN\r
-       //      Interface.\r
-       //  Multiplicity: 1..*\r
+       /** This container contains the init parameters of the CAN Interface. */
        const CanIf_InitConfigType              *InitConfig;\r
 \r
-       //      This container contains the configuration (parameters) of all\r
-       //      addressed CAN transceivers by each underlying CAN\r
-       //      Transceiver Driver.\r
-       //  Multiplicity: 1..*\r
+       /** Not used */
        const CanIf_TransceiverConfigType *TransceiverConfig;
 
-       // ArcCore: Contains the mapping from CanIf-specific Channels to Can Controllers
+       /** ArcCore: Contains the mapping from CanIf-specific Channels to Can Controllers */
        const CanControllerIdType                       *Arc_ChannelToControllerMap;\r
 } CanIf_ConfigType;\r
 \r
-\r
+/** Instance of the top level container. */
 extern CanIf_ConfigType CanIf_Config;\r
 \r
 #endif\r
-\r
+/** @} */
 \r
index dc1da51a8fe898cc6897dfc7e440083eadd295e0..6129f1694374a6ec76ee64eefdfaa1cabbf3e7c5 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Can CAN Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Can_Cfg.h
+ * Definitions of configuration parameters for CAN Driver.
+ */
 
 #ifndef CAN_CFG_H_\r
 #define CAN_CFG_H_\r
 \r
-// Number of controller configs\r
+/** Number of controller configs. */
 #define CAN_ARC_CTRL_CONFIG_CNT   2\r
-\r
-#define CAN_DEV_ERROR_DETECT          STD_ON\r
-#define CAN_VERSION_INFO_API          STD_ON\r
-#define CAN_MULTIPLEXED_TRANSMISSION  STD_ON    // Makes no differens in the code\r
-#define CAN_WAKEUP_SUPPORT            STD_OFF   // Not supported\r
-#define CAN_HW_TRANSMIT_CANCELLATION   STD_OFF  // Not supported\r
-\r
-// loop cnt.. very strange timeout\r
+
+/** Enable Development Error Trace. */
+#define CAN_DEV_ERROR_DETECT          STD_ON
+/** Build version info API. */
+#define CAN_VERSION_INFO_API          STD_ON
+/** Not supported. */
+#define CAN_MULTIPLEXED_TRANSMISSION  STD_OFF
+/** Not supported. */
+#define CAN_WAKEUP_SUPPORT            STD_OFF
+/** Not supported. */
+#define CAN_HW_TRANSMIT_CANCELLATION   STD_OFF
+/** Not supported. */
 #define CAN_TIMEOUT_DURATION          100\r
 \r
 #define INTERRUPT               0\r
 #define POLLING                 1\r
 \r
-// Can controller\r
-#define CAN_BUSOFF_PROCESSING         INTERRUPT  // INTERRUPT/POLLING\r
-#define CAN_CONTROLLER_ACTIVATION     OFF\r
-#define CAN_CONTROLLER_BAUD_RATE      125000\r
-#define CAN_DRIVER_CONTROLLER_ID      0\r
-#define CAN_CONTROLLER_PROP_SEG       4\r
-#define CAN_CONTROLLER_PHASE1_SEG     4\r
-#define CAN_CONTROLLER_PHASE2_SEG     4\r
-#define CAN_CONTROLLER_TIME_QUANTA    4\r
-#define CAN_RX_PROCESSING             INTERRUPT\r
-#define CAN_TX_PROCESSING             INTERRUPT\r
+// Can controller
+/** Bus off handling. Polling not supported */
+#define CAN_BUSOFF_PROCESSING         INTERRUPT  // INTERRUPT/POLLING
+/** Not supported. */
+#define CAN_CONTROLLER_ACTIVATION     OFF
+/** Not used. @see Can_ControllerConfigType */
+#define CAN_CONTROLLER_BAUD_RATE      125000
+/** Not used. @see CanControllerIdType */
+#define CAN_DRIVER_CONTROLLER_ID      0
+/** Not used. @see Can_ControllerConfigType */
+#define CAN_CONTROLLER_PROP_SEG       4
+/** Not used. @see Can_ControllerConfigType */
+#define CAN_CONTROLLER_PHASE1_SEG     4
+/** Not used. @see Can_ControllerConfigType */
+#define CAN_CONTROLLER_PHASE2_SEG     4
+/** Not used. @see Can_ControllerConfigType */
+#define CAN_CONTROLLER_TIME_QUANTA    4
+/** Rx handling. Polling not supported. */
+#define CAN_RX_PROCESSING             INTERRUPT
+/** Tx handling. Polling not supported. */
+#define CAN_TX_PROCESSING             INTERRUPT
+/** Wakeup handling. Polling not supported. */
 #define CAN_WAKEUP_PROCESSING         INTERRUPT\r
-\r
+
+/** Available HW controllers. */
 typedef enum {\r
   CAN_CTRL_A = 0,\r
   CAN_CTRL_B,\r
@@ -60,25 +76,29 @@ typedef enum {
   CAN_CTRL_F,\r
   CAN_CONTROLLER_CNT  \r
 }CanControllerIdType;\r
-\r
+
+/** CAN id types. */
 typedef enum {\r
   CAN_ID_TYPE_EXTENDED,\r
   CAN_ID_TYPE_MIXED,\r
   CAN_ID_TYPE_STANDARD,\r
 } Can_IdTypeType;\r
-\r
+
+/** CAN HW object types. */
 typedef enum {\r
   CAN_OBJECT_TYPE_RECEIVE,\r
   CAN_OBJECT_TYPE_TRANSMIT,\r
 } Can_ObjectTypeType;\r
-\r
+
+/** HW object Can type. Full not supported. */
 typedef enum {\r
   CAN_ARC_HANDLE_TYPE_BASIC,\r
   CAN_ARC_HANDLE_TYPE_FULL\r
 } Can_Arc_HohType;\r
 \r
 // HTH definitions\r
-// Due to effiency: Start with index 0 and don't use any holes in the enumeration\r
+// Due to effiency: Start with index 0 and don't use any holes in the enumeration
+/** Transmit object id:s */
 typedef enum {\r
   CAN_HTH_A_1 = 0,\r
   CAN_HTH_C_1,\r
@@ -86,31 +106,33 @@ typedef enum {
 } Can_Arc_HTHType;\r
 \r
 // HRH definitions\r
-// Due to effiency: Start with index 0 and don't use any holes in the enumeration\r
+// Due to effiency: Start with index 0 and don't use any holes in the enumeration
+/** Receive object id:s */
 typedef enum {\r
   CAN_HRH_A_1 = 0,\r
   CAN_HRH_C_1,\r
   NUM_OF_HRHS\r
 } Can_Arc_HRHType;\r
 \r
-// Non-standard type\r
+// Non-standard type
+/** Container for callback configuration. */
 typedef struct {\r
-  void (*CancelTxConfirmation)( const Can_PduType *);\r
-  void (*RxIndication)( uint8 ,Can_IdType ,uint8 , const uint8 * );\r
-  void (*ControllerBusOff)(uint8);\r
-  void (*TxConfirmation)(PduIdType);\r
-  void (*ControllerWakeup)(uint8);\r
-  void (*Arc_Error)(uint8,Can_Arc_ErrorType);\r
+  void (*CancelTxConfirmation)( const Can_PduType *);               /**< Not supported. */
+  void (*RxIndication)( uint8 ,Can_IdType ,uint8 , const uint8 * ); /**< Called on successful reception of a PDU. */
+  void (*ControllerBusOff)(uint8);                                  /**< Called on BusOff. */
+  void (*TxConfirmation)(PduIdType);                                /**< Called on successful transmission of a PDU. */
+  void (*ControllerWakeup)(uint8);                                  /**< Not supported. */
+  void (*Arc_Error)(uint8,Can_Arc_ErrorType);                       /**< Called on HW error. */
 } Can_CallbackType;\r
 \r
 /*\r
  * CanGeneral Container\r
  */\r
 \r
-// This container contains the parameters related each CAN Driver Unit.\r
+/** Container for parameters related to the CAN Driver. */
 typedef struct {\r
-  //  Specifies the InstanceId of this module instance. If only one instance is\r
-  //  present it shall have the Id 0\r
+  /** Specifies the InstanceId of this module instance. If only one instance is
+   *  present it shall have the Id 0 */
   int CanIndex;\r
 \r
 #if 0 // This is only used by the config tool\r
@@ -138,47 +160,44 @@ typedef struct {
 } Can_GeneralType;\r
 \r
 \r
-/*\r
- * CanFilterMask container\r
- */\r
+/** Type for Can id filter mask */
 typedef uint32 Can_FilterMaskType;\r
 \r
 /*\r
  * CanHardwareObject container\r
- */\r
-\r
-//This container contains the configuration (parameters) of CAN Hardware\r
-//Objects.\r
+ */
+
+/** Container for CAN Hardware Object parameters */
 typedef struct Can_HardwareObjectStruct {\r
-  // Specifies the type (Full-CAN or Basic-CAN) of a hardware object.\r
+  /** Specifies the type (Full-CAN or Basic-CAN) of a hardware object. */
   Can_Arc_HohType CanHandleType;\r
 \r
-  // Specifies whether the IdValue is of type - standard identifier - extended\r
-  // identifier - mixed mode ImplementationType: Can_IdType\r
+  /** Specifies whether the IdValue is of type - standard identifier - extended
+   *  identifier - mixed mode */
   Can_IdTypeType CanIdType;\r
 \r
-  //  Specifies (together with the filter mask) the identifiers range that passes\r
-  //  the hardware filter.\r
+  /** Specifies (together with the filter mask) the identifiers range that passes
+   *  the hardware filter. */
   uint32 CanIdValue;\r
 \r
-  //  Holds the handle ID of HRH or HTH. The value of this parameter is unique\r
-  //  in a given CAN Driver, and it should start with 0 and continue without any\r
-  //  gaps. The HRH and HTH Ids are defined under two different name-spaces.\r
-  //  Example: HRH0-0, HRH1-1, HTH0-2, HTH1-3\r
+  /** Holds the handle ID of HRH or HTH. The value of this parameter is unique
+   *  in a given CAN Driver, and it should start with 0 and continue without any
+   *  gaps. The HRH and HTH Ids are defined under two different name-spaces.
+   *  Example: HRH0-0, HRH1-1, HTH0-2, HTH1-3 */
   uint32 CanObjectId;\r
 \r
-  // Specifies if the HardwareObject is used as Transmit or as Receive object\r
+  /** Specifies if the HardwareObject is used as Transmit or as Receive object */
   Can_ObjectTypeType CanObjectType;\r
 \r
-  // Reference to the filter mask that is used for hardware filtering togerther\r
-  // with the CAN_ID_VALUE\r
+  /** Reference to the filter mask that is used for hardware filtering togerther
+   *  with the CAN_ID_VALUE */
   Can_FilterMaskType *CanFilterMaskRef;\r
 \r
-  // A "1" in this mask tells the driver that that HW Message Box should be\r
-  // occupied by this Hoh. A "1" in bit 31(ppc) occupies Mb 0 in HW.\r
+  /** A "1" in this mask tells the driver that that HW Message Box should be
+   *  occupied by this Hoh. A "1" in bit 31(ppc) occupies Mb 0 in HW. */
   uint32 Can_Arc_MbMask;\r
 \r
-  // End Of List. Set to TRUE is this is the last object in the list.\r
+  /** End Of List. Set to TRUE if this is the last object in the list. */
   boolean Can_Arc_EOL;\r
 \r
 } Can_HardwareObjectType;\r
@@ -191,79 +210,78 @@ typedef enum {
   CAN_ARC_PROCESS_TYPE_INTERRUPT,\r
   CAN_ARC_PROCESS_TYPE_POLLING,\r
 } Can_Arc_ProcessType;\r
-\r
+
+/** Container for configuration of a controller. */
 typedef struct {\r
 \r
-  //  Enables / disables API Can_MainFunction_BusOff() for handling busoff\r
-  //  events in polling mode.\r
-  // INTERRUPT or POLLING\r
+  /** Enables / disables API Can_MainFunction_BusOff() for handling busoff
+   *  events in polling mode. Polling not supported. */
   Can_Arc_ProcessType CanBusOffProcessing;\r
 \r
-  // Defines if a CAN controller is used in the configuration.\r
+  /** Defines if a CAN controller is used in the configuration. */
   boolean CanControllerActivation;\r
 \r
-  // Specifies the buadrate of the controller in kbps.\r
+  /** Specifies the buadrate of the controller in kbps. */
   uint32 CanControllerBaudRate;\r
 \r
-  //  This parameter provides the controller ID which is unique in a given CAN\r
-  //  Driver. The value for this parameter starts with 0 and continue without any\r
-  //  gaps.\r
+  /** This parameter provides the controller ID which is unique in a given CAN
+   *  Driver. The value for this parameter starts with 0 and continue without any
+   *  gaps. */
   CanControllerIdType CanControllerId;\r
 \r
-  // Specifies propagation delay in time quantas.\r
+  /** Specifies propagation delay in time quantas. */
   uint32 CanControllerPropSeg;\r
 \r
-  // Specifies phase segment 1 in time quantas.\r
+  /** Specifies phase segment 1 in time quantas. */
   uint32 CanControllerSeg1;\r
 \r
-  // Specifies phase segment 2 in time quantas.\r
+  /** Specifies phase segment 2 in time quantas. */
   uint32 CanControllerSeg2;\r
 \r
-  //  Specifies the time quanta for the controller. The calculation of the resulting\r
-  //  prescaler value depending on module clocking and time quanta shall be\r
-  //  done offline Hardware specific.\r
+  /** Specifies the time quanta for the controller. The calculation of the resulting
+   *  prescaler value depending on module clocking and time quanta shall be
+   *  done offline Hardware specific. */
   uint32 CanControllerTimeQuanta;\r
 \r
-  //  Enables / disables API Can_MainFunction_Read() for handling PDU\r
-  //  reception events in polling mode.\r
+  /** Enables / disables API Can_MainFunction_Read() for handling PDU
+   *  reception events in polling mode. Polling not supported. */
   Can_Arc_ProcessType CanRxProcessing;\r
 \r
-  //  Enables / disables API Can_MainFunction_Write() for handling PDU\r
-  //  transmission events in polling mode.\r
+  /** Enables / disables API Can_MainFunction_Write() for handling PDU
+   *  transmission events in polling mode. Polling not supported. */
   Can_Arc_ProcessType CanTxProcessing;\r
 \r
-  //  Enables / disables API Can_MainFunction_Wakeup() for handling wakeup\r
-  //  events in polling mode.\r
+  /** Enables / disables API Can_MainFunction_Wakeup() for handling wakeup
+   *  events in polling mode. Polling not supported. */
   Can_Arc_ProcessType CanWakeupProcessing;\r
 \r
-  //  Reference to the CPU clock configuration, which is set in the MCU driver\r
-  //  configuration\r
+  /** Reference to the CPU clock configuration, which is set in the MCU driver
+   *  configuration */
   uint32 CanCpuClockRef;\r
 \r
-  //  This parameter contains a reference to the Wakeup Source for this\r
-  //  controller as defined in the ECU State Manager. Implementation Type:\r
-  //  reference to EcuM_WakeupSourceType\r
+  /** This parameter contains a reference to the Wakeup Source for this
+   *  controller as defined in the ECU State Manager. Implementation Type:
+   *  reference to EcuM_WakeupSourceType. Not supported. */
   uint32 CanWakeupSourceRef;\r
 \r
   //\r
   // ArcCore stuff\r
   //\r
 \r
-  // List of Hoh id's that belong to this controller\r
+  /** List of Hardware Object id's that belong to this controller. */
   const Can_HardwareObjectType  *Can_Arc_Hoh;\r
-\r
+
+  /** Enable controller self reception. */
   boolean Can_Arc_Loopback;\r
 \r
-  // Set this to use the fifo\r
+  /** Set this to use the fifo */
   boolean Can_Arc_Fifo;\r
 \r
 } Can_ControllerConfigType;\r
 \r
 \r
 \r
-/*\r
- * CanConfigSet container\r
- */\r
+/** Container for controller parameters. */
 typedef struct {\r
   const Can_ControllerConfigType *CanController;\r
   \r
@@ -271,23 +289,22 @@ typedef struct {
   const Can_CallbackType *CanCallbacks;\r
 } Can_ConfigSetType;\r
 \r
-\r
-typedef struct {\r
-  // This is the multiple configuration set container for CAN Driver\r
-  // Multiplicity 1..*\r
-  const Can_ConfigSetType   *CanConfigSet;\r
-  // This container contains the parameters related each CAN\r
-  // Driver Unit.\r
-  // Multiplicity 1..*\r
+/** Top level container for parameters. */
+typedef struct {
+  /** Controller parameters. */
+  const Can_ConfigSetType   *CanConfigSet;
+  /** Driver parameters. */
   const Can_GeneralType   *CanGeneral;\r
 \r
-\r
 } Can_ConfigType;\r
 \r
-\r
-extern const Can_ConfigType CanConfigData;\r
+/** Top level container for parameters. */
+extern const Can_ConfigType CanConfigData;
+/** For direct access to controller list */
 extern const Can_ControllerConfigType CanControllerConfigData[];\r
+/** Container for controller parameters. */
 extern const Can_ConfigSetType Can_ConfigSet;\r
 \r
 \r
 #endif /*CAN_CFG_H_*/\r
+/** @} */
index 4b464b40be40a1953efdb0412bf8f4850c7cf5a6..8edfdbeb8f3440def5df709d6c5fc33c16eb0da6 100644 (file)
  * -------------------------------- Arctic Core ------------------------------*/
 
 
+/** @addtogroup Com COM module
+ *  @{ */
 
-
-
-
+/** @file Com_Cfg.h
+ * Definitions of configuration parameters for the COM module.
+ */
 
 
 #ifndef COM_CFG_H_\r
 \r
 #define COM_DEV_ERROR_DETECT\r
 \r
-\r
-#define COM_MAX_NR_IPDU 30\r
-#define COM_MAX_NR_SIGNAL 30\r
+/** Max number of I-PDUs allowed in the configuration. */
+#define COM_MAX_NR_IPDU 30
+/** Max number of signals allowed in the configuration. */
+#define COM_MAX_NR_SIGNAL 30
+/** Max number of group signals allowed in the configuration. */
 #define COM_MAX_NR_GROUPSIGNAL 30\r
-\r
-#define COM_MAX_NR_SIGNALS_PER_IPDU 10\r
-#define COM_MAX_NR_SIGNALGROUPS_PER_IPDU 10\r
+
+/** Max number of signals allowed per I-PDU. */
+#define COM_MAX_NR_SIGNALS_PER_IPDU 10
+/** Max number of signal groups allowed per I-PDU. */
+#define COM_MAX_NR_SIGNALGROUPS_PER_IPDU 10
+/** Max number of group signals allowd per signal group. */
 #define COM_MAX_NR_SIGNALS_PER_SIGNAL_GROUP 10\r
 \r
 \r
 \r
 #define CPU_ENDIANESS BIG_ENDIAN\r
 \r
-/*\r
- * ComGeneral pre-compile time configuration parameters.
- */\r
+
 #define ComConfigurationTimeBase\r
 #define ComConfigurationUseDet\r
 #define ComVersionInfoApi\r
 \r
 \r
-\r
-\r
-\r
-#endif /*COM_CFG_H_*/\r
+#endif /*COM_CFG_H_*/
+/** @} */
index 452bf002ef4da279f214ea97a301ab22d2e9478a..569dd83c8cc32eefa2325b49b5fa9fe8b7edf05b 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Det DET
+ *  @{ */
 
+/** @file Det_Cfg.h
+ *  Definitions of configuration parameters for DET.
+ *  Specification: Autosar v2.0.1, Final
+ */
 
-
-
-
-
-
-/*\r
- * Development Error Tracer driver\r
- *\r
- * Specification: Autosar v2.0.1, Final\r
- *\r
- */\r
 #ifndef _DET_CFG_H_\r
 #define _DET_CFG_H_\r
 \r
-#define DET_ENABLE_CALLBACKS STD_ON  // Enable to use callback on errors\r
-#define DET_USE_RAMLOG       STD_ON  // Enable to log DET errors to ramlog\r
-#define DET_WRAP_RAMLOG      STD_ON  // The ramlog wraps around when reaching the end\r
-#define DET_USE_STDERR       STD_ON // Enable to get DET errors on stderr\r
+#define DET_ENABLE_CALLBACKS STD_ON  /**< Enable to use callback on errors */
+#define DET_USE_RAMLOG       STD_ON  /**< Enable to log DET errors to ramlog */
+#define DET_WRAP_RAMLOG      STD_ON  /**< The ramlog wraps around when reaching the end */
+#define DET_USE_STDERR       STD_ON  /**< Enable to get DET errors on stderr */
 \r
-#define DET_DEINIT_API       STD_ON // Enable/Disable the Det_DeInit function\r
+#define DET_DEINIT_API       STD_ON  /**< Enable/Disable the Det_DeInit function */
 \r
-#define DET_RAMLOG_SIZE (32)        // Number of entries in ramlog\r
-#define DET_NUMBER_OF_CALLBACKS (5) // Number of callbacks\r
+#define DET_RAMLOG_SIZE (32)         /**< Number of entries in ramlog */
+#define DET_NUMBER_OF_CALLBACKS (5)  /**< Number of callbacks */
 \r
 #endif /*_DET_CFG_H_*/\r
+/** @} */
index d6df8a0a7f55715475368016704df7b1a0edeb8c..614782dae461d632190d1ee531f4055120692e0e 100644 (file)
 
 
 
+/** @addtogroup Dio DIO Driver
+ *  @{ */
 
-
-
-
-
+/** @file Dio_Cfg.h
+ * Definitions of configuration parameters for the DIO Driver.
+ */
 #ifndef DIO_CFG_H_\r
 #define DIO_CFG_H_\r
 \r
@@ -27,7 +28,7 @@
 #define DIO_DEV_ERROR_DETECT   STD_ON\r
 #define DIO_END_OF_LIST  -1\r
 \r
-// MPC5516 physical\r
+/** HW specific DIO port definitions. */
 typedef enum\r
 {\r
   DIO_PORT_A = 0,\r
@@ -40,9 +41,13 @@ typedef enum
   DIO_PORT_H,\r
   DIO_PORT_J,\r
   DIO_PORT_K\r
-} Dio_PortTypesType;\r
-\r
-//     Pin Name        GPIO(PCR)Num\r
+} Dio_PortTypesType;
+
+/** @name DIO channels
+ *  HW specific dio channels.
+ */
+//     Pin Name        GPIO(PCR)Num
+//@{
 #define DIO_CHANNEL_A0                 0\r
 #define DIO_CHANNEL_A1         1\r
 #define DIO_CHANNEL_A2         2\r
@@ -197,7 +202,8 @@ typedef enum
 #define DIO_CHANNEL_J15                143\r
 \r
 #define DIO_CHANNEL_K0         144\r
-#define DIO_CHANNEL_K1         145\r
+#define DIO_CHANNEL_K1         145
+//@}
 \r
 // Channels    \r
 extern const Dio_ChannelType DioChannelConfigData[];\r
index 6745ecaffe748a58cc05fbc86edbfac4a30c1270..3e1642457f757c75551c4f82b165fab55d36879b 100644 (file)
@@ -22,7 +22,8 @@
 
 #ifndef DMA_CFG_H_\r
 #define DMA_CFG_H_\r
-\r
+
+/** Channel id's. HW specific. */
 typedef enum\r
 {\r
   DMA_ADC_GROUP0_RESULT_CHANNEL,\r
index 41cef4e07b3962ae1e7bf6746538b1a1fd0b8b24..564680fea37a1b57ac159c8296e5b2f512900986 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup EcuM ECU State Manager
+ *  @{ */
 
-
-
-
-
-
+/** @file EcuM_Cfg.h
+ *  Definitions of configuration parameters for ECU State Manager.
+ *  Initialization sequences are defined in EcuM_Callout_template.c
+ */
 
 #ifndef ECUM_CFG_H_\r
 #define ECUM_CFG_H_\r
-\r
-#define ECUM_VERSION_INFO_API STD_ON\r
-#define ECUM_INCLUDE_NVRAM_MGR STD_OFF\r
+
+/** Build version info API */
+#define ECUM_VERSION_INFO_API STD_ON
+/** Using NVRAM Manager */
+#define ECUM_INCLUDE_NVRAM_MGR STD_OFF
+/** Enable Development Error Trace */
 #define ECUM_DEV_ERROR_DETECT STD_ON\r
 \r
 #include "EcuM_Generated_Types.h"\r
 \r
 #endif /*ECUM_CFG_H_*/\r
+/** @} */
index 18c67a5c104a61b6b29d1527592c9c492828d530..dee003808d8a57d803a9947a27d5ee5646d337d7 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Fls Flash Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Fls_Cfg.h
+ *  Definitions of configuration parameters for Flash Driver.
+ */
 
 #ifndef FLS_CFG_H_
 #define FLS_CFG_H_
 #include "MemIf_Types.h"
 
 
-/* Indicate that we are building Post Build, NOT Pre-Compile */
+/** Indicate that we are building Post Build, NOT Pre-Compile */
 #define FLS_VARIANT_PB STD_ON
 
 /*
  * Fls General container
  */
-//     The flash driver shall load the flash access code to RAM whenever an
-//     erase or write job is started and unload (overwrite) it after that job has
-//     been finished or canceled. true: Flash access code loaded on job start /
-//     unloaded on job end or error. false: Flash access code not loaded to /
-//     unloaded from RAM at all.
+/** The flash driver shall load the flash access code to RAM whenever an
+ *  erase or write job is started and unload (overwrite) it after that job has
+ *  been finished or canceled. true: Flash access code loaded on job start /
+ *  unloaded on job end or error. false: Flash access code not loaded to /
+ *  unloaded from RAM at all. */
 #define FLS_AC_LOAD_ON_JOB_START STD_OFF
 
-// The flash memory start address (see also FLS118).
-// FLS169: This parameter defines the lower boundary for read / write /
-// erase and compare jobs.
+/** The flash memory start address (see also FLS118).
+ *  FLS169: This parameter defines the lower boundary for read / write /
+ *  erase and compare jobs. */
 #define FLS_BASE_ADDRESS                       0x00000000
 
-//     Compile switch to enable and disable the Fls_Cancel function. true: API
-//     supported / function provided. false: API not supported / function not pro-
-//     vided
+/** Compile switch to enable and disable the Fls_Cancel function. true: API
+ *  supported / function provided. false: API not supported / function not pro-
+ *  vided */
 #define FLS_CANCEL_API                         STD_OFF
 
-//     Compile switch to enable and disable the Fls_Compare function. true: API
-//     supported / function provided. false: API not supported / function not pro-
-//     vided
+/** Compile switch to enable and disable the Fls_Compare function. true: API
+ *  supported / function provided. false: API not supported / function not pro-
+ *  vided */
 #define FLS_COMPARE_API                        STD_ON
 
-// Pre-processor switch for enabling the development error detection and
-// reporting (see FLS077).
-
+/** Pre-processor switch for enabling the development error detection and
+ *  reporting (see FLS077). */
 #define FLS_DEV_ERROR_DETECT           STD_ON
 
-// Index of the driver, used by FEE.
+/** Index of the driver, used by FEE. */
 #define FLS_DRIVER_INDEX                       100
 
-// Compile switch to enable and disable the Fls_GetJobResult function. true:
-// API supported / function provided. false: API not supported / function not
-// provided
+/** Compile switch to enable and disable the Fls_GetJobResult function. true:
+ *  API supported / function provided. false: API not supported / function not
+ * provided */
 #define FLS_GET_JOB_RESULT_API         STD_ON
 
-//     Compile switch to enable and disable the Fls_GetStatus function. true: API
-//     supported / function provided. false: API not supported / function not pro-
-//     vided
+/** Compile switch to enable and disable the Fls_GetStatus function. true: API
+ *  supported / function provided. false: API not supported / function not pro-
+ *  vided */
 #define FLS_GET_STATUS_API                     STD_ON
 
-// Compile switch to enable and disable the Fls_SetMode function. true: API
-// supported / function provided. false: API not supported / function not pro-
-// vided
+/** Compile switch to enable and disable the Fls_SetMode function. true: API
+ *  supported / function provided. false: API not supported / function not pro-
+ *  vided */
 #define FLS_SET_MODE_API                       STD_OFF
 
-// The total amount of flash memory in bytes (see also FLS118).
-// FLS170: This parameter in conjunction with FLS_BASE_ADDRESS
-// defines the upper boundary for read / write / erase and compare jobs
+/** The total amount of flash memory in bytes (see also FLS118).
+ *  FLS170: This parameter in conjunction with FLS_BASE_ADDRESS
+ *  defines the upper boundary for read / write / erase and compare jobs */
 #define FLS_TOTAL_SIZE                         0x180000 // from addr 0x0000_0000 to 0x0018_0000
-#define FLS_READ_PAGE_SIZE 0x8 // Read page size of 128 bits (4 words) (8 bytes)
+/** Read page size of 128 bits (4 words) (8 bytes) */
+#define FLS_READ_PAGE_SIZE 0x8
 
 
 // Job processing triggered by hardware interrupt. true: Job processing trig-
 // gered by interrupt (hardware controlled). false: Job processing not trig-
 // gered by interrupt (software controlled)
 
-// NOT supported by Freescale hardware
+/** NOT supported by Freescale hardware */
 #define FLS_USE_INTERRUPTS                     STD_OFF
 
 #define FLS_VERSION_INFO_API           STD_ON
@@ -103,68 +103,68 @@ extern void __FLS_WRITE_ROM__(void);
 extern char __FLS_SIZE__;
 #endif
 
-// Configuration description of a flashable sector
+/** Configuration description of a flashable sector */
 typedef struct {
-  // Number of continuous sectors with the above characteristics.
+  /** Number of continuous sectors with the above characteristics. */
   Fls_LengthType FlsNumberOfSectors;
 
-  // Size of one page of this sector. Implementation Type: Fls_LengthType.
+  /** Size of one page of this sector. Implementation Type: Fls_LengthType. */
   Fls_LengthType FlsPageSize;
 
-  // Size of this sector. Implementation Type: Fls_LengthTyp
+  /** Size of this sector. Implementation Type: Fls_LengthTyp */
   Fls_LengthType FlsSectorSize;
 
-  // Start address of this sector
+  /** Start address of this sector */
   Fls_AddressType FlsSectorStartaddress;
 
 } Fls_SectorType;
 
 
-// Container for runtime configuration parameters of the flash driver. Imple-
-// mentation Type: Fls_ConfigType.
+/** Container for runtime configuration parameters of the flash driver.
+ *  Implementation Type: Fls_ConfigType. */
 typedef struct {
-  //   Address offset in RAM to which the erase flash access code shall be
-  //   loaded. Used as function pointer to access the erase flash access code.
+  /** Address offset in RAM to which the erase flash access code shall be
+   *  loaded. Used as function pointer to access the erase flash access code. */
   void (*FlsAcErase)();
 
-  //   Address offset in RAM to which the write flash access code shall be
-  //   loaded. Used as function pointer to access the write flash access code.
+  /** Address offset in RAM to which the write flash access code shall be
+   *  loaded. Used as function pointer to access the write flash access code. */
   void (*FlsAcWrite)();
 //#if 0
 //     // Cycle time of calls of the flash driver's main function.
 //     float FlsCallCycle;
 //#endif
-       //      Mapped to the job end notification routine provided by some upper layer
-       //      module, typically the Fee module.
+       /** Mapped to the job end notification routine provided by some upper layer
+        *  module, typically the Fee module. */
        void (*FlsJobEndNotification)();
 
-       //      Mapped to the job error notification routine provided by some upper layer
-       //      module, typically the Fee module.
+       /** Mapped to the job error notification routine provided by some upper layer
+        *  module, typically the Fee module. */
        void (*FlsJobErrorNotification)();
 
-  //   The maximum number of bytes to read or compare in one cycle of the
-  //   flash driver's job processing function in fast mode.
+       /** The maximum number of bytes to read or compare in one cycle of the
+     *  flash driver's job processing function in fast mode. */
        uint32 FlsMaxReadFastMode;
 
-  //   The maximum number of bytes to read or compare in one cycle of the
-  //   flash driver's job processing function in normal mode.
+    /** The maximum number of bytes to read or compare in one cycle of the
+     *  flash driver's job processing function in normal mode. */
        uint32 FlsMaxReadNormalMode;
 
-       //      The maximum number of bytes to write in one cycle of the flash driver's job
-       //      processing function in fast mode.
+       /** The maximum number of bytes to write in one cycle of the flash driver's job
+        *  processing function in fast mode. */
        uint32 FlsMaxWriteFastMode;
 
-       //      The maximum number of bytes to write in one cycle of the flash driver's job
-       //      processing function in normal mode.
+       /** The maximum number of bytes to write in one cycle of the flash driver's job
+        *  processing function in normal mode. */
        uint32 FlsMaxWriteNormalMode;
 
-       // Erase/write protection settings. Only relevant if supported by hardware.
+       /** Erase/write protection settings. Only relevant if supported by hardware. */
        uint32 FlsProtection;
 
-  // List of flash:able sectors and pages
+  /** List of flash:able sectors and pages */
   const Fls_SectorType *FlsSectorList;
 
-  // Size of List of the FlsSectorList
+  /** Size of List of the FlsSectorList */
   const uint32 FlsSectorListSize;
 
   uint8 *FlsBlockToPartitionMap;
@@ -176,10 +176,10 @@ typedef struct {
 extern const Fls_ConfigType FlsConfigSet[];
 
 #if 0
-/* N/A since PPC have PIC */
+/** N/A since PPC have PIC */
 #define FLS_AC_LOCATION_ERASE
 #define FLS_AC_LOCATION_WRITE
-/* N/A since we have internal flash */
+/** N/A since we have internal flash */
 #define FLS_EXPECTED_HW_ID
 #endif
 
@@ -192,3 +192,4 @@ extern const Fls_ConfigType FlsConfigSet[];
 
 
 #endif /*FLS_CFG_H_*/
+/** @} */
index ca78d4dceba472998cd6e8cb2a664e24a0f3db9a..69026d71796d9754983f8273ae4f4060a9abb6e4 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Gpt GPT Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Gpt_Cfg.h
+ *  Definitions of configuration parameters for GPT Driver.
+ */
 
 #ifndef GPT_CFG_H_\r
 #define GPT_CFG_H_\r
 #include "Std_Types.h"\r
 \r
 \r
-// Pre-compile only\r
+/** Configuration is pre-compile only. Not supported. */
 #define GPT_VARIANT_PC STD_OFF\r
-// Mix of pre-compile and post-build\r
+/** Configuration is a mix of pre-compile and post-build */
 #define GPT_VARIANT_PB STD_ON\r
 \r
 //#define DEC_TEST\r
 //#define GPT_TEST\r
 \r
-/* Std PIT channels */\r
+/** HW PIT channels */
 #define GPT_CHANNEL_RTI        0\r
 #define GPT_CHANNEL_PIT_0      GPT_CHANNEL_RTI\r
 #define GPT_CHANNEL_PIT_1      1\r
@@ -47,7 +47,7 @@
 \r
 #define GPT_PIT_CNT            (GPT_CHANNEL_PIT_8 + 1)\r
 \r
-/* Mcu channels */\r
+/** Decrementer */
 #define GPT_CHANNEL_DEC        9\r
 \r
 #define GPT_CHANNEL_CNT        (GPT_CHANNEL_DEC+1)\r
 // Illegal channel\r
 #define GPT_CHANNEL_ILL        31\r
 \r
-\r
+/** Enable Development Error Trace */
 #define GPT_DEV_ERROR_DETECT           STD_ON\r
-// Enables/Disables wakeup source reporting\r
+/** Enables/Disables wakeup source reporting. Not supported. */
 #define GPT_REPORT_WAKEUP_SOURCE       STD_OFF\r
-\r
-#define GPT_DEINIT_API                                                 STD_ON\r
-#define GPT_ENABLE_DISABLE_NOTIFICATION_API    STD_ON\r
-#define GPT_TIME_REMAINING_API                                 STD_ON\r
-#define GPT_TIME_ELAPSED_API                    STD_ON\r
+/** Build DeInit API */
+#define GPT_DEINIT_API                                                 STD_ON
+/** Build notification API */
+#define GPT_ENABLE_DISABLE_NOTIFICATION_API     STD_ON
+/** Build time remaining API */
+#define GPT_TIME_REMAINING_API                                 STD_ON
+/** Build time elapsed API */
+#define GPT_TIME_ELAPSED_API                    STD_ON
+/** Build version info API */
 #define GPT_VERSION_INFO_API                                   STD_ON\r
-// TODO: EcuM things missing to get this API working properly\r
+/** Build wakeup API. Not supported */
 #define GPT_WAKEUP_FUNCTIONALITY_API                   STD_OFF\r
 \r
 \r
-// This container contains the channel-wide configuration (parameters) of the\r
-// GPT Driver\r
+/** This container contains the channel-wide configuration (parameters) of the
+ *  GPT Driver */
 typedef struct  {\r
-       // GPT187: The GPT module specific clock input for the timer unit can\r
-       // statically be configured and allows  to select different clock sources\r
-       // (external clock, internal GPT specific clock) per channel\r
+       /** GPT187: The GPT module specific clock input for the timer unit can
+        *  statically be configured and allows  to select different clock sources
+        *  (external clock, internal GPT specific clock) per channel */
        uint32 GptChannelClkSrc;\r
 \r
-       //      Channel Id of the GPT channel. This value will be assigned to the symbolic\r
-       //      name derived of the GptChannelConfiguration container short name.\r
+       /** Channel Id of the GPT channel. */
        Gpt_ChannelType GptChannelId;\r
 \r
-       // Specifies the behaviour of the timerchannel after the timeout has expired\r
+       /** Specifies the behaviour of the timer channel after the timeout has expired. */
        Gpt_ChannelMode GptChannelMode;\r
 \r
-       // Function pointer to callback function\r
+       /** Function pointer to callback function */
        void (*GptNotification)();\r
 \r
-       // GPT module specific prescaler factor per channel\r
+       /** GPT module specific prescaler factor per channel */
        uint32 GptChannelPrescale;\r
 \r
-       //  GPT188: Enables wakeup capability of CPU for a channel when timeout\r
-       // period expires. This might be different to enabling the notification\r
-       // depending on hardware capabilities\r
+       /** GPT188: Enables wakeup capability of CPU for a channel when timeout
+        *  period expires. This might be different to enabling the notification
+        *  depending on hardware capabilities. Not supported. */
        boolean GptEnableWakeup;\r
 } Gpt_ConfigType;\r
-\r
+
+/** The list of channel configurations */
 extern const Gpt_ConfigType GptConfigData[];\r
 \r
-#endif /*GPT_CFG_H_*/\r
+#endif /*GPT_CFG_H_*/
+/** @} */
index 36c14fdc522ad6267859ddee650fe0e45939a1cf..f7399dcb132160bb2ce26ee932c38e9ec9b454b4 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup LinIf LIN Interface
+ *  @{ */
 
-
-
-
-
-
+/** @file LinIf_Cfg.h
+ *  Definitions of configuration parameters for LIN Interface.
+ */
 
 #ifndef LINIF_CFG_H_\r
 #define LINIF_CFG_H_\r
@@ -33,41 +33,41 @@ enum {
   PDU_MSG_LIN_RX_2,\r
 };\r
 \r
-/* Switches the Development Error Detection and Notification\r
+/** Switches the Development Error Detection and Notification
 ON or OFF. */\r
 #define LINIF_DEV_ERROR_DETECT STD_ON\r
 \r
-/* States if multiple drivers are included in the LIN Interface or not. The\r
- * reason for this parameter is to reduce the size of LIN Interface if multiple\r
- * drivers are not used. */\r
+/** States if multiple drivers are included in the LIN Interface or not. The
+ *  reason for this parameter is to reduce the size of LIN Interface if multiple
+ *  drivers are not used. */
 #define LINIF_MULTIPLE_DRIVER_SUPPORT STD_OFF\r
 \r
-/* States if the node configuration commands Assign NAD and Conditional\r
- * Change NAD are supported. */\r
+/** States if the node configuration commands Assign NAD and Conditional
+ *  Change NAD are supported. */
 #define LINIF_OPTIONAL_REQUEST_SUPPORTED STD_OFF\r
 \r
-/* States if the TP is included in the LIN Interface or not. The reason for this\r
- * parameter is to reduce the size of LIN Interface if the TP is not used. */\r
+/** States if the TP is included in the LIN Interface or not. The reason for this
+ *  parameter is to reduce the size of LIN Interface if the TP is not used. */
 #define LINIF_TP_SUPPORTED STD_OFF\r
 \r
-/* Switches the LinIf_GetVersionInfo function ON or OFF. */\r
+/** Switches the LinIf_GetVersionInfo function ON or OFF. */
 #define LINIF_VERSION_INFO_API STD_ON\r
 \r
 typedef struct {\r
-       /* Switches the Development Error Detection and Notification\r
-       ON or OFF. */\r
+       /** Switches the Development Error Detection and Notification
+        *  ON or OFF. */
        boolean LinIfDevErrorDetect;\r
-       /* States if multiple drivers are included in the LIN Interface or not. The\r
-        * reason for this parameter is to reduce the size of LIN Interface if multiple\r
-        * drivers are not used. */\r
+       /** States if multiple drivers are included in the LIN Interface or not. The
+        *  reason for this parameter is to reduce the size of LIN Interface if multiple
+        *  drivers are not used. */
        boolean LinIfMultipleDriversSupported;\r
-       /* States if the node configuration commands Assign NAD and Conditional\r
-        * Change NAD are supported. */\r
+       /** States if the node configuration commands Assign NAD and Conditional
+        *  Change NAD are supported. */
        boolean LinIfNcOptionalRequestSupported;\r
-       /* States if the TP is included in the LIN Interface or not. The reason for this\r
-        * parameter is to reduce the size of LIN Interface if the TP is not used. */\r
+       /** States if the TP is included in the LIN Interface or not. The reason for this
+        *  parameter is to reduce the size of LIN Interface if the TP is not used. */
        boolean LinIfTpSupported;\r
-       /* Switches the LinIf_GetVersionInfo function ON or OFF. */\r
+       /** Switches the LinIf_GetVersionInfo function ON or OFF. */
        boolean LinIfVersionInfoApi;\r
 }LinIf_GeneralType;\r
 \r
@@ -204,3 +204,4 @@ extern const LinIf_FrameType LinIfFrameCfg[];
 #define LINIF_SCH_CNT 2\r
 \r
 #endif /*LINIF_CFG_H_*/\r
+/** @} */
index 927d93a094b8df53d911587551299afc935146f5..2af9ded5d891c796539ba8440dad5bec5015cc4f 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Lin LIN Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Lin_Cfg.h
+ *  Definitions of configuration parameters for LIN Driver.
+ */
 
 #ifndef LIN_CFG_H_\r
 #define LIN_CFG_H_\r
 \r
 #include "Std_Types.h"\r
 \r
-/* Switches the Development Error Detection and Notification\r
+/** Switches the Development Error Detection and Notification
 ON or OFF. */\r
 #define LIN_DEV_ERROR_DETECT STD_ON\r
 \r
-/* Specifies the InstanceId of this module instance. If only one\r
+/** Specifies the InstanceId of this module instance. If only one
 instance is present it shall have the Id 0. */\r
 #define LIN_INDEX 0\r
 \r
-/* Specifies the maximum number of loops for blocking function\r
- * until a timeout is raised in short term wait loops */\r
+/** Specifies the maximum number of loops for blocking function
+ *  until a timeout is raised in short term wait loops */
 #define LIN_TIMEOUT_DURATION 10\r
 \r
-/* Switches the Lin_GetVersionInfo function ON or OFF. */\r
+/** Switches the Lin_GetVersionInfo function ON or OFF. */
 #define LIN_VERSION_INFO_API STD_ON\r
-\r
+
+/** HW specific controller id's */
 typedef enum {\r
   LIN_CTRL_A = 0,\r
   LIN_CTRL_B,\r
@@ -51,36 +52,39 @@ typedef enum {
   LIN_CTRL_H,\r
   LIN_CONTROLLER_CNT\r
 }LinControllerIdType;\r
-\r
+
+/** Not used */
 typedef struct {\r
-       /* Switches the Development Error Detection and Notification\r
+       /** Switches the Development Error Detection and Notification
        ON or OFF. */\r
        boolean LinDevErrorDetect;\r
-       /* Specifies the InstanceId of this module instance. If only one\r
+       /** Specifies the InstanceId of this module instance. If only one
        instance is present it shall have the Id 0. */\r
        uint8 LinIndex;\r
-       /* Specifies the maximum number of loops for blocking function\r
+       /** Specifies the maximum number of loops for blocking function
         * until a timeout is raised in short term wait loops */\r
        uint16 LinTimeoutDuration;\r
-       /* Switches the Lin_GetVersionInfo function ON or OFF. */\r
+       /** Switches the Lin_GetVersionInfo function ON or OFF. */
        boolean LinVersionInfoApi;\r
 }Lin_GeneralType;\r
-\r
+
+/** Container for channel settings */
 typedef struct {\r
-       /* Specifies the baud rate of the LIN channel */\r
+       /** Specifies the baud rate of the LIN channel */
        uint16 LinChannelBaudRate;\r
-       /* Identifies the LIN channel.*/\r
+       /** Identifies the LIN channel.*/
        uint8 LinChannelId;\r
-       /* Specifies if the LIN hardware channel supports wake up functionality */\r
+       /** Specifies if the LIN hardware channel supports wake up functionality */
        boolean LinChannelWakeUpSupport;\r
-       /* This parameter contains a reference to the Wakeup Source\r
-        * for this controller as defined in the ECU State Manager.\r
-        * Implementation Type: reference to EcuM_WakeupSourceType */\r
+       /** This parameter contains a reference to the Wakeup Source
+        *  for this controller as defined in the ECU State Manager.
+        *  Implementation Type: reference to EcuM_WakeupSourceType */
        uint32 LinChannelEcuMWakeUpSource;\r
-       /* Reference to the LIN clock source configuration, which is set\r
+       /** Reference to the LIN clock source configuration, which is set
         *      in the MCU driver configuration.*/\r
        uint32 LinClockRef;\r
 } Lin_ChannelConfigType;\r
 \r
 \r
 #endif /*LIN_CFG_H_*/\r
+/** @} */
index ade3d6124343fb074da0120fcf8d1b81fd21dbda..5d399a37c0fdc692f28e7e608307be9e8b29b6b7 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Mcu MCU Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Mcu_Cfg.h
+ *  Definitions of configuration parameters for MCU Driver.
+ */
 
 #ifndef MCU_CFG_H_\r
 #define MCU_CFG_H_\r
 \r
 #include "mpc55xx.h"\r
-\r
+
+/** Enable Development Error Trace */
 #define MCU_DEV_ERROR_DETECT   STD_ON\r
-// Preprocessor switch to enable / disable the use of the function\r
-// Mcu_PerformReset()\r
+/** Enable/disable the use of the function Mcu_PerformReset() */
 #define MCU_PERFORM_RESET_API  STD_ON\r
-\r
+/** Build version info API */
 #define MCU_VERSION_INFO_API   STD_ON\r
 \r
 #include "Std_Types.h"\r
 \r
 /* FMPLL modes( atleast in 5553/5554 ) */\r
-\r
+
+/** HW specific PLL modes */
 typedef enum {\r
        MCU_FMPLL_BYPASS = 0,\r
        MCU_FMPLL_EXTERNAL_REF,\r
        MCU_FMPLL_EXTERNAL_REF_NO_FM,\r
        MCU_FMPLL_DUAL_CONTROLLER_MODE,\r
 } Mcu_FMPLLmode_t;\r
-\r
+
+/** Symbolic names for clock settings */
 typedef enum {\r
   MCU_CLOCKTYPE_EXT_REF_80MHZ = 0,\r
   MCU_CLOCKTYPE_EXT_REF_66MHZ,\r
@@ -52,91 +54,89 @@ typedef enum {
        //MCU_CLOCKTYPE_DUAL_CONTROLLER_MODE,\r
 } Mcu_ClockType;\r
 \r
-\r
+/** Defines clock settings */
 typedef struct {\r
-       // This container defines a reference point in the Mcu Clock tree\r
-       // It defines the frequency which then can be used by other modules\r
-       // as an input value. Lower multiplicity is 1, as even in the\r
-       // simplest case (only one frequency is used), there is one\r
-       // frequency to be defined.\r
+       /** PLL input frequency for this clock setting. */
        uint32 McuClockReferencePoint;\r
 \r
-  // Phase locked loop configuration parameters for MPC551x.\r
-  uint8 PllEprediv;\r
-  uint8 PllEmfd;\r
+  /** PLL configuration parameter for MPC551x. */
+  uint8 PllEprediv;
+  /** PLL configuration parameter for MPC551x. */
+  uint8 PllEmfd;
+  /** PLL configuration parameter for MPC551x. */
   uint8 PllErfd;\r
 } Mcu_ClockSettingConfigType;\r
-\r
+
+/** Not used */
 typedef struct {\r
-       // The parameter represents the MCU Mode settings\r
+       /** The parameter represents the MCU Mode settings */
        uint32 McuMode;\r
 } Mcu_ModeSettingConfigType;\r
-\r
+
+/** Not used */
 typedef struct {\r
-       // This parameter shall represent the Data pre-setting to be initialized\r
+       /** This parameter shall represent the Data pre-setting to be initialized */
        uint32 McuRamDefaultValue;\r
 \r
-       // This parameter shall represent the MCU RAM section base address\r
+       /** This parameter shall represent the MCU RAM section base address */
        uint32 McuRamSectionBaseAddress;\r
 \r
-       // This parameter shall represent the MCU RAM Section size\r
+       /** This parameter shall represent the MCU RAM Section size */
        uint32 McuRamSectionSize;\r
 \r
 } Mcu_RamSectorSettingConfigType;\r
 \r
 \r
-// This container defines a reference point in the Mcu Clock tree. It defines\r
-// the frequency which then can be used by other modules as an input value.\r
-// Lower multiplicity is 1, as even in the simplest case (only one frequency is\r
-// used), there is one frequency to be defined.\r
+/** Not used */
 typedef struct {\r
 \r
-       //      This is the frequency for the specific instance of the McuClockReference-\r
-       //      Point container. It shall be givn in Hz.\r
+       /** This is the frequency for the specific instance of the McuClockReference-
+        *  Point container. It shall be given in Hz. */
        uint32 McuClockReferencePointFrequency;\r
 \r
 } Mcu_ClockReferencePointType;\r
-\r
+
+/** Top level configuration container */
 typedef struct {\r
-       //      Enables/Disables clock failure notification. In case this feature is not supported\r
-       //      by HW the setting should be disabled.\r
+       /** Enables/Disables clock failure notification. In case this feature is not supported
+        *  by HW the setting should be disabled. */
        uint8   McuClockSrcFailureNotification;\r
 \r
-       //      This parameter shall represent the number of Modes available for the\r
-       //      MCU. calculationFormula = Number of configured McuModeSettingConf\r
+       /** This parameter shall represent the number of Modes available for the
+        *  MCU. calculationFormula = Number of configured McuModeSettingConf */
        uint8 McuNumberOfMcuModes;\r
 \r
-  //  This parameter shall represent the number of RAM sectors available for\r
-  //  the MCU. calculationFormula = Number of configured McuRamSectorSet-\r
-  //  tingConf\r
+  /** This parameter shall represent the number of RAM sectors available for
+   *  the MCU. calculationFormula = Number of configured McuRamSectorSet-
+   *  tingConf */
   uint8 McuRamSectors;\r
 \r
-  //  This parameter shall represent the number of clock setting available for\r
-  //  the MCU.\r
+  /** This parameter shall represent the number of clock setting available for
+   *  the MCU. */
   uint8 McuClockSettings;\r
 \r
-  // This parameter defines the default clock settings that should be used\r
-  // It is an index into the McuClockSettingsConfig\r
+  /** This parameter defines the default clock settings that should be used
+   *  It is an index into the McuClockSettingsConfig */
   Mcu_ClockType McuDefaultClockSettings;\r
 \r
-       //      This parameter relates to the MCU specific reset configuration. This ap-\r
-       //      plies to the function Mcu_PerformReset, which performs a microcontroller\r
-       //      reset using the hardware feature of the microcontroller.\r
+       /** This parameter relates to the MCU specific reset configuration. This ap-
+        *  plies to the function Mcu_PerformReset, which performs a microcontroller
+        *  reset using the hardware feature of the microcontroller. */
        uint32 McuResetSetting;\r
 \r
-       //      This container contains the configuration (parameters) for the\r
-       //      Clock settings of the MCU. Please see MCU031 for more in-\r
-       //      formation on the MCU clock settings.\r
+       /** This container contains the configuration (parameters) for the
+        *  Clock settings of the MCU. Please see MCU031 for more in-
+        *  formation on the MCU clock settings. */
        Mcu_ClockSettingConfigType * McuClockSettingConfig;\r
 \r
-       //      This container contains the configuration (parameters) for the\r
-       //      Mode setting of the MCU. Please see MCU035 for more information\r
-       //  on the MCU mode settings.\r
+       /** This container contains the configuration (parameters) for the
+        *  Mode setting of the MCU. Please see MCU035 for more information
+        *  on the MCU mode settings. */
        Mcu_ModeSettingConfigType  *McuModeSettingConfig;\r
 \r
-       //      This container contains the configuration (parameters) for the\r
-       //      RAM Sector setting. Please see MCU030 for more information\r
-       //      on RAM sec-tor settings.\r
+       /** This container contains the configuration (parameters) for the
+        *  RAM Sector setting. Please see MCU030 for more information
+        *  on RAM sector settings. */
        Mcu_RamSectorSettingConfigType *McuRamSectorSettingConfig;\r
 \r
 } Mcu_ConfigType;\r
@@ -146,3 +146,4 @@ extern const Mcu_ConfigType McuConfigData[];
 #define MCU_DEFAULT_CONFIG McuConfigData[0]\r
 \r
 #endif /*MCU_CFG_H_*/\r
+/** @} */
index 099fb1a151ac0e8553ef4bf0356eda12d3dae425..8c441862e80945e03f197d68ba2ac8837a89067f 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Port Port Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Port_Cfg.h
+ *  Definitions of configuration parameters for Port Driver.
+ */
 
 #ifndef PORT_CFG_H_\r
 #define PORT_CFG_H_\r
 \r
 #include "Std_Types.h"\r
-\r
-#define PORT_VERSION_INFO_API                          STD_ON\r
-#define PORT_DEV_ERROR_DETECT                          STD_ON\r
+
+/** Build version info API */
+#define PORT_VERSION_INFO_API                          STD_ON
+/** Enable Development Error Trace */
+#define PORT_DEV_ERROR_DETECT                          STD_ON
+/** Build change pin direction API */
 #define PORT_PIN_DIRECTION_CHANGES_ALLOWED     STD_ON\r
-\r
+
+/** HW specific symbolic names of pins */
 typedef enum\r
 {\r
   PA0,\r
@@ -178,7 +182,9 @@ typedef enum
   PK0,\r
   PK1\r
 } Port_PinType;\r
-\r
+
+/** @name HW specific register bits. */
+//@{
 #define   BIT0    (1<<15)\r
 #define   BIT1    (1<<14)\r
 #define   BIT2    (1<<13)\r
@@ -221,21 +227,27 @@ typedef enum
 // Should be this out of reset\r
 #define    PCR_RESET    (0)\r
 #define PCR_BOOTCFG   (IBE_ENABLE|PULL_DOWN)\r
-\r
+//@}
 \r
 #define EVB_TEST_CONFIG  (&PortConfigData)\r
 \r
-\r
+/** Top level configuration container */
 typedef struct\r
-{\r
-  uint16_t padCnt;\r
-  const uint16_t *padConfig;\r
-  uint16_t outCnt;\r
+{
+  /** Total number of pins */
+  uint16_t padCnt;
+  /** List of pin configurations */
+  const uint16_t *padConfig;
+  /** Total number of pin default levels */
+  uint16_t outCnt;
+  /** List of pin default levels */
   const uint8_t *outConfig;\r
 //  uint16_t inCnt;\r
 //  const uint8_t *inConfig;\r
 } Port_ConfigType;\r
-\r
+
+/** Instance of the top level configuration container */
 extern const Port_ConfigType PortConfigData;\r
 \r
 #endif /*PORT_CFG_H_*/\r
+/** @} */
diff --git a/boards/mpc5516it/config/Pwm_Cfg.c b/boards/mpc5516it/config/Pwm_Cfg.c
new file mode 100644 (file)
index 0000000..6244a5c
--- /dev/null
@@ -0,0 +1,46 @@
+/* -------------------------------- Arctic Core ------------------------------
+ * Arctic Core - the open source AUTOSAR platform http://arccore.com
+ *
+ * Copyright (C) 2009  ArcCore AB <contact@arccore.com>
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by the
+ * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * for more details.
+ * -------------------------------- Arctic Core ------------------------------*/
+
+
+
+
+
+
+
+
+/*
+ * Pwm_Cfg.c
+ *
+ *  Created on: 2009-jul-09
+ *      Author: nian
+ */
+
+#include "Pwm.h"
+#include "Pwm_Cfg.h"
+
+extern void MyPwmNotificationRoutine(void);
+
+const Pwm_ConfigType PwmConfig = {
+       .Channels = {
+               PWM_CHANNEL_CONFIG(PWM_CHANNEL_1, 3000, 0x6000, PWM_CHANNEL_PRESCALER_4, PWM_HIGH),
+               PWM_CHANNEL_CONFIG(PWM_CHANNEL_2, 2000, 0x2000, PWM_CHANNEL_PRESCALER_2, PWM_LOW)
+       },
+#if PWM_NOTIFICATION_SUPPORTED==STD_ON
+       .NotificationHandlers = {
+                       MyPwmNotificationRoutine, // PWM_CHANNEL_1
+                       NULL                      // PWM_CHANNEL_2
+       }
+#endif
+};
diff --git a/boards/mpc5516it/config/Pwm_Cfg.h b/boards/mpc5516it/config/Pwm_Cfg.h
new file mode 100644 (file)
index 0000000..05a83aa
--- /dev/null
@@ -0,0 +1,204 @@
+/* -------------------------------- Arctic Core ------------------------------
+ * Arctic Core - the open source AUTOSAR platform http://arccore.com
+ *
+ * Copyright (C) 2009  ArcCore AB <contact@arccore.com>
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by the
+ * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * for more details.
+ * -------------------------------- Arctic Core ------------------------------*/
+
+/** @addtogroup Pwm PWM Driver
+ *  @{ */
+
+/** @file Pwm_Cfg.h
+ *  Definitions of configuration parameters for PWM Driver.
+ */
+
+#ifndef PWM_CFG_H_
+#define PWM_CFG_H_
+
+/*
+ * PwmGeneral
+ */
+
+/*
+ * PWM003: The detection of development errors is configurable (ON/OFF) at
+ * pre-compile time. The switch PwmDevErorDetect shall activate or disable
+ * the detection of all development errors
+ */
+/** Enable Development Error Trace */
+#define PWM_DEV_EROR_DETECT STD_ON
+/** Build GetOutputState() */
+#define PWM_GET_OUTPUT_STATE STD_ON
+/** Determines if module is configurable at runtime */
+#define PWM_STATICALLY_CONFIGURED STD_OFF
+/** Use notifications */
+#define PWM_NOTIFICATION_SUPPORTED STD_ON
+/** Build period and duty API */
+#define PWM_SET_PERIOD_AND_DUTY STD_ON
+
+/**
+ * PWM106: This is implementation specific but not all values may be valid
+ * within the type. This shall be chosen in order to have the most efficient
+ * implementation on a specific microcontroller platform.
+ *
+ * PWM106 => Pwm_ChannelType == eemios channel id.
+ */
+typedef uint8 Pwm_ChannelType;
+
+/**
+ * PWM070: All time units used within the API services of the PWM module shall
+ * be of the unit ticks.
+ */
+typedef uint16 Pwm_PeriodType;
+
+
+/**
+ * PWM132: Switch for enabling the update of duty cycle parameter at the end
+ * of the current period.
+ *
+ * Note: Currently only ON mode is supported.
+ */
+#define PWM_DUTYCYCLE_UPDATED_ENDPERIOD STD_ON
+
+/****************************************************************************
+ * Not defined in AUTOSAR.
+ */
+#define PWM_ISR_PRIORITY 1
+#define PWM_PRESCALER 64
+/**
+ * Setting to ON freezes the current output state of a PWM channel when in
+ * debug mode.
+ */
+#define PWM_FREEZE_ENABLE STD_ON
+
+/****************************************************************************
+ * Enumeration of channels
+ * Maps a symbolic name to a hardware channel
+ */
+typedef enum {
+#if defined(CFG_BRD_MPC5516IT)
+    PWM_CHANNEL_1 = 13, /* Emios channel 13 and 12 map to the */
+    PWM_CHANNEL_2 = 12, /* LEDs LD4 and LD5 of MPC5516IT      */
+
+#elif defined(CFG_BRD_MPC5567QRTECH)
+    PWM_CHANNEL_1 = 10, /* Emios channel 10 maps to PCR189 which
+                         * is available on pin 54 of the
+                         * ERNI 154822 connector
+                         */
+    PWM_CHANNEL_2 = 12, /* Channel 12 goes to PCR191, also
+                         * available on the ERNI 154822 connector
+                         */
+#else
+#warning "Unknown board or CFG_BRD_* undefined"
+#endif
+    PWM_NUMBER_OF_CHANNELS = 2
+} Pwm_NamedChannelsType;
+
+typedef enum {
+       PWM_CHANNEL_PRESCALER_1=0,
+       PWM_CHANNEL_PRESCALER_2,
+       PWM_CHANNEL_PRESCALER_3,
+       PWM_CHANNEL_PRESCALER_4,
+} Pwm_ChannelPrescalerType;
+
+/**
+ * Since the AUTOSAR PWM specification uses a different unit for the duty,
+ * the following macro can be used to convert between that format and the
+ * mpc5516 format.
+ */
+#define DUTY_AND_PERIOD(_duty,_period) .duty = (_duty*_period)>>15, .period = _period
+
+#if defined(CFG_MPC5516)
+       /** Mode is buffered PWM output (OPWM)
+        *  Mode is buffered Output PW and frequency modulation mode */
+#define PWM_EMIOS_OPWM 0x5A
+#elif defined(CFG_MPC5567)
+       /** Mode is buffered OPWM with frequency modulation (allows change of
+        *  period) */
+#define PWM_EMIOS_OPWM 0x19
+#endif
+
+
+typedef struct {
+       /** Number of duty ticks */
+       uint32_t                 duty:32;
+       /** Length of period, in ticks */
+       uint32_t                 period:32;
+       /** Counter */
+       uint32_t                 counter:32;
+       /** Enable freezing the channel when in debug mode */
+       uint32_t                 freezeEnable:1;
+       /** Disable output */
+       uint32_t                 outputDisable:1;
+       /** Select which bus disables the bus
+        *  TODO: Figure out how this works, i.e. what bus does it refer to? */
+       uint32_t                                 outputDisableSelect:2;
+       /** Prescale the emios clock some more? */
+       Pwm_ChannelPrescalerType prescaler:2;
+       /** Prescale the emios clock some more? */
+       uint32_t                                 usePrescaler:1;
+       /** Whether to use DMA. Currently unsupported */
+       uint32_t                                 useDma:1;
+       uint32_t                                 reserved_2:1;
+       /** Input filter. Ignored in output mode. */
+       uint32_t                                 inputFilter:4;
+       /** Input filter clock source. Ignored in output mode */
+       uint32_t                                 filterClockSelect:1;
+       /** Enable interrupts/flags on this channel? Required for DMA as well. */
+       uint32_t                                 flagEnable:1;
+       uint32_t                                 reserved_3:3;
+       /** Trigger a match on channel A */
+       uint32_t                                 forceMatchA:1;
+       /** Triggers a match on channel B */
+       uint32_t                                 forceMatchB:1;
+       uint32_t                                 reserved_4:1;
+       /** We can use different buses for the counter. Use the internal counter */
+       uint32_t                                 busSelect:2;
+       /** What edges to flag on? */
+       uint32_t                                 edgeSelect:1;
+       /** Polarity of the channel */
+       uint32_t                                 edgePolarity:1;
+       /** EMIOS mode. 0x58 for buffered output PWM */
+       uint32_t                                 mode:7;
+} Pwm_ChannelRegisterType;
+
+typedef struct {
+       Pwm_ChannelRegisterType r;
+       Pwm_ChannelType channel;
+} Pwm_ChannelConfigurationType;
+
+
+typedef struct {
+       Pwm_ChannelConfigurationType Channels[PWM_NUMBER_OF_CHANNELS];
+#if PWM_NOTIFICATION_SUPPORTED==STD_ON
+       Pwm_NotificationHandlerType NotificationHandlers[PWM_NUMBER_OF_CHANNELS];
+#endif
+} Pwm_ConfigType;
+
+/** Channel configuration macro. */
+#define PWM_CHANNEL_CONFIG(_hwchannel, _period, _duty, _prescaler, _polarity) \
+    {\
+        .channel = _hwchannel,\
+        .r = {\
+            DUTY_AND_PERIOD(_duty, _period),\
+            .freezeEnable = 1,\
+            .outputDisable = 0,\
+            .usePrescaler = 1,\
+            .prescaler = _prescaler,\
+            .useDma = 0,\
+            .flagEnable = 0, /* See PWM052 */ \
+            .busSelect = 3, /* Use the internal counter bus */\
+            .edgePolarity = _polarity,\
+            .mode = PWM_EMIOS_OPWM\
+        }\
+    }
+
+#endif /* PWM_CFG_H_ */
+/** @} */
index a47eb049ccc90c5dd947e04e8e591406a420e2a4..4ff1c63628217bb0a9ab2506fdaec71ec1c5dda9 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup PduR PDU Router
+ *  @{ */
 
-
-
-
-
-
+/** @file PduR_Types.h
+ * Type definitions for PDU Router.
+ */
 
 #ifndef _PDUR_TYPES_H\r
 #define _PDUR_TYPES_H\r
 \r
 #include "ComStack_Types.h"\r
 \r
-/* PduR_StateType defines the states of which the PDU router can be in */\r
+/** PduR_StateType defines the states of which the PDU router can be in */
 typedef enum {\r
-       PDUR_UNINIT, // PDU Router is not initialized.\r
-       PDUR_ONLINE, // PDU Router initialized successfully.\r
-       PDUR_REDUCED // PDU Router initialization did not succeed. Only minimum routing is provided.\r
+       PDUR_UNINIT, /**< PDU Router is not initialized. */
+       PDUR_ONLINE, /**< PDU Router initialized successfully. */
+       PDUR_REDUCED /**< PDU Router initialization did not succeed. Only minimum routing is provided. */
 } PduR_StateType;\r
 \r
 typedef enum {\r
-       PDU_CNLDO, // Cancel transfer since data is outdated.\r
-       PDU_CNLNB, // Cancel transfer since buffer is full.\r
-       PDU_CNLOR  // Cancel transfer of another reason.\r
+       PDU_CNLDO, /**< Cancel transfer since data is outdated. */
+       PDU_CNLNB, /**< Cancel transfer since buffer is full. */
+       PDU_CNLOR  /**< Cancel transfer of another reason. */
 } PduR_CancelReasonType;\r
 \r
 typedef uint8 PduR_ParameterValueType;\r
 \r
 typedef enum {\r
-       PDUR_NO_PROVISION, // No data provision.\r
-       PDUR_TRIGGER_TRANSMIT, // Trigger transmit type.\r
-       PDUR_DIRECT // Data provision type.\r
+       PDUR_NO_PROVISION, /**< No data provision. */
+       PDUR_TRIGGER_TRANSMIT, /**< Trigger transmit type. */
+       PDUR_DIRECT /**< Data provision type. */
 } PduR_DataProvisionType;\r
 \r
 \r
@@ -60,13 +60,13 @@ typedef struct {
 \r
 /* ################ NEW DEFINITIONS ################### */\r
 typedef struct {\r
-       Std_ReturnType (*TargetIndicationFctPtr)(PduIdType, const uint8*); // Pointer to target function in layer above PDU router.\r
-       Std_ReturnType (*TargetTransmitFctPtr)(PduIdType, const PduInfoType*); // Pointer to target function below PDU router.\r
+       Std_ReturnType (*TargetIndicationFctPtr)(PduIdType, const uint8*); /**< Pointer to target function in layer above PDU router. */
+       Std_ReturnType (*TargetTransmitFctPtr)(PduIdType, const PduInfoType*); /**< Pointer to target function below PDU router. */
 \r
 \r
        void (*TargetConfirmationFctPtr)(PduIdType);\r
 \r
-       /*\r
+       /**
         * Target function for trigger transmit requests from the interface modules, e.g. Com_TriggerTransmit. Only\r
         * needed if gateway mode is not used, that is, if .DataProvision is set to PDUR_NO_PROVISION.\r
         */\r
@@ -91,12 +91,12 @@ typedef struct {
        // uint8 TxIdx; // This is the same as First, hence left out.\r
        uint8 *Buffer;\r
 \r
-       /*\r
+       /**
         * Depth of buffer
         */\r
        uint8 Depth;\r
 \r
-       /*\r
+       /**
         * Length of buffer
         */\r
        uint8 Length;\r
@@ -104,7 +104,7 @@ typedef struct {
 } PduRTxBuffer_type;\r
 \r
 typedef struct {\r
-       /*\r
+       /**
         * The maximum numbers of Tx buffers.
         */\r
        uint16 PduRMaxTxBufferNumber; // ???\r
@@ -113,12 +113,12 @@ typedef struct {
 } PduRTxBufferTable_type;\r
 \r
 typedef struct {\r
-       /*\r
+       /**
         * PDU identifier assigned by the PDU router.
         */\r
        uint16 HandleId;\r
 \r
-       /*\r
+       /**
         * Reference to unique PDU identifier.
         */\r
        // SrcPduRef\r
@@ -127,12 +127,12 @@ typedef struct {
 \r
 typedef struct {\r
 \r
-       /*\r
+       /**
         * Data provision mode for this PDU.
         */\r
        PduR_DataProvisionType DataProvision;\r
 \r
-       /*\r
+       /**
         * Reference to unique PDU identifier which shall\r
         * be used by the PDU router instead of the source identifier.
         */\r
@@ -140,7 +140,7 @@ typedef struct {
        // For the moment replaced by this\r
        uint16 DestPduId;\r
 \r
-       /*\r
+       /**
         * Reference to the assigned Tx buffer.\r
         *\r
         * Comment: Only required for non-TP gateway PDUs.
@@ -161,40 +161,40 @@ typedef struct {
 } PduRDefaultValue_type;\r
 \r
 typedef struct {\r
-       /*\r
+       /**
         * Not part of standard
         */\r
        PduR_FctPtrType *FctPtrs;\r
        uint8 PduR_Arc_EOL;\r
        uint8 PduR_GatewayMode;\r
 \r
-       /*\r
+       /**
         * Length of PDU data.\r
         *\r
         * Comment: Only required if a TX buffer is configured.
         */\r
        uint8 SduLength;\r
 \r
-       /*\r
+       /**
         * Chunk size for routing on the fly.\r
         *\r
         * Comment: Only required for TP gateway PDUs.
         */\r
        uint16 TpChunkSize;\r
 \r
-       /*\r
+       /**
         * Specifies the default value of the PDU.\r
         *\r
         * Comment: Only require for gateway operation.
         */\r
        PduRDefaultValue_type PduRDefaultValue;\r
 \r
-       /*\r
+       /**
         * Specifies the source of the PDU to be routed.
         */\r
        PduRSrcPdu_type PduRSrcPdu;\r
 \r
-       /*\r
+       /**
         * Specifies the destination(s) of the PDU to be routed.\r
         *\r
         * Comment: Multicast (many destinations) is not supported in this implementation.\r
@@ -209,7 +209,7 @@ typedef struct {
         */\r
        uint16 NRoutingPaths;\r
 \r
-       /*\r
+       /**
         * References to the routing paths defined for this configuration.
         */\r
        PduRRoutingPath_type PduRRoutingPath[];\r
@@ -218,25 +218,25 @@ typedef struct {
 \r
 \r
 typedef struct {\r
-       /*\r
+       /**
         * Unique configuration identifier.
         */\r
        uint8 PduRConfigurationId;\r
 \r
-       /*\r
+       /**
         * The routing table of this PDU router configuration.
         */\r
        PduRRoutingTable_type *PduRRoutingTable;\r
 \r
 \r
-       /*\r
+       /**
         * The buffers used for TP gateway operation.\r
         *\r
         * Comment: Not implemented in this version.
         */\r
        //PduRTpBufferTable_type PduRTpBufferTable;\r
 \r
-       /*\r
+       /**
         * The buffers used for non-TP gateway operation.
         */\r
        PduRTxBufferTable_type *PduRTxBufferTable;\r
@@ -244,3 +244,4 @@ typedef struct {
 } PduR_PBConfigType;\r
 \r
 #endif\r
+/** @} */
index 4f175b9e6f64c0ed32a4e9d66b8033bdb3ed9160..96d225e3e928b62ed777dfd4415ef6d2fe9a4379 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Adc ADC Driver
+ *  @{ */
+
+/** @file Adc.h
+ * API and type definitions for ADC Driver.
+ */
+
 #ifndef ADC_H_\r
 #define ADC_H_\r
 \r
@@ -28,7 +35,7 @@
 #define ADC_SW_MINOR_VERSION           0
 #define ADC_SW_PATCH_VERSION           0
 \r
-/* Std-type */\r
+/** Group status. */
 typedef enum\r
 {\r
   ADC_IDLE,\r
@@ -38,7 +45,7 @@ typedef enum
 }Adc_StatusType;\r
 \r
 \r
-/* Det error that the adc can produce. */\r
+/* DET errors that the ADC can produce. */
 typedef enum\r
 {\r
   ADC_E_UNINIT              = 0x0A,\r
@@ -53,7 +60,7 @@ typedef enum
   ADC_E_BUFFER_UNINIT       = 0x19\r
 }Adc_DetErrorType;\r
 \r
-/* API service ID's */\r
+/** API service ID's */
 typedef enum\r
 {\r
   ADC_INIT_ID = 0x00,\r
@@ -75,19 +82,21 @@ typedef enum
  * Std-types
  *
  */
+/** Access mode to group conversion results (Not supported). */
 typedef enum
 {
   ADC_ACCESS_MODE_SINGLE,
   ADC_ACCESS_MODE_STREAMING
 }Adc_GroupAccessModeType;
 
+/** Group trigger source (Not supported). */
 typedef enum
 {
   ADC_TRIGG_SRC_HW,
   ADC_TRIGG_SRC_SW,
 }Adc_TriggerSourceType;
 
-
+/** HW trigger edge (Not supported). */
 typedef enum
 {
   ADC_NO_HW_TRIG,
@@ -96,6 +105,7 @@ typedef enum
   ADC_HW_TRIG_RISING_EDGE,
 }Adc_HwTriggerSignalType;
 
+/** Stream buffer type (Not supported). */
 typedef enum
 {
   ADC_NO_STREAMING,
@@ -105,23 +115,34 @@ typedef enum
 
 #include "Adc_Cfg.h"
 \r
-/* Function interface. */\r
+/* Function interface. */
+/** Initializes the ADC hardware units and driver. */
 Std_ReturnType Adc_Init (const Adc_ConfigType *ConfigPtr);\r
-#if (ADC_DEINIT_API == STD_ON)\r
+#if (ADC_DEINIT_API == STD_ON)
+/** Returns all ADC HW Units to a state comparable to their power on reset state. */
 Std_ReturnType Adc_DeInit (const Adc_ConfigType *ConfigPtr);\r
-#endif\r
+#endif
+/** Sets up the result buffer for a group. */
 Std_ReturnType Adc_SetupResultBuffer (Adc_GroupType group, Adc_ValueGroupType *bufferPtr);\r
-#if (ADC_ENABLE_START_STOP_GROUP_API == STD_ON)\r
+#if (ADC_ENABLE_START_STOP_GROUP_API == STD_ON)
+/** Starts the conversion of all channels of the requested ADC Channel group. */
 void           Adc_StartGroupConversion (Adc_GroupType group);\r
 //void           Adc_StopGroupConversion (Adc_GroupType group);\r
 #endif\r
-#if (ADC_READ_GROUP_API == STD_ON)\r
+#if (ADC_READ_GROUP_API == STD_ON)
+/** Reads results from last conversion into buffer */
 Std_ReturnType Adc_ReadGroup (Adc_GroupType group, Adc_ValueGroupType *dataBufferPtr);\r
 #endif\r
-#if (ADC_GRP_NOTIF_CAPABILITY == STD_ON)\r
-void           Adc_EnableGroupNotification (Adc_GroupType group);\r
+#if (ADC_GRP_NOTIF_CAPABILITY == STD_ON)
+/** Enables the notification mechanism for the requested ADC Channel group. */
+void           Adc_EnableGroupNotification (Adc_GroupType group);
+/** Disables the notification mechanism for the requested ADC Channel group. */
 void           Adc_DisableGroupNotification (Adc_GroupType group);\r
-#endif\r
+#endif
+/** Returns the conversion status of the requested ADC Channel group. */
 Adc_StatusType Adc_GetGroupStatus (Adc_GroupType group);\r
 \r
-#endif /*ADC_H_*/\r
+#endif /*ADC_H_*/
+
+/** @} */
+
index 813e64182c393f60e9875230f41f8e31ec7f9e92..254e6f52a06447a407145a0792035e3e40690927 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup CanIf CAN Interface
+ *  @{ */
 
-
-
-
-
-
+/** @file CanIf_Types.h
+ *  Definitions of configuration parameters for CAN Interface.
+ */
 
 #ifndef CANIF_TYPES_H_
 #define CANIF_TYPES_H_
@@ -26,6 +26,8 @@
 #include "ComStack_Types.h"
 
 // API service with wrong parameter
+/** @name Error Codes */
+//@{
 #define CANIF_E_PARAM_CANID                  10 
 #define CANIF_E_PARAM_DLC                            11  
 #define CANIF_E_PARAM_HRH                            12 
 #define CANIF_TRCV_E_TRCV_NOT_NORMAL   70
 #define CANIF_E_INVALID_TXPDUID                    80
 #define CANIF_E_INVALID_RXPDUID                  90
+//@}
 
 typedef enum {
-       // UNINIT mode. Default mode of the CAN driver and all
-       // CAN controllers connected to one CAN network after
-       // power on.    
+       /** UNINIT mode. Default mode of the CAN driver and all
+        *  CAN controllers connected to one CAN network after
+        *  power on. */
        CANIF_CS_UNINIT = 0,
                                   
-       //  STOPPED mode. At least one of all CAN controllers   
-       //  connected to one CAN network are halted and does
-       //  not operate on the bus.
+       /**  STOPPED mode. At least one of all CAN controllers
+        *   connected to one CAN network are halted and does
+        *   not operate on the bus. */
        CANIF_CS_STOPPED,                                  
                                   
-       //      STARTED mode. All CAN controllers connected to         
-       //      one CAN network are started by the CAN driver and
-       //      in full-operational mode.
+       /** STARTED mode. All CAN controllers connected to
+        *  one CAN network are started by the CAN driver and
+        *  in full-operational mode. */
        CANIF_CS_STARTED,
        
-       //      SLEEP mode. At least one of all CAN controllers
-       //      connected to one CAN network are set into the
-       //      SLEEP mode and can be woken up by request of the
-       //      CAN driver or by a network event (must be supported
-       //      by CAN hardware)
+       /** SLEEP mode. At least one of all CAN controllers
+        *  connected to one CAN network are set into the
+        *  SLEEP mode and can be woken up by request of the
+        *  CAN driver or by a network event (must be supported
+        *  by CAN hardware) */
        CANIF_CS_SLEEP,
 } CanIf_ControllerModeType;
 
-// Status of the PDU channel group. Current mode of the channel defines its
-// transmit or receive activity. Communication direction (transmission and/or
-// reception) of the channel can be controlled separately or together by upper
-// layers.
+/** Status of the PDU channel group. Current mode of the channel defines its
+ *  transmit or receive activity. Communication direction (transmission and/or
+ *  reception) of the channel can be controlled separately or together by upper
+ *  layers. */
 typedef enum {
-       //      Channel shall be set to the offline mode
-       //      => no transmission and reception
+       /** Channel shall be set to the offline mode
+        *  => no transmission and reception */
        CANIF_SET_OFFLINE = 0,
        
-       //      Receive path of the corresponding channel
-       //      shall be disabled       
+       /** Receive path of the corresponding channel
+        *  shall be disabled */
        CANIF_SET_RX_OFFLINE,
 
-       //      Receive path of the corresponding channel
-       //      shall be enabled
+       /** Receive path of the corresponding channel
+        *  shall be enabled */
        CANIF_SET_RX_ONLINE,
        
-       //      Transmit path of the corresponding channel      
-       //      shall be disabled
+       /** Transmit path of the corresponding channel
+        *  shall be disabled */
        CANIF_SET_TX_OFFLINE,
        
-       //      Transmit path of the corresponding channel
-       //      shall be enabled
+       /** Transmit path of the corresponding channel
+        *  shall be enabled */
        CANIF_SET_TX_ONLINE,
        
-       //      Channel shall be set to online mode     
-       //      => full operation mode
+       /** Channel shall be set to online mode
+        *  => full operation mode */
        CANIF_SET_ONLINE,
        
-       //      Transmit path of the corresponding channel      
-       //      shall be set to the offline active mode
-       //      => notifications are processed but transmit
-       //      requests are blocked.
+       /** Transmit path of the corresponding channel
+        *  shall be set to the offline active mode
+        *  => notifications are processed but transmit
+        *  requests are blocked. */
        CANIF_SET_TX_OFFLINE_ACTIVE,
 } CanIf_ChannelSetModeType;
 
 
 typedef enum {
-       // Channel is in the offline mode ==> no transmission or reception
+       /** Channel is in the offline mode ==> no transmission or reception */
   CANIF_GET_OFFLINE = 0,
-  // Receive path of the corresponding channel is enabled and 
-  // transmit path is disabled
+  /** Receive path of the corresponding channel is enabled and
+   *  transmit path is disabled */
   CANIF_GET_RX_ONLINE,
-  // Transmit path of the corresponding channel is enabled and
-  // receive path is disabled
+  /** Transmit path of the corresponding channel is enabled and
+   *  receive path is disabled */
   CANIF_GET_TX_ONLINE,
-  // Channel is in the online mode ==> full operation mode
+  /** Channel is in the online mode ==> full operation mode */
   CANIF_GET_ONLINE,
-  // Transmit path of the corresponding channel is in
-  // the offline mode ==> transmit notifications are processed but
-  // transmit requests are blocked. The receiver path is disabled.
+  /** Transmit path of the corresponding channel is in
+   *  the offline mode ==> transmit notifications are processed but
+   *  transmit requests are blocked. The receiver path is disabled. */
   CANIF_GET_OFFLINE_ACTIVE,
-  // Transmit path of the corresponding channel is in the offline
-  // active mode ==> transmit notifications are processed but transmit
-  // requests are blocked. The receive path is enabled.
+  /** Transmit path of the corresponding channel is in the offline
+   *  active mode ==> transmit notifications are processed but transmit
+   *  requests are blocked. The receive path is enabled. */
   CANIF_GET_OFFLINE_ACTIVE_RX_ONLINE
        
 } CanIf_ChannelGetModeType;
 
 typedef enum {
-       //      No transmit or receive event occurred for
-       //      the requested L-PDU.
+       /** No transmit or receive event occurred for
+        *  the requested L-PDU. */
        CANIF_NO_NOTIFICATION = 0,      
-       //      The requested Rx/Tx CAN L-PDU was
-       //      successfully transmitted or received.
+       /** The requested Rx/Tx CAN L-PDU was
+        *  successfully transmitted or received. */
        CANIF_TX_RX_NOTIFICATION,
        
 } CanIf_NotifStatusType;
 
 typedef enum {
-       // Transceiver mode NORMAL
+       /** Transceiver mode NORMAL */
   CANIF_TRCV_MODE_NORMAL = 0,
-  // Transceiver mode STANDBY
+  /** Transceiver mode STANDBY */
   CANIF_TRCV_MODE_STANDBY,
-  //Transceiver mode SLEEP
+  /** Transceiver mode SLEEP */
   CANIF_TRCV_MODE_SLEEP
 } CanIf_TransceiverModeType;
 
 typedef enum {
-  // Due to an error wake up reason was not detected.
-  // This value may only be reported when error was
-  // reported to DEM before.
+  /** Due to an error wake up reason was not detected.
+   *  This value may only be reported when error was
+   *  reported to DEM before. */
        CANIF_TRCV_WU_ERROR = 0,
-       // The transceiver does not support any information
-       // for the wakeup reason.
+       /** The transceiver does not support any information
+        *  for the wakeup reason. */
        CANIF_TRCV_WU_NOT_SUPPORTED,
-       // The transceiver has detected, that the network has
-       // caused the wake up of the ECU
+       /** The transceiver has detected, that the network has
+        *  caused the wake up of the ECU */
        CANIF_TRCV_WU_BY_BUS,
-       // The transceiver detected, that the network has woken
-       // the ECU via a request to NORMAL mode
+       /** The transceiver detected, that the network has woken
+        *  the ECU via a request to NORMAL mode */
        CANIF_TRCV_WU_INTERNALLY,
-       // The transceiver has detected, that the "wake up"
-       // is due to an ECU reset
+       /** The transceiver has detected, that the "wake up"
+        *  is due to an ECU reset */
        CANIF_TRCV_WU_RESET,
-       // The transceiver has detected, that the "wake up"
-       // is due to an ECU reset after power on.
+       /** The transceiver has detected, that the "wake up"
+        *  is due to an ECU reset after power on. */
        CANIF_TRCV_WU_POWER_ON
 } CanIf_TrcvWakeupReasonType;
 
 typedef enum {
-  // The notification for wakeup events is enabled
-  // on the addressed network.
+  /** The notification for wakeup events is enabled
+   *  on the addressed network. */
        CANIF_TRCV_WU_ENABLE = 0,
-       // The notification for wakeup events is disabled
-       // on the addressed network.
+       /** The notification for wakeup events is disabled
+        *  on the addressed network. */
        CANIF_TRCV_WU_DISABLE,
-       // A stored wakeup event is cleared on the addressed network
+       /** A stored wakeup event is cleared on the addressed network */
        CANIF_TRCV_WU_CLEAR
 } CanIf_TrcvWakeupModeType;
 
 #endif /*CANIF_TYPES_H_*/
+/** @} */
index 062623c1a10fadb1d4966c9aa3803d0097d8d213..77a0176ba96b387c924397a9aad4405c380300a0 100644 (file)
 
 
 
+/** @addtogroup Com COM module
+ *  @{ */
 
-
-
+/** @file Com_Types.h
+ * Definitions of configuration types and parameters for the COM module.
+ */
 
 
 #ifndef COM_TYPES_H_\r
@@ -111,532 +114,292 @@ typedef enum {
        type == SINT16  ? sizeof(sint16) : \\r
        type == SINT32  ? sizeof(sint32) : sizeof(boolean)) \\r
 \r
-\r
-typedef struct {\r
-       ComFilterAlgorithm_type ComFilterAlgorithm;\r
-       uint32 ComFilterMask;\r
-       uint32 ComFilterMax;\r
-       uint32 ComFilterMin;\r
+/** Filter configuration type.
+ * NOT SUPPORTED
+ */
+typedef struct {
+       /** The algorithm that this filter uses. */
+       ComFilterAlgorithm_type ComFilterAlgorithm;
+       /** Filter mask. */
+       uint32 ComFilterMask;
+       /** Max value for filter. */
+       uint32 ComFilterMax;
+       /** Min value for filter. */
+       uint32 ComFilterMin;
+       /** Offset for filter. */
        uint32 ComFilterOffset;\r
        uint32 ComFilterPeriodFactor;\r
        uint32 ComFilterX;\r
-\r
-\r
        uint32 ComFilterArcN;\r
        uint32 ComFilterArcNewValue;\r
        uint32 ComFilterArcOldValue;\r
 \r
 } ComFilter_type;\r
 \r
-\r
+/** Configuration structure for group signals */
 typedef struct {\r
-       /* Starting position (bit) of the signal within the IPDU.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        *\r
-        * Comment: Range 0 to 63.\r
+       /** Starting position (bit) of the signal within the IPDU.
+        * Range 0 to 63.
         */\r
        const uint8 ComBitPosition;\r
 \r
-       /* The size of the signal in bits.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        *\r
-        * Comment: Range 0 to 64.\r
+       /** The size of the signal in bits.
+        * Range 0 to 64.
         */\r
        const uint8 ComBitSize;\r
 \r
-       /* Identifier for the signal.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        *\r
-        * Comment: Should be the same value as the index in the COM signal array.\r
+       /** Identifier for the signal.
+        * Should be the same value as the index in the COM signal array.
         */\r
        const uint8 ComHandleId;\r
 \r
-       /* Callback function used when an invalid signal is received.\r
-        *\r
-        * Context:\r
-        *   - Receive.\r
-        *   - Not required.\r
-        */\r
-       // ComInvalidNotification;\r
-\r
-       /*\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Not required.\r
-        */\r
-       //uint8 ComSignalDataInvalidValue;\r
-\r
-       /* Defines the endianess of the signal's network representation.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        */\r
+       /** Defines the endianess of the signal's network representation. */
        const ComSignalEndianess_type ComSignalEndianess;\r
 \r
-       /*\r
-        * Value used to initialized this signal.\r
-        *\r
-        * Context:\r
-        *   - Send\r
-        *   - Required\r
-        */\r
+       /** Value used to initialize this signal. */
        const uint32 ComSignalInitValue;\r
 \r
-       /* The number of bytes if the signal has type UINT8_N;\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required if type of signal is UINT8_N\r
-        *\r
-        * Comment: Range 1 to 8.\r
+       /** The number of bytes if the signal has type UINT8_N;
+        * Range 1 to 8.
         */\r
        const uint8 ComSignalLength;\r
 \r
-       /* Defines the type of the signal\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        */\r
+       /** Defines the type of the signal. */
        const Com_SignalType ComSignalType;\r
 \r
 \r
-       /* Filter for this signal\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required.\r
+       /** Filter for this signal.
+        * NOT SUPPORTED
         */\r
        const ComFilter_type ComFilter;\r
 \r
        /* Pointer to the shadow buffer of the signal group that this group signal is contained in.\r
         *\r
-        * Comment: This is initialized by Com_Init() and should not be configured.\r
+        * This is initialized by Com_Init() and should not be configured.
         */\r
        //void *Com_Arc_ShadowBuffer;\r
-\r
+
+       /* Callback function used when an invalid signal is received. */
+       // ComInvalidNotification;
+       //uint8 ComSignalDataInvalidValue;
 \r
        /* IPDU id of the IPDU that this signal belongs to.\r
         *\r
-        * Comment: This is initialized by Com_Init() and should not be configured.\r
+        * This is initialized by Com_Init() and should not be configured.
         */\r
 \r
        //const uint8 ComIPduHandleId;\r
        //const uint8 ComSignalUpdated;\r
-\r
+
+       /** Marks the end of list for the configuration array. */
        const uint8 Com_Arc_EOL;\r
 } ComGroupSignal_type;\r
-\r
+
+
+/** Configuration structure for signals and signal groups. */
 typedef struct {\r
 \r
-       /* Starting position (bit) of the signal within the IPDU.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        *\r
-        * Comment: Range 0 to 63.
+       /** Starting position (bit) of the signal within the IPDU.
+        * Range 0 to 63.
         */\r
        const uint8 ComBitPosition;\r
 \r
-       /* The size of the signal in bits.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        *\r
-        * Comment: Range 0 to 64.
+       /** The size of the signal in bits.
+        * Range 0 to 63.
         */\r
        const uint8 ComBitSize;\r
 \r
-\r
-       /* Action to be taken if an invalid signal is received.\r
-        *\r
-        * Context:\r
-        *   -
-        */\r
-       // ComDataInvalidAction;\r
-\r
-       /* Notification function for error notification.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Not required.\r
-        *
-        */\r
+       /** Notification function for error notification. */
        void (*ComErrorNotification) (void);\r
 \r
-       /* First timeout period for deadline monitoring.\r
-        *\r
-        * Context:\r
-        *   - Receive\r
-        *   - Not required.
-        */\r
+       /** First timeout period for deadline monitoring. */
        const uint32 ComFirstTimeoutFactor;\r
 \r
-       /* Identifier for the signal.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        *\r
-        * Comment: Should be the same value as the index in the COM signal array.
+       /** Identifier for the signal.
+        * Should be the same value as the index in the COM signal array.
         */\r
        const uint8 ComHandleId;\r
 \r
-       /* Callback function used when an invalid signal is received.\r
-        *\r
-        * Context:\r
-        *   - Receive.\r
-        *   - Not required.
-        */\r
-       // ComInvalidNotification;\r
-\r
-       /* Tx and Rx notification function.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Not required.
-        */\r
+       /** Tx and Rx notification function. */
        void (*ComNotification) (void);\r
 \r
-       /* Action to be performed when a reception timeout occurs.\r
-        *\r
-        * Context:\r
-        *   - Receive.\r
-        *   - Required.
-        */\r
+       /** Action to be performed when a reception timeout occurs. */
        const ComRxDataTimeoutAction_type ComRxDataTimeoutAction;\r
 \r
-       /*\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Not required.
-        */\r
-       //uint8 ComSignalDataInvalidValue;\r
-\r
-       /* Defines the endianess of the signal's network representation.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.
-        */\r
+       /** Defines the endianess of the signal's network representation. */
        const ComSignalEndianess_type ComSignalEndianess;\r
 \r
-       /*\r
-        * Value used to initialized this signal.\r
-        *\r
-        * Context:\r
-        *   - Send\r
-        *   - Required
-        */\r
+       /** Value used to initialized this signal. */
        const uint32 ComSignalInitValue;\r
 \r
-       /* The number of bytes if the signal has type UINT8_N;\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required if type of signal is UINT8_N\r
-        *\r
-        * Comment: Range 1 to 8.
+       /** The number of bytes if the signal has type UINT8_N;
+        * Range 1 to 8.
         */\r
        const uint8 ComSignalLength;\r
 \r
-       /* Defines the type of the signal\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.
-        */\r
+       /** Defines the type of the signal. */
        const Com_SignalType ComSignalType;\r
 \r
-       /* Timeout period for deadline monitoring.\r
-        *\r
-        * Context:\r
-        *   - Receive\r
-        *   - Not required.\r
-        */\r
-       //const uint32 Com_Arc_DeadlineCounter;\r
+       /** Timeout period for deadline monitoring. */
        const uint32 ComTimeoutFactor;\r
 \r
-       /* Timeout notification function\r
-        *\r
-        * Context:\r
-        *   - Receive and send\r
-        *   - Not required.\r
-        */\r
+       /** Timeout notification function. */
        void (*ComTimeoutNotification) (void);\r
 \r
        const ComTransferProperty_type ComTransferProperty;\r
 \r
-       /*\r
-        * The bit position in the PDU for this signals update bit.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Not required.\r
-        *\r
-        * Comment: Range 0 to 63. If update bit is used for this signal, then the corresponding parameter ComSignalArcUseUpdateBit\r
-        *          needs to be set to one.
+       /** The bit position in the PDU for this signal's update bit.
+        * Range 0 to 63.
+        * Only applicable if an update bit is used. NULL otherwise.
         */\r
-       const uint8 ComUpdateBitPosition;\r
+       const uint8 ComUpdateBitPosition;
+
+       /** Marks if this signal uses an update bit.
+        * Should be set to one if an update bit is used.
+        */
        const uint8 ComSignalArcUseUpdateBit;\r
 \r
-       /* Filter for this signal\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required.
+       /** Filter for this signal.
+        * NOT SUPPORTED.
         */\r
        const ComFilter_type ComFilter;\r
 \r
-\r
-       /**** SIGNAL GROUP DATA ****/\r
-       const uint8 Com_Arc_IsSignalGroup;\r
+       /** Marks if this signal is a signal group.
+        * Should be set to 1 if the signal is a signal group.
+        */
+       const uint8 Com_Arc_IsSignalGroup;
+
+       /** Array of group signals.
+        * Only applicable if this signal is a signal group.
+        */
        const ComGroupSignal_type *ComGroupSignal[COM_MAX_NR_SIGNALS_PER_SIGNAL_GROUP];\r
+
+
        //void *Com_Arc_ShadowBuffer;\r
        //void *Com_Arc_IPduDataPtr;\r
 \r
-\r
        /* Pointer to the data storage of this signals IPDU.\r
-        *\r
-        * Comment: This is initialized by Com_Init() and should not be configured.
+        * This is initialized by Com_Init() and should not be configured.
         */\r
        //const void *ComIPduDataPtr;\r
 \r
        /* IPDU id of the IPDU that this signal belongs to.\r
-        *\r
-        * Comment: This is initialized by Com_Init() and should not be configured.\r
+        * This is initialized by Com_Init() and should not be configured.
         */\r
 \r
        //const uint8 ComIPduHandleId;\r
        //const uint8 ComSignalUpdated;\r
-\r
-\r
+
+       /* Callback function used when an invalid signal is received.
+        */
+       // ComInvalidNotification;
+
+       //uint8 ComSignalDataInvalidValue;
+
+       /* Action to be taken if an invalid signal is received.
+        */
+       // ComDataInvalidAction;
+
+       /** Marks the end of list for the signal configuration array. */
        const uint8 Com_Arc_EOL;\r
 } ComSignal_type;\r
+
+
 \r
+/** Configuration structure for Tx-mode for I-PDUs. */
+typedef struct {
 \r
-typedef struct {\r
-       /* Transmission mode for this IPdu.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required.
-        */\r
+       /** Transmission mode for this IPdu. */
        const ComTxModeMode_type ComTxModeMode;\r
 \r
-       /* Defines the number of times this IPdu will be sent in each IPdu cycle.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required for transmission modes DIRECT/N-times and MIXED.\r
-        *\r
-        * Comment: Should be set to 0 for DIRECT transmission mode and >0 for DIRECT/N-times mode.
+       /** Defines the number of times this IPdu will be sent in each IPdu cycle.
+        * Should be set to 0 for DIRECT transmission mode and >0 for DIRECT/N-times mode.
         */\r
        const uint8 ComTxModeNumberOfRepetitions;\r
 \r
-       /* Defines the period of the transmissions in DIRECT/N-times and MIXED\r
-        * transmission modes.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required for DIRECT/N-times and MIXED transmission modes.
-        */\r
+       /** Defines the period of the transmissions in DIRECT/N-times and MIXED transmission modes. */
        const uint32 ComTxModeRepetitionPeriodFactor;\r
 \r
-       /* Time before first transmission of this IPDU. (i.e. between the ipdu group start\r
-        * and this IPDU is sent for the first time.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required for all transmission modes except NONE.
-        */\r
+       /** Time before first transmission of this IPDU. (i.e. between the ipdu group start and this IPDU is sent for the first time. */
        const uint32 ComTxModeTimeOffsetFactor;\r
 \r
-       /* Period of cyclic transmission.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required for CYCLIC and MIXED transmission mode.
-        */\r
+       /** Period of cyclic transmission. */
        const uint32 ComTxModeTimePeriodFactor;\r
 } ComTxMode_type;\r
 \r
-\r
+/** Extra configuration structure for Tx I-PDUs. */
 typedef struct {\r
 \r
-       /* Minimum delay between successive transmissions of the IPdu.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Not required.
-        */\r
+       /** Minimum delay between successive transmissions of the IPdu. */
        const uint32 ComTxIPduMinimumDelayFactor;\r
 \r
-       /* COM will fill unused areas within an IPdu with this bit patter.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Required.
+       /** COM will fill unused areas within an IPdu with this bit patter.
         */\r
        const uint8 ComTxIPduUnusedAreasDefault;\r
 \r
-       /* Transmission modes for this IPdu.\r
-        *\r
-        * Context:\r
-        *   - Send.\r
-        *   - Not required.\r
-        *\r
-        * Comment: TMS is not implemented so only one static transmission\r
-        *          mode is supported.
+       /** Transmission modes for the IPdu.
+        * TMS is not implemented so only one static transmission mode is supported.
         */\r
        const ComTxMode_type ComTxModeTrue;\r
+
        //ComTxMode_type ComTxModeFalse;\r
+} ComTxIPdu_type;
+
 \r
-} ComTxIPdu_type;\r
-\r
-/*\r
-typedef struct {\r
-       uint8  ComTxIPduNumberOfRepetitionsLeft;\r
-       uint32 ComTxModeRepetitionPeriodTimer;\r
-       uint32 ComTxIPduMinimumDelayTimer;\r
-       uint32 ComTxModeTimePeriodTimer;\r
-} ComTxIPduTimer_type;\r
-*/\r
-\r
+/** Configuration structure for I-PDU groups */
 typedef struct ComIPduGroup_type {\r
-       // ID of this group. 0-31.\r
+       /** ID of this group.
+        * Range 0 to 31.
+        */
        const uint8 ComIPduGroupHandleId;\r
 \r
        // reference to the group that this group possibly belongs to.\r
        //struct ComIPduGroup_type *ComIPduGroupRef;\r
-\r
+
+       /** Marks the end of list for the I-PDU group configuration array. */
        const uint8 Com_Arc_EOL;\r
 } ComIPduGroup_type;\r
 \r
-\r
+
+/** Configuration structure for an I-PDU. */
 typedef struct {\r
 \r
-       /* Callout function of this IPDU.\r
+       /** Callout function of this IPDU.
         * The callout function is an optional function used both on sender and receiver side.\r
         * If configured, it determines whether an IPdu is considered for further processing. If\r
         * the callout return false the IPdu will not be received/sent.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Not required.
         */\r
        boolean (*ComIPduCallout)(PduIdType PduId, const uint8 *IPduData);\r
 \r
 \r
-       /* The ID of this IPDU.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.\r
-        *\r
-        * Comment:
-        */\r
+       /** The ID of this IPDU. */
        const uint8 ComIPduRxHandleId;\r
 \r
-       /* Signal processing mode for this IPDU.\r
-        *\r
-        * Context:\r
-        *   - Receive.\r
-        *   - Required.
-        */\r
+       /** Signal processing mode for this IPDU. */
        const Com_IPduSignalProcessingMode ComIPduSignalProcessing;\r
 \r
-       /* Size of the IPDU in bytes. 0-8 for CAN and LIN and 0-256 for FlexRay.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.
+       /** Size of the IPDU in bytes.
+        * Range 0-8 for CAN and LIN and 0-256 for FlexRay.
         */\r
        const uint8 ComIPduSize;\r
 \r
-       /* The direction of the IPDU. Receive or Send.\r
-        *\r
-        * Context:\r
-        *   - Receive or send.\r
-        *   - Required.
-        */\r
+       /** The direction of the IPDU. Receive or Send. */
        const Com_IPduDirection ComIPduDirection;\r
 \r
-       /* Reference to the IPDU group that this IPDU belongs to.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Required.
-        */\r
+       /** Reference to the IPDU group that this IPDU belongs to. */
        const uint8 ComIPduGroupRef;\r
 \r
-       /* Reference to global PDU structure. ???\r
-        *\r
-        * No global PDU structure defined so this variable is left out.
-        */\r
-       // PduIdRef\r
-\r
-       /* Container of transmission related parameters.\r
-        *\r
-        * Context:\r
-        *       - Send\r
-        *   - Required.
-        */\r
+       /** Container of transmission related parameters. */
        const ComTxIPdu_type ComTxIPdu;\r
 \r
-       /* Transmission related timers and parameters.\r
-        *\r
-        * Context:\r
-        *   - Send\r
-        *   - Not required.\r
-        *   - Not part of the AUTOSAR standard.\r
-        *\r
-        * Comment: These are internal variables and should not be configured.
-        */\r
-       //ComTxIPduTimer_type Com_Arc_TxIPduTimers;\r
-\r
-       /* Pointer to data storage of this IPDU.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *\r
-        * Comment: this memory will be initialized dynamically in Com_Init();
+       /** References to all signal groups contained in this IPDU.
+        * It probably makes little sense not to define at least one signal or signal group for each IPDU.
         */\r
-       //void *ComIPduDataPtr;\r
-\r
-       /* References to all signals contained in this IPDU.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Not required.\r
-        *\r
-        * Comment: It probably makes little sense not to define at least one signal for each IPDU.\r
-        */\r
-       //const uint8 Com_Arc_NIPduSignalGroupRef;\r
        const ComSignal_type *ComIPduSignalGroupRef[COM_MAX_NR_SIGNALS_PER_IPDU];\r
 \r
 \r
-       /* References to all signals contained in this IPDU.\r
-        *\r
-        * Context:\r
-        *   - Send and receive.\r
-        *   - Not required.\r
-        *\r
-        * Comment: It probably makes little sense not to define at least one signal for each IPDU.\r
+       /** References to all signals contained in this IPDU.
+        * It probably makes little sense not to define at least one signal or signal group for each IPDU.
         */\r
        //const uint8 NComIPduSignalRef;\r
        const ComSignal_type *ComIPduSignalRef[COM_MAX_NR_SIGNALS_PER_IPDU];\r
@@ -645,17 +408,28 @@ typedef struct {
         * The following two variables are used to control the per I-PDU based Rx/Tx-deadline monitoring.\r
         */\r
        //const uint32 Com_Arc_DeadlineCounter;\r
-       //const uint32 Com_Arc_TimeoutFactor;\r
+       //const uint32 Com_Arc_TimeoutFactor;
+
+       /* Transmission related timers and parameters.
+        * These are internal variables and should not be configured.
+        */
+       //ComTxIPduTimer_type Com_Arc_TxIPduTimers;
+
+       /* Pointer to data storage of this IPDU.
+        */
+       //void *ComIPduDataPtr;
 \r
+
+       /** Marks the end of list for this configuration array. */
        const uint8 Com_Arc_EOL;\r
 \r
 } ComIPdu_type;\r
 \r
 \r
-// Contains configuration specific configuration parameters. Exists once per configuration.\r
+/** Top-level configuration container for COM. Exists once per configuration. */
 typedef struct {\r
 \r
-       // The ID of this configuration. This is returned by Com_GetConfigurationId();\r
+       /** The ID of this configuration. This is returned by Com_GetConfigurationId(); */
        const uint8 ComConfigurationId;\r
 \r
        /*\r
@@ -664,23 +438,24 @@ typedef struct {
        ComGwMapping_type ComGwMapping[];\r
         */\r
 \r
-       // IPDU definitions. At least one\r
+       /** IPDU definitions */
        const ComIPdu_type *ComIPdu;\r
 \r
        //uint16 Com_Arc_NIPdu;\r
 \r
-       // IPDU group definitions\r
+       /** IPDU group definitions */
        const ComIPduGroup_type *ComIPduGroup;\r
 \r
-       // Signal definitions\r
+       /** Signal definitions */
        const ComSignal_type *ComSignal;\r
 \r
        // Signal group definitions\r
        //ComSignalGroup_type *ComSignalGroup;\r
 \r
-       // Group signal definitions\r
+       /** Group signal definitions */
        const ComGroupSignal_type *ComGroupSignal;\r
 \r
 } Com_ConfigType;\r
 \r
-#endif /*COM_TYPES_H_*/\r
+#endif /*COM_TYPES_H_*/
+/** @} */
index faa58ec3045e41d75d90374bb6da49e11aa57805..75143ecad8c231b458c8d28f9db41216b1b6c2f1 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup EcuM ECU State Manager
+ *  @{ */
 
-
-
-
-
-
+/** @file EcuM.h
+ * API and type definitions for ECU State Manager.
+ */
 
 #ifndef ECUM_H_\r
 #define ECUM_H_\r
@@ -29,7 +29,8 @@
 #include "ComStack_Types.h"\r
 #endif\r
 \r
-// Error codes produced by this module\r
+/** @name Error Codes */
+//@{
 #define ECUM_E_NOT_INITIATED (0x10)\r
 #define ECUM_E_SERVICE_DISABLED (0x11)\r
 #define ECUM_E_NULL_POINTER (0x12)\r
 #define ECUM_E_MISMATCHED_RUN_RELEASE (0x15)\r
 #define ECUM_E_STATE_PAR_OUT_OF_RANGE (0x16)\r
 #define ECUM_E_UNKNOWN_WAKEUP_SOURCE (0x17)\r
-\r
-// Service ID in this module\r
+//@}
+
+/** @name Service id's */
+//@{
 #define ECUM_GETSTATE_ID (0x07)\r
 #define ECUM_SELECTAPPMODE_ID (0x0f)\r
 #define ECUM_GETAPPMODE_ID (0x11)\r
 #define ECUM_SELECT_BOOTARGET_ID (0x12)\r
 #define ECUM_GET_BOOTARGET_ID (0x13)\r
 #define ECUM_MAINFUNCTION_ID (0x18)\r
-\r
+
+/** Possible states */
 typedef enum {\r
        ECUM_STATE_APP_RUN = 0x32,\r
        ECUM_STATE_SHUTDOWN = 0x40,\r
@@ -75,32 +79,32 @@ typedef enum {
 typedef uint8 EcuM_UserType;\r
 \r
 enum {\r
-       //      Internal reset of ÂµC (bit 2)\r
-       //      The internal reset typically only resets the ÂµC\r
-       //      core but not peripherals or memory\r
-       //      controllers. The exact behavior is hardware\r
-       //      specific.\r
-       //      This source may also indicate an unhandled\r
-       //      exception.\r
+       /** Internal reset of ÂµC (bit 2).
+        *  The internal reset typically only resets the ÂµC
+        *  core but not peripherals or memory
+        *  controllers. The exact behavior is hardware
+        *  specific.
+        *  This source may also indicate an unhandled
+        *  exception. */
        ECUM_WKSOURCE_INTERNAL_RESET = 0x04,\r
 \r
-       //      Reset by external watchdog (bit 4), if\r
-       //      detection supported by hardware\r
+       /** Reset by external watchdog (bit 4), if
+        *  detection supported by hardware */
        ECUM_WKSOURCE_EXTERNAL_WDG = 0x10,\r
 \r
-       // Reset by internal watchdog (bit 3)\r
+       /** Reset by internal watchdog (bit 3) */
        ECUM_WKSOURCE_INTERNAL_WDG = 0x08,\r
 \r
-       // Power cycle (bit 0)\r
+       /** Power cycle (bit 0) */
        ECUM_WKSOURCE_POWER = 0x01,\r
 \r
-       // ~0 to the power of 29\r
+       /** ~0 to the power of 29 */
        ECUM_WKSOURCE_ALL_SOURCES = 0x3FFFFFFF,\r
 \r
-       // Hardware reset (bit 1).\r
-       // If hardware cannot distinguish between a\r
-       // power cycle and a reset reason, then this\r
-       // shall be the default wakeup source\r
+       /** Hardware reset (bit 1).
+        *  If hardware cannot distinguish between a
+        *  power cycle and a reset reason, then this
+        *  shall be the default wakeup source */
        ECUM_WKSOURCE_RESET = 0x02,\r
 };\r
 \r
@@ -108,23 +112,23 @@ typedef uint32 EcuM_WakeupSourceType;
 \r
 typedef enum\r
 {\r
-       ECUM_WKSTATUS_NONE = 0, // No pending wakeup event was detected\r
-       ECUM_WKSTATUS_PENDING = 1, // The wakeup event was detected but not yet validated\r
-       ECUM_WKSTATUS_VALIDATED = 2, // The wakeup event is valid\r
-       ECUM_WKSTATUS_EXPIRED = 3, // The wakeup event has not been validated and has expired therefore\r
+       ECUM_WKSTATUS_NONE = 0,        /**< No pending wakeup event was detected */
+       ECUM_WKSTATUS_PENDING = 1,     /**< The wakeup event was detected but not yet validated */
+       ECUM_WKSTATUS_VALIDATED = 2,   /**< The wakeup event is valid */
+       ECUM_WKSTATUS_EXPIRED = 3,     /**< The wakeup event has not been validated and has expired therefore */
 } EcuM_WakeupStatusType;\r
 \r
 typedef enum\r
 {\r
-       ECUM_WWKACT_RUN = 0, // Initialization into RUN state\r
-       ECUM_WKACT_TTII = 2, // Execute time triggered increased inoperation protocol and shutdown\r
-       ECUM_WKACT_SHUTDOWN = 3, // Immediate shutdown\r
+       ECUM_WWKACT_RUN = 0,       /**< Initialization into RUN state */
+       ECUM_WKACT_TTII = 2,       /**< Execute time triggered increased inoperation protocol and shutdown */
+       ECUM_WKACT_SHUTDOWN = 3,   /**< Immediate shutdown */
 } EcuM_WakeupReactionType;\r
 \r
 typedef enum\r
 {\r
-       ECUM_BOOT_TARGET_APP = 0, // The Ecu will boot into the application\r
-       ECUM_BOOT_TARGET_BOOTLOADER = 1, // The Ecu will boot into the bootloader\r
+       ECUM_BOOT_TARGET_APP = 0,          /**< The Ecu will boot into the application */
+       ECUM_BOOT_TARGET_BOOTLOADER = 1,   /**< The Ecu will boot into the bootloader */
 } EcuM_BootTargetType;\r
 
 
@@ -184,3 +188,4 @@ void EcuM_OnGoOffTwo( void );
 void EcuM_AL_SwitchOff( void );\r
 \r
 #endif /*ECUM_H_*/\r
+/** @} */
index 22405178c3c2e471d7553dd116a23e3279f85671..f538b97170aa604450523c3c16290262e05cb756 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Gpt GPT Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Gpt.h
+ * API and type definitions for GPT Driver.
+ */
 
 #ifndef GPT_H_
 #define GPT_H_
@@ -26,7 +26,8 @@
 #include "Std_Types.h"
 //#include "EcuM.h"  mahi: What for ???
 
-/* ERROR CODES */
+/** @name Error Codes */
+//@{
 #define GPT_E_UNINIT                        0x0a
 #define GPT_E_BUSY                                               0x0b
 #define GPT_E_NOT_STARTED                                  0x0c
 #define GPT_E_PARAM_VALUE                                  0x15
 #define GPT_E_PARAM_MODE                                     0x1f
 #define GPT_E_PARAM_CONFIG                  0x0e // TODO: Not in spec. Find real value
+//@}
 
-/* SERVICE_ID's */
+/** @name Service id's */
+//@{
 #define GPT_INIT_SERVICE_ID                 0x01
 #define GPT_DEINIT_SERVICE_ID               0x02
 #define GPT_GETTIMEELAPSED_SERVICE_ID       0x03
 #define GPT_DISABLEWAKEUP_SERVICE_ID        0x0a
 #define GPT_ENABLEWAKEUP_SERVICE_ID         0x0b
 #define GPT_CBK_CHECKWAKEUP_SERVICE_ID      0x0c
+//@}
 
+/** Channel id type */
 typedef uint8_t Gpt_ChannelType;
 
+/** Channel time value type */
 typedef uint32_t Gpt_ValueType;
 
+/** Channel behavior */
 typedef enum
 {
   GPT_MODE_ONESHOT=0,
@@ -119,3 +126,4 @@ void Gpt_Cbk_CheckWakeup( EcuM_WakeupSourceType wakeupSource );
 #endif
 
 #endif /*GPT_H_*/
+/** @} */
index 04401d1dbd7f3746d39c00c9229ea66bb92df5b4..4d50c91ce7bdd0380056c312574a17c8662f1d33 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Lin LIN Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Lin.h
+ * API and type definitions for LIN Driver.
+ */
 
 #ifndef LIN_H_\r
 #define LIN_H_\r
@@ -47,34 +47,34 @@ void Lin_GetVersionInfo( Std_VersionInfoType *versionInfo );
 typedef struct {\r
 } Lin_ConfigType;\r
 \r
-/* Represents all valid protected Identifier used by Lin_SendHeader(). */\r
+/** Represents all valid protected Identifier used by Lin_SendHeader(). */
 typedef uint8 Lin_FramePidType;\r
 \r
-/* This type is used to specify the Checksum model to be used for the LIN Frame. */\r
+/** This type is used to specify the Checksum model to be used for the LIN Frame. */
 typedef enum {\r
        LIN_ENHANCED_CS,\r
        LIN_CLASSIC_CS,\r
 } Lin_FrameCsModelType;\r
 \r
-// This type is used to specify whether the frame processor is required to transmit the\r
-// response part of the LIN frame.\r
+/** This type is used to specify whether the frame processor is required to transmit the
+ *  response part of the LIN frame. */
 typedef enum {\r
-       // Response is generated from this (master) node\r
+       /** Response is generated from this (master) node */
        LIN_MASTER_RESPONSE=0,\r
-       // Response is generated from a remote slave node\r
+       /** Response is generated from a remote slave node */
        LIN_SLAVE_RESPONSE,\r
-       //      Response is generated from one slave to another slave,\r
-       //      for the master the response will be anonymous, it does not\r
-       //      have to receive the response.\r
+       /** Response is generated from one slave to another slave,
+        *  for the master the response will be anonymous, it does not
+        *  have to receive the response. */
        IN_SLAVE_TO_SLAVE,\r
 \r
 } Lin_FrameResponseType;\r
 \r
-// This type is used to specify the number of SDU data bytes to copy.\r
+/** This type is used to specify the number of SDU data bytes to copy. */
 typedef uint8 Lin_FrameDIType;\r
 \r
-// This Type is used to provide PID, checksum model, data length and SDU pointer\r
-// from the LIN Interface to the LIN driver.\r
+/** This Type is used to provide PID, checksum model, data length and SDU pointer
+ *  from the LIN Interface to the LIN driver. */
 typedef struct {\r
        Lin_FrameCsModelType Cs;\r
        Lin_FramePidType  Pid;\r
@@ -89,71 +89,72 @@ typedef enum {
 }Lin_DriverStatusType;\r
 \r
 typedef enum {\r
-       // LIN frame operation return value.\r
-       // Development or production error occurred\r
+       /** LIN frame operation return value.
+        *  Development or production error occurred */
        LIN_NOT_OK,\r
 \r
-       //      LIN frame operation return value.\r
-       //      Successful transmission.\r
+       /** LIN frame operation return value.
+        *  Successful transmission. */
        LIN_TX_OK,\r
 \r
-       //      LIN frame operation return value.\r
-       //      Ongoing transmission (Header or Response).\r
+       /** LIN frame operation return value.
+        *  Ongoing transmission (Header or Response). */
        LIN_TX_BUSY,\r
 \r
-       //      LIN frame operation return value.\r
-       //      Erroneous header transmission such as:\r
-       //      - Mismatch between sent and read back data\r
-       //      - Identifier parity error or\r
-       //      - Physical bus error\r
+       /** LIN frame operation return value.
+        *  Erroneous header transmission such as:
+        *  - Mismatch between sent and read back data
+        *  - Identifier parity error or
+        *  - Physical bus error */
        LIN_TX_HEADER_ERRORLIN,\r
 \r
-       //      LIN frame operation return value.\r
-       //      Erroneous response transmission such as:\r
-       //      - Mismatch between sent and read back data\r
-       //      - Physical bus error\r
+       /** LIN frame operation return value.
+        *  Erroneous response transmission such as:
+        *  - Mismatch between sent and read back data
+        *  - Physical bus error */
        LIN_TX_ERROR,\r
 \r
-       //      LIN frame operation return value.\r
-       //      Reception of correct response.\r
+       /** LIN frame operation return value.
+        *  Reception of correct response. */
        LIN_RX_OK,\r
 \r
-       //      LIN frame operation return value. Ongoing reception: at\r
-       //      least one response byte has been received, but the\r
-       //      checksum byte has not been received.\r
+       /** LIN frame operation return value. Ongoing reception: at
+        *  least one response byte has been received, but the
+        *  checksum byte has not been received. */
        LIN_RX_BUSY,\r
 \r
-       //      LIN frame operation return value.\r
-       //      Erroneous response reception such as:\r
-       //      - Framing error\r
-       //      - Overrun error\r
-       //      - Checksum error or\r
-       //      - Short response\r
+       /** LIN frame operation return value.
+        *  Erroneous response reception such as:
+        *  - Framing error
+        *  - Overrun error
+        *  - Checksum error or
+        *  - Short response */
        LIN_RX_ERROR,\r
 \r
 \r
-       //      LIN frame operation return value.\r
-       //      No response byte has been received so far.\r
+       /** LIN frame operation return value.
+        *  No response byte has been received so far. */
        LIN_RX_NO_RESPONSE,\r
 \r
-       //      LIN channel state return value.\r
-       //      LIN channel not initialized.\r
+       /** LIN channel state return value.
+        *  LIN channel not initialized. */
        LIN_CH_UNINIT,\r
 \r
-       //      LIN channel state return value.\r
-       //      Normal operation; the related LIN channel is ready to\r
-       //      transmit next header. No data from previous frame\r
-       //      available (e.g. after initialization)\r
+       /** LIN channel state return value.
+        *  Normal operation; the related LIN channel is ready to
+        *  transmit next header. No data from previous frame
+        *  available (e.g. after initialization) */
        LIN_CH_OPERATIONAL,\r
 \r
-       //      LIN channel state return value.\r
-       //      Sleep mode operation; in this mode wake-up detection\r
-       //      from slave nodes is enabled.\r
+       /** LIN channel state return value.
+        *  Sleep mode operation; in this mode wake-up detection
+        *  from slave nodes is enabled. */
        LIN_CH_SLEEP\r
 \r
 } Lin_StatusType;\r
 \r
-/* --- Service IDs --- */\r
+/** @name Service id's */
+//@{
 #define LIN_INIT_SERVICE_ID               0x00\r
 #define LIN_GETVERSIONINFO_SERVICE_ID     0x01\r
 #define LIN_WAKEUPVALIDATION_SERVICE_ID   0x0A\r
@@ -165,13 +166,16 @@ typedef enum {
 #define LIN_WAKE_UP_SERVICE_ID            0x07\r
 #define LIN_GETSTATUS_SERVICE_ID          0x08\r
 #define LIN_GO_TO_SLEEP_INTERNAL_SERVICE_ID 0x09\r
-\r
-/* --- Error codes --- */\r
+//@}
+
+/** @name Error Codes */
+//@{\r
 #define LIN_E_UNINIT                    0x00\r
 #define LIN_E_CHANNEL_UNINIT                   0x01\r
 #define LIN_E_INVALID_CHANNEL                  0x02\r
 #define LIN_E_INVALID_POINTER                  0x03\r
 #define LIN_E_STATE_TRANSITION                 0x04\r
+//@}
 \r
 void Lin_Init( const Lin_ConfigType* Config );\r
 \r
@@ -196,7 +200,7 @@ Std_ReturnType Lin_WakeUp( uint8 Channel );
 Lin_StatusType Lin_GetStatus( uint8 Channel, uint8** Lin_SduPtr );\r
 \r
 #endif\r
-\r
+/** @} */
 \r
 \r
 \r
index 1065474d73f44267c805733c52fe781cd4958fa3..896a38389578e1542c443592174589c36c514092 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup LinIf LIN Interface
+ *  @{ */
 
-
-
-
-
-
+/** @file LinIf.h
+ * API and type definitions for LIN Interface.
+ */
 
 #ifndef LINIF_H_\r
 #define LINIF_H_\r
 #include "ComM_Types.h"\r
 \r
 \r
-\r
-\r
-/* --- Service IDs --- */\r
+/** @name Service id's */
+//@{
 #define LINIF_INIT_SERVICE_ID               0x00\r
 #define LINIF_GETVERSIONINFO_SERVICE_ID     0x03\r
 #define LINIF_SCHEDULEREQUEST_SERVICE_ID    0x05\r
 #define LINIF_GOTOSLEEP_SERVICE_ID             0x06\r
 #define LINIF_WAKEUP_SERVICE_ID                0x07\r
 #define LINIF_MAINFUNCTION_SERVICE_ID       0x80\r
-\r
-/* --- Error codes --- */\r
+//@}
+
+/** @name Error Codes */
+//@{
 #define LINIF_E_UNINIT 0x00\r
 #define LINIF_E_ALREADY_INITIALIZED 0x10\r
 #define LINIF_E_NONEXISTENT_CHANNEL 0x20\r
@@ -55,6 +56,7 @@
 #define LINIF_E_PARAMETER_POINTER 0x40\r
 #define LINIF_E_SCHEDULE_OVERFLOW 0x50\r
 #define LINIF_E_SCHEDULE_REQUEST_ERROR 0x51\r
+//@}
 
 #if (LINIF_VERSION_INFO_API == STD_ON)\r
 void LinIf_GetVersionInfo( Std_VersionInfoType *versionInfo );\r
@@ -76,3 +78,4 @@ Std_ReturnType LinIf_WakeUp(NetworkHandleType Channel);
 void LinIf_MainFunction();\r
 \r
 #endif\r
+/** @} */
index 4a328651201fba77ab8abda19beb5bda4eb3aa2b..9681148bd91141a9083ec22813aa820ff6b48cfd 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Mcu MCU Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Mcu.h
+ * API and type definitions for MCU Driver.
+ */
 
 #ifndef MCU_H_\r
 #define MCU_H_\r
@@ -31,7 +31,8 @@
 #include "irq.h"\r
 //#include "mpc55xx_aos.h"\r
 \r
-/* Service ID's */\r
+/** @name Service id's */
+//@{
 #define MCU_INIT_SERVICE_ID                 0x00\r
 #define MCU_INITRAMSECTION_SERVICE_ID       0x01\r
 #define MCU_INITCLOCK_SERVICE_ID            0x02\r
 #define MCU_SETMODE_SERVICE_ID              0x08\r
 #define MCU_GETVERSIONINFO_SERVICE_ID       0x09\r
 #define MCU_INTCVECTORINSTALL_SERVICE_ID    0x0A // Not in spec but follows pattern\r
-\r
-/* Development error codes */\r
+//@}
+
+/** @name Error Codes */
+//@{
 #define MCU_E_PARAM_CONFIG                  0x0A\r
 #define MCU_E_PARAM_CLOCK                   0x0B\r
 #define MCU_E_PARAM_MODE                    0x0C\r
 #define MCU_E_PARAM_RAMSECTION              0x0D\r
 #define MCU_E_PLL_NOT_LOCKED                0x0E\r
 #define MCU_E_UNINIT                        0x0F\r
+//@}
 \r
 /* Specific return values */\r
-#define MCU_GETRESETRAWVALUE_NORESETREG_RV  0x00 // MCU006\r
-#define MCU_GETRESETRAWVALUE_UNINIT_RV      0xffffffff // MCU135\r
+#define MCU_GETRESETRAWVALUE_NORESETREG_RV  0x00 /**< MCU006 */
+#define MCU_GETRESETRAWVALUE_UNINIT_RV      0xffffffff /**< MCU135 */
 \r
 typedef enum {\r
        MCU_PLL_LOCKED,\r
@@ -123,3 +127,4 @@ void McuE_DisableInterrupts(void);
 \r
 \r
 #endif /*MCU_H_*/\r
+/** @} */
index bd21bc8511b9969d889a36574ca80a8a1aebfc34..94dadf7b4a2626419a69aa41850ecd1f0d28cf10 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup General General
+ *  @{ */
 
-
-
-
-
-
+/** @file Platform_Types.h
+ * General platform type definitions.
+ */
 
 #ifndef _PLATFORM_TYPES_H_\r
 #define _PLATFORM_TYPES_H_\r
@@ -48,3 +48,4 @@ typedef float               float32;
 typedef double              float64;  \r
 \r
 #endif\r
+/** @} */
index dcc871724a3797927ae9191563da41fae3f98e9b..a5fdf786cebf82c56ec0f5e4ef124aaa5e2133cb 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Port Port Driver
+ *  @{ */
 
-
-
-
-
-
+/** @file Port.h
+ * API and type definitions for Port Driver.
+ */
 
 #ifndef PORT_H_\r
 #define PORT_H_\r
 #if PORT_VERSION_INFO_API == STD_ON\r
 void Port_GetVersionInfo( Std_VersionInfoType *versionInfo );\r
 #endif \r
-\r
+
+/** @name Error Codes */
+//@{
 #define PORT_E_PARAM_PIN                                              0x0a\r
 #define PORT_E_DIRECTION_UNCHANGEABLE           0x0b\r
 #define PORT_E_PARAM_CONFIG                                         0x0c\r
 #define PORT_E_PARAM_INVALID_MODE                         0x0d\r
 #define PORT_E_MODE_UNCHANGEABLE                          0x0e\r
 #define PORT_E_UNINIT                                                   0x0f\r
-\r
+//@}
+
+/** @name Service id's */
+//@{
 #define PORT_INIT_ID                                                    0x00\r
 #define PORT_SET_PIN_DIRECTION_ID                         0x01\r
 #define PORT_REFRESH_PORT_DIRECTION_ID   0x02\r
 #define PORT_GET_VERSION_INFO_ID         0x03\r
 #define PORT_SET_PIN_MODE_ID                          0x04\r
+//@}
 \r
-/*\r
+/**
  * PORT046: The type Port_PinDirectionType is a type for defining the direction of a Port Pin. \r
  * PORT_PIN_IN Sets port pin as input. \r
  * PORT_PIN_OUT  Sets port pin as output. \r
@@ -74,3 +80,4 @@ void Port_RefreshPortDirection( void );
 void Port_SetPinMode( Port_PinType Pin, Port_PinModeType Mode );\r
 \r
 #endif /*PORT_H_*/\r
+/** @} */
index 709958a2098a56ca00825c375ada9ead4a381fb2..cfc0fe68927a50ad0228c68b35c3e22c8c8e0e1c 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup Pwm PWM Driver
+ *  @{ */
+
+/** @file Pwm.h
+ * API and type definitions for PWM Driver.
+ */
+
 #ifndef PWM_H_
 #define PWM_H_
 
 /**************************************************************
  *  Type definitions
  **************************************************************/
-// PWM002: Development error values are of type uint8
+/** PWM002: Development error values are of type uint8 */
 typedef uint8 Pwm_ErrorType;
 
-/*
+/**
  * PWM058: The width of the duty cycle parameter is 16 bits
  *
  * PWM059: The PWM module shall comply with the following scaling scheme
@@ -102,26 +109,28 @@ extern const Pwm_ConfigType PwmConfig;
 /*
  * Constants
  *****************/
-
-/* Pwm_Init called with the wrong parameter */
+/** @name Error Codes */
+//@{
+/** Pwm_Init called with the wrong parameter */
 //const Pwm_ErrorType PWM_E_PARAM_CONFIG = 0x10;
 #define PWM_E_PARAM_CONFIG                     0x10
 
-/* PWM is not initialized yet */
+/** PWM is not initialized yet */
 //const Pwm_ErrorType PWM_E_UNINIT = 0x11;
 #define PWM_E_UNINIT                                   0x11
 
-/* Invalid PWM channel identifier */
+/** Invalid PWM channel identifier */
 //const Pwm_ErrorType PWM_E_PARAM_CHANNEL = 0x12;
 #define PWM_E_PARAM_CHANNEL                    0x12
 
-/* Use of unauthorized service on PWM channel configured fixed period */
+/** Use of unauthorized service on PWM channel configured fixed period */
 //const Pwm_ErrorType PWM_E_PERIOD_UNCHANGEABLE = 0x13;
 #define PWM_E_PERIOD_UNCHANGEABLE              0x13
 
-/* Pwm_Init called when already initialized */
+/** Pwm_Init called when already initialized */
 //const Pwm_ErrorType PWM_E_ALREADY_INITIALIZED = 0x14;
 #define PWM_E_ALREADY_INITIALIZED              0x14
+//@}
 
 /*
  * Implemented functions
@@ -158,3 +167,4 @@ void Pwm_EnableNotification(Pwm_ChannelType ChannelNumber,
 #endif
 
 #endif /* PWM_H_ */
+/** @} */
index ddba61b22ff321d5efd16c4d080536165dd28e94..c589d0de442003d6a34d1af6c5fa372236a9b419 100644 (file)
  * for more details.
  * -------------------------------- Arctic Core ------------------------------*/
 
+/** @addtogroup General General
+ *  @{ */
 
-
-
-
-
-
-
+/** @file Std_Types.h
+ *  Definitions of General types.
+ */
 \r
 #ifndef _STD_TYPES_H\r
 #define _STD_TYPES_H\r
@@ -51,20 +50,20 @@ typedef struct {
        uint16 vendorID;\r
        uint16 moduleID;\r
        uint8  instanceID;\r
-       /* Vendor numbers */\r
-       uint8 sw_major_version;\r
-       uint8 sw_minor_version;\r
-       uint8 sw_patch_version;\r
-       /* Autosar spec. numbers */\r
-       uint8 ar_major_version;\r
-       uint8 ar_minor_version;\r
-       uint8 ar_patch_version;\r
+
+       uint8 sw_major_version;    /**< Vendor numbers */
+       uint8 sw_minor_version;    /**< Vendor numbers */
+       uint8 sw_patch_version;    /**< Vendor numbers */
+
+       uint8 ar_major_version;    /**< Autosar spec. numbers */
+       uint8 ar_minor_version;    /**< Autosar spec. numbers */
+       uint8 ar_patch_version;    /**< Autosar spec. numbers */
 } Std_VersionInfoType;\r
 \r
-/* make compare number... #if blabla > 10203  ( 1.2.3 ) */\r
+/** make compare number... #if version > 10203  ( 1.2.3 ) */
 #define STD_GET_VERSION (_major,_minor,_patch) (_major * 10000 + _minor * 100 + _patch)\r
 \r
-/* Non-standard macro */\r
+/** Create Std_VersionInfoType */
 #define STD_GET_VERSION_INFO(_vi,_module) \\r
        ((_vi)->vendorID =  _module ## _VENDOR_ID);\\r
        ((_vi)->moduleID = _module ## _MODULE_ID);\\r
@@ -81,34 +80,32 @@ typedef struct {
 #define STATUSTYPEDEFINED\r
 typedef enum {\r
        E_OK = 0,\r
-       /* STD OSEK */\r
-       E_OS_ACCESS = 1,\r
-       E_OS_CALLEVEL = 2,\r
-       E_OS_ID = 3,\r
-       E_OS_LIMIT = 4,\r
-       E_OS_NOFUNC = 5,\r
-       E_OS_RESOURCE = 6,\r
-       E_OS_STATE = 7,\r
-       E_OS_VALUE = 8,\r
-\r
-       /* AUTOSAR, see 7.10 */\r
-       E_OS_SERVICEID,\r
-       E_OS_RATE ,\r
-       E_OS_ILLEGAL_ADDRESS ,\r
-       E_OS_MISSINGEND ,\r
-       E_OS_DISABLEDINT ,\r
-       E_OS_STACKFAULT ,\r
-       E_OS_PROTECTION_MEMORY ,\r
-       E_OS_PROTECTION_TIME ,\r
-       E_OS_PROTECTION_LOCKED ,\r
-       E_OS_PROTECTION_EXCEPTION ,\r
-       E_OS_PROTECTION_RATE,\r
+       E_OS_ACCESS = 1,               /**< STD OSEK */
+       E_OS_CALLEVEL = 2,             /**< STD OSEK */
+       E_OS_ID = 3,                   /**< STD OSEK */
+       E_OS_LIMIT = 4,                /**< STD OSEK */
+       E_OS_NOFUNC = 5,               /**< STD OSEK */
+       E_OS_RESOURCE = 6,             /**< STD OSEK */
+       E_OS_STATE = 7,                /**< STD OSEK */
+       E_OS_VALUE = 8,                /**< STD OSEK */
+\r
+       E_OS_SERVICEID,                /**< AUTOSAR, see 7.10 */
+       E_OS_RATE ,                    /**< AUTOSAR, see 7.10 */
+       E_OS_ILLEGAL_ADDRESS ,         /**< AUTOSAR, see 7.10 */
+       E_OS_MISSINGEND ,              /**< AUTOSAR, see 7.10 */
+       E_OS_DISABLEDINT ,             /**< AUTOSAR, see 7.10 */
+       E_OS_STACKFAULT ,              /**< AUTOSAR, see 7.10 */
+       E_OS_PROTECTION_MEMORY ,       /**< AUTOSAR, see 7.10 */
+       E_OS_PROTECTION_TIME ,         /**< AUTOSAR, see 7.10 */
+       E_OS_PROTECTION_LOCKED ,       /**< AUTOSAR, see 7.10 */
+       E_OS_PROTECTION_EXCEPTION ,    /**< AUTOSAR, see 7.10 */
+       E_OS_PROTECTION_RATE,          /**< AUTOSAR, see 7.10 */
 \r
        /* COM.. TODO: move ?? */\r
        E_COM_ID,\r
 \r
 \r
-       /* Implementation specific */\r
+       /** Implementation specific */
        E_OS_SYS_APA,\r
 \r
        E_NOT_OK,\r
@@ -138,3 +135,4 @@ typedef unsigned char StatusType;
 \r
 \r
 #endif\r
+/** @} */