hal_digio.h
来自「cc2x30_sw_examples: 适用于SmartRF05EB 支持CC」· C头文件 代码 · 共 77 行
H
77 行
/******************************************************************************
Filename: hal_digio.h
Description: HAL digital IO functionality
******************************************************************************/
#ifndef HAL_DIGIO_H
#define HAL_DIGIO_H
#ifdef __cplusplus
extern "C" {
#endif
/******************************************************************************
* INCLUDES
*/
#include <hal_types.h>
/******************************************************************************
* CONSTANTS AND DEFINES
*/
enum {
HAL_DIGIO_INPUT,
HAL_DIGIO_OUTPUT
};
enum {
HAL_DIGIO_INT_FALLING_EDGE,
HAL_DIGIO_INT_RISING_EDGE
};
#define HAL_DIGIO_OK 0
#define HAL_DIGIO_ERROR (~0)
/******************************************************************************
* TYPEDEFS
*/
typedef struct {
uint8 port; // port number
uint8 pin; // pin number
uint8 pin_bm; // pin bitmask
uint8 dir; // direction (input or output)
uint8 initval; // initial value
} digioConfig;
/******************************************************************************
* GLOBAL FUNCTIONS
*/
uint8 halDigioConfig(const digioConfig* p);
uint8 halDigioClear(const digioConfig* p);
uint8 halDigioToggle(const digioConfig* p);
uint8 halDigioSet(const digioConfig* p);
uint8 halDigioGet(const digioConfig* p);
uint8 halDigioIntConnect(const digioConfig *p, ISR_FUNC_PTR func);
uint8 halDigioIntEnable(const digioConfig *p);
uint8 halDigioIntDisable(const digioConfig *p);
uint8 halDigioIntClear(const digioConfig *p);
uint8 halDigioIntSetEdge(const digioConfig *p, uint8 edge);
#ifdef __cplusplus
}
#endif
#endif
/*------------------------------------------------------------------------------
0ooo
ooo0 ( )
( ) ) /
\ ( (_/
\_) Modify By:cuiqingwei [gary]
------------------------------------------------------------------------------*/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?