⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 edgeport_b.h

📁 摩托罗拉MMC2107在ucosII的移植代码
💻 H
📖 第 1 页 / 共 3 页
字号:
#define EPFR_RESET_MASK    (0XFF)


/*-------------------------------------------------------------------*/
/* Prototypes                                                        */
/*-------------------------------------------------------------------*/
EdgePort_B_ReturnCode_t EdgePort_B_SetRegister_f	(
                                 pEdgePort_B_t,
                                 EdgePort_B_Register_t,
                                 UINT16
                                                   );

EdgePort_B_ReturnCode_t EdgePort_B_GetRegister_f 	(
                                 pEdgePort_B_t,
                                 EdgePort_B_Register_t,
                                 UINT16*
                                                   );

EdgePort_B_ReturnCode_t EdgePort_B_GetStatus_f 		(
                                 pEdgePort_B_t,
                                 pEdgePort_B_Status_t
                                                    );

EdgePort_B_ReturnCode_t EdgePort_B_ControlInterrupt_f (
                                 pEdgePort_B_t,
                                 EdgePort_B_Port_t,
                                 EdgePort_B_Control_t
                                                      );

EdgePort_B_ReturnCode_t EdgePort_B_ConfigureDataDirection_f (
                                 pEdgePort_B_t,
                                 EdgePort_B_DataDir_t,
                                 EdgePort_B_Port_t
                                                            );

EdgePort_B_ReturnCode_t EdgePort_B_ReadPortData_f (
                                 pEdgePort_B_t,
                                 EdgePort_B_Port_t,
                                 pEdgePort_B_DataVal_t
                                                   );


EdgePort_B_ReturnCode_t EdgePort_B_Reset_f ( pEdgePort_B_t
                                           );

EdgePort_B_ReturnCode_t EdgePort_B_WritePortData_f  (
                                 pEdgePort_B_t,
                                 EdgePort_B_Port_t,
                                 EdgePort_B_DataVal_t
                                                    );

EdgePort_B_ReturnCode_t EdgePort_B_ConfigurePortPin_f	(
                                 pEdgePort_B_t,
                                 EdgePort_B_Port_t,
                                 EdgePort_B_PinType_t
                                                      );

/*-------------------------------------------------------------------*/
/* Macro:   EdgePort_B_SetRegister                                   */
/*                                                                   */
/* Purpose:   Call EdgePort_B_SetRegister_f function with optional   */
/*            parameter checking.                                    */
/*                                                                   */
/* Input:                                                            */
/* EdgePortPtr          :  EdgePort_B base address associated with   */
/*                         this driver.                              */
/* EdgePortRegister     :  Select among EdgePort registers.          */
/* RegisterValue        :  Data to copy into selected Register.      */
/*                                                                   */
/* Output:                                                           */
/* EDGEPORT_B_ERR_NONE                 :  No error                   */
/* EDGEPORT_B_ERR_INVALID_HANDLE       :  Edge Port base address     */
/*                                        parameter is zero.         */
/* EDGEPORT_B_ERR_INVALID_REGISTER     :  Register is invalid.       */
/* EDGEPORT_B_ERR_INVALID_DATA_VALUE   :  16-bit value is greater    */
/*                                        than 0XFF.                 */
/*-------------------------------------------------------------------*/

#define EdgePort_B_SetRegister(  EdgePortPtr,                        \
                                 EdgePortRegister,                   \
                                 RegisterValue                       \
                              )                                      \
(                                                                    \
  (EdgePort_B_PARAM_CHECKING) ?                                      \
    (                                                                \
    ((EdgePortPtr) == NULL) ?                                        \
      EDGEPORT_B_ERR_INVALID_HANDLE:                                 \
      (((EdgePortRegister) != EdgePort_B_EPPAR) &&                   \
      ((RegisterValue) > 0XFF)) ?                                    \
      EDGEPORT_B_ERR_INVALID_DATA_VALUE:                             \
      (((EdgePortRegister) < EdgePort_B_EPPAR) ||                    \
      ((EdgePortRegister) > EdgePort_B_EPFR)  ||                     \
      ((EdgePortRegister) == EdgePort_B_EPPDR)) ?                    \
      EDGEPORT_B_ERR_INVALID_REGISTER  :                             \
      EdgePort_B_SetRegister_f(  (EdgePortPtr),                      \
                                 (EdgePortRegister),                 \
                                 (RegisterValue)                     \
                              )                                      \
   )                                                                 \
   :                                                                 \
   EdgePort_B_SetRegister_f(  (EdgePortPtr),                         \
                              (EdgePortRegister),                    \
                              (RegisterValue)                        \
                           )                                         \
)  /* end of EdgePort_B_SetRegister Macro  */

/*-------------------------------------------------------------------*/
/* Macro:   EdgePort_B_GetRegister                                   */
/*                                                                   */
/* Purpose:     Call EdgePort_B_GetRegister_f function with optional */
/*              parameter checking.                                  */
/*                                                                   */
/* Input:                                                            */
/*   EdgePortPtr              : Edge Port base address associated    */
/*                              with this driver.                    */
/*   EdgePortPinRegister      : Select among Edge Port Registers     */
/*   GetRegisterPtr           : Result address for selected Edge     */
/*                              Port Register.                       */
/*                                                                   */
/* Output:                                                           */
/* EDGEPORT_B_ERR_NONE                    :  No error.               */
/* EDGEPORT_B_ERR_INVALID_HANDLE          :  Edge Port base address  */
/*                                           parameter is zero.      */
/* EDGEPORT_B_ERR_INVALID_REGISTER        :  Edge Port Register      */
/*                                           Selection is invalid.   */
/* EDGEPORT_B_ERR_BAD_RESULT_ADDRESS      :  Result pointer is zero. */
/*                                                                   */
/*-------------------------------------------------------------------*/

#define EdgePort_B_GetRegister( EdgePortPtr,                         \
                                EdgePortRegister,                    \
                                GetRegisterPtr                       \
                              )                                      \
(                                                                    \
   (EdgePort_B_PARAM_CHECKING) ?                                     \
   (                                                                 \
   ((EdgePortPtr) == NULL) ?                                         \
      EDGEPORT_B_ERR_INVALID_HANDLE :                                \
   ((GetRegisterPtr) == NULL) ?                                      \
      EDGEPORT_B_ERR_BAD_RESULT_ADDRESS :                            \
   (((EdgePortRegister) < EdgePort_B_EPPAR) ||                       \
    ((EdgePortRegister) > EdgePort_B_EPFR)) ?                        \
      EDGEPORT_B_ERR_INVALID_REGISTER :                              \
      EdgePort_B_GetRegister_f   (  (EdgePortPtr),                   \
                                    (EdgePortRegister),              \
                                    (GetRegisterPtr)                 \
                                 )                                   \
    )                                                                \
    :                                                                \
    EdgePort_B_GetRegister_f  (  (EdgePortPtr),                      \
                                 (EdgePortRegister),                 \
                                 (GetRegisterPtr)                    \
                              )                                      \
)  /* end of EdgePort_B_GetRegister Macro */


/*-------------------------------------------------------------------*/
/* Macro:       EdgePort_B_GetStatus                                 */
/*                                                                   */
/* Purpose:     Call EdgePort_B_GetStatus_f function with optional   */
/*              parameter checking.                                  */
/*                                                                   */
/* Input:                                                            */
/*   EdgePortPtr              : Edge Port base address associated    */
/*                              with this driver.                    */
/*   StatusPtr                : Select EdgePort port                 */
/*                                                                   */
/* Output:                                                           */
/* EDGEPORT_B_ERR_NONE                 :  No error.                  */
/* EDGEPORT_B_ERR_INVALID_HANDLE       :  Edge Port base address     */
/*                                        parameter is zero.         */
/* EDGEPORT_B_BAD_RESULT_ADDRESS       :  Result pointer is zero.    */
/*                                                                   */
/*-------------------------------------------------------------------*/

#define EdgePort_B_GetStatus( EdgePortPtr,                           \
                              StatusPtr                              \
                             )                                       \
(                                                                    \
   (EdgePort_B_PARAM_CHECKING) ?                                     \
   (                                                                 \
   ((EdgePortPtr) == NULL) ?                                         \
      EDGEPORT_B_ERR_INVALID_HANDLE :                                \
   ((StatusPtr) == NULL) ?                                           \
      EDGEPORT_B_ERR_BAD_RESULT_ADDRESS :                            \
      EdgePort_B_GetStatus_f( (EdgePortPtr),                         \
                              (StatusPtr)                            \
                            )                                        \
  )                                                                  \
   :                                                                 \
      EdgePort_B_GetStatus_f( (EdgePortPtr),                         \
                              (StatusPtr)                            \
                            )                                        \
) /* end of EdgePort_B_GetStatus Macro */



/*-------------------------------------------------------------------*/
/* Macro:       EdgePort_B_ControlInterrupt                          */
/*                                                                   */
/* Purpose:     Call EdgePort_B_ControlInterrupt_f function with     */ 
/*              optional parameter checking.                         */                                                                
/*                                                                   */
/* Input:                                                            */
/*    EdgePortPtr    :  Edge Port base address associated with this  */
/*                      driver.                                      */
/*    EdgePortPin    :  Select Edge Port Pin.                        */
/*    InterruptVal   :  Control Interrupt Requests                   */
/*                                                                   */
/* Output:                                                           */
/* EDGEPORT_B_ERR_NONE                    :  No error.               */
/* EDGEPORT_B_ERR_INVALID_HANDLE          :  Edge Port base address  */
/*                                           parameter is zero.      */
/* EDGEPORT_B_ERR_INVALID_CONTROL         :  Invalid control         */
/* EDGEPORT_B_ERR_INVALID_PIN_NUMBER      :  Pin Number is invalid.  */
/*                                                                   */
/*-------------------------------------------------------------------*/

#define EdgePort_B_ControlInterrupt( EdgePortPtr,                    \
                                     EdgePortPin,                    \
                                     InterruptVal                    \
                                   )                                 \
(                                                                    \
   (EdgePort_B_PARAM_CHECKING) ?                                     \
   (                                                                 \
   ((EdgePortPtr) == NULL) ?                                         \
        EDGEPORT_B_ERR_INVALID_HANDLE  :                             \
        (((EdgePortPin) < EdgePort_B_PortPin_0) ||                   \
        ((EdgePortPin) > EdgePort_B_PortPin_7)) ?                    \
        EDGEPORT_B_ERR_INVALID_PIN_NUMBER :                          \
        (((InterruptVal) < EdgePort_B_DISABLE) ||                    \
        ((InterruptVal) > EdgePort_B_ENABLE)) ?                      \
        EDGEPORT_B_ERR_INVALID_CONTROL :                             \
        EdgePort_B_ControlInterrupt_f ( (EdgePortPtr),               \
                                        (EdgePortPin),               \
                                        (InterruptVal)               \
                                      )                              \
   )                                                                 \

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -