mbed library sources. Supersedes mbed-src.

Fork of mbed-dev by mbed official

Revision:
153:9398a535854b
Parent:
152:9a67f0b066fc
diff -r 9a67f0b066fc -r 9398a535854b targets/TARGET_NUVOTON/TARGET_NUC472/device/StdDriver/nuc472_can.h
--- a/targets/TARGET_NUVOTON/TARGET_NUC472/device/StdDriver/nuc472_can.h	Thu Dec 15 11:48:27 2016 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,176 +0,0 @@
-/**************************************************************************//**
- * @file     can.h
- * @version  V1.00
- * $Revision: 8 $
- * $Date: 14/09/26 3:38p $
- * @brief    NUC472/NUC442 CAN driver header file
- *
- * @note
- * Copyright (C) 2013 Nuvoton Technology Corp. All rights reserved.
-*****************************************************************************/
-#ifndef __CAN_H__
-#define __CAN_H__
-
-#ifdef  __cplusplus
-extern "C"
-{
-#endif
-
-/** @addtogroup NUC472_442_Device_Driver NUC472/NUC442 Device Driver
-  @{
-*/
-
-/** @addtogroup NUC472_442_CAN_Driver CAN Driver
-  @{
-*/
-
-/** @addtogroup NUC472_442_CAN_EXPORTED_TYPEDEF CAN Exported Type Defines
-  @{
-*/
-
-/**
- * @details  Message ID types.
- */
-typedef enum {
-    CAN_STD_ID = 0, /*!< Standard Identifier  */
-    CAN_EXT_ID = 1  /*!< Extended Identifier  */
-} E_CAN_ID_TYPE;
-
-/**
- * @details  Message Frame types.
- */
-typedef enum {
-    REMOTE_FRAME = 0,  /*!< Remote Frame  */
-    DATA_FRAME   = 1   /*!< Data Frame    */
-} E_CAN_FRAME_TYPE;
-
-/**
- * @details  CAN message structure.
- */
-typedef struct {
-    uint32_t  IdType;     /*!< Identifier Type     */
-    uint32_t  FrameType;  /*!< Frame Type          */
-    uint32_t  Id;         /*!< Message Identifier  */
-    uint8_t   DLC;        /*!< Data Length Code    */
-    uint8_t   Data[8];    /*!< Data byte 0 ~ 7     */
-} STR_CANMSG_T;
-
-/**
- * @details  CAN mask message structure.
- */
-typedef struct {
-    uint8_t   u8Xtd;     /*!< Extended Identifier  */
-    uint8_t   u8Dir;     /*!< Message Direction    */
-    uint32_t  u32Id;     /*!< Message Identifier   */
-    uint8_t   u8IdType;  /*!< Identifier Type      */
-} STR_CANMASK_T;
-
-/**
- * @details  CAN operation mode: normal/basic mode.
- */
-typedef enum {
-    CAN_NORMAL_MODE = 1, /*!< Normal Mode  */
-    CAN_BASIC_MODE = 2   /*!< Basic Mode   */
-} CAN_MODE_SELECT;
-
-#define ALL_MSG  32  /*!< All Message ram number   */
-#define MSG(id)  id  /*!< Message ram number       */
-
-
-/*@}*/ /* end of group NUC472_442_CAN_EXPORTED_TYPEDEF */
-
-
-/** @addtogroup NUC472_442_CAN_EXPORTED_FUNCTIONS CAN Exported Functions
-  @{
-*/
-
-/**
- *  @brief    Get interrupt status
- *
- *  @param[in]    can  The base address of can module
- *
- *  @return   CAN module status register value
- *  \hideinitializer
- */
-#define CAN_GET_INT_STATUS(can)    (can->STATUS)
-
-/**
- *  @brief    Get specified interrupt pending status
- *
- *  @param[in]    can  The base address of can module
- *
- *  @return   The source of the interrupt.
- *  \hideinitializer 
- */
-#define CAN_GET_INT_PENDING_STATUS(can)     (can->IIDR)
-
-/**
- *  @brief    Disable Wakeup function
- *
- *  @param[in]    can  The base address of can module
- *
- *  @return   None
- * \hideinitializer 
- */
-#define CAN_DISABLE_WAKEUP(can)             (can->WU_IE = 0)
-
-/**
- *  @brief    Enable Wakeup function
- *
- *  @param[in]    can  The base address of can module
- *
- *  @return   None
- * \hideinitializer 
- */
-#define CAN_ENABLE_WAKEUP(can)              (can->WU_IE = CAN_WUEN_WAKUP_EN_Msk)
-
-/**
- *  @brief    Get specified Message Object new data into bit value
- *
- *  @param[in]    can        The base address of can module
- *  @param[in]    u32MsgNum  Specified Message Object number. (0 ~ 31)
- *
- *  @return   Specified Message Object new data into bit value.
- * \hideinitializer 
- */
-#define CAN_GET_NEW_DATA_IN_BIT(can, u32MsgNum)    (u32MsgNum < 16 ? can->NDAT1 & (1 << u32MsgNum) : can->NDAT2 & (1 << (u32MsgNum-16)))
-
-
-/*---------------------------------------------------------------------------------------------------------*/
-/* Define CAN functions prototype                                                                          */
-/*---------------------------------------------------------------------------------------------------------*/
-uint32_t CAN_SetBaudRate(CAN_T *tCAN, uint32_t u32BaudRate);
-uint32_t CAN_Open(CAN_T *tCAN, uint32_t u32BaudRate, uint32_t u32Mode);
-int32_t CAN_Transmit(CAN_T *tCAN, uint32_t u32MsgNum , STR_CANMSG_T* pCanMsg);
-int32_t CAN_Receive(CAN_T *tCAN, uint32_t u32MsgNum , STR_CANMSG_T* pCanMsg);
-void CAN_CLR_INT_PENDING_BIT(CAN_T *tCAN, uint8_t u32MsgNum);
-void CAN_EnableInt(CAN_T  *tCAN, uint32_t u32Mask);
-void CAN_DisableInt(CAN_T  *tCAN, uint32_t u32Mask);
-int32_t CAN_SetMultiRxMsg(CAN_T *tCAN, uint32_t u32MsgNum , uint32_t u32MsgCount, uint32_t u32IDType, uint32_t u32ID);
-int32_t CAN_SetRxMsg(CAN_T *tCAN, uint32_t u32MsgNum , uint32_t u32IDType, uint32_t u32ID);
-int32_t CAN_SetTxMsg(CAN_T *tCAN, uint32_t u32MsgNum , STR_CANMSG_T* pCanMsg);
-int32_t CAN_TriggerTxMsg(CAN_T  *tCAN, uint32_t u32MsgNum);
-uint32_t CAN_GetCANBitRate(CAN_T  *tCAN);
-void CAN_EnterInitMode(CAN_T *tCAN);
-void CAN_LeaveInitMode(CAN_T *tCAN);
-void CAN_EnterTestMode(CAN_T *tCAN, uint8_t u8TestMask);
-void CAN_LeaveTestMode(CAN_T *tCAN);
-
-/*@}*/ /* end of group NUC472_442_CAN_EXPORTED_FUNCTIONS */
-
-/*@}*/ /* end of group NUC472_442_CAN_Driver */
-
-/*@}*/ /* end of group NUC472_442_Device_Driver */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif //__CAN_H__
-
-/*** (C) COPYRIGHT 2013 Nuvoton Technology Corp. ***/
-
-
-
-
-