generated from Embedded_Projects/Artery_AT32F437_Start_Template
Yilin Sun
26a7a36a69
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Yilin Sun <imi415@imi.moe>
39 lines
863 B
C
39 lines
863 B
C
#ifndef MPYATE_HOST_H
|
|
#define MPYATE_HOST_H
|
|
|
|
#include <stdbool.h>
|
|
#include <stdint.h>
|
|
|
|
typedef enum {
|
|
ATE_RET_SUCCESS,
|
|
ATE_RET_FAIL,
|
|
} ate_ret_t;
|
|
|
|
typedef enum {
|
|
ATE_GPIO_MODE_OUTPUT_PP,
|
|
ATE_GPIO_MODE_OUTPUT_OD,
|
|
ATE_GPIO_MODE_INPUT,
|
|
ATE_GPIO_MODE_AF,
|
|
} ate_gpio_mode_t;
|
|
|
|
typedef ate_ret_t (*ate_i2c_read_t)(void *handle, uint8_t *data, uint8_t len);
|
|
typedef ate_ret_t (*ate_i2c_write_t)(void *handle, uint8_t *data, uint8_t len);
|
|
|
|
typedef struct {
|
|
ate_i2c_read_t read;
|
|
ate_i2c_write_t write;
|
|
} ate_ops_t;
|
|
|
|
typedef struct {
|
|
ate_ops_t ops;
|
|
|
|
void *user_data;
|
|
} ate_t;
|
|
|
|
ate_ret_t ate_init(ate_t *ate);
|
|
ate_ret_t ate_gpio_init(ate_t *ate, uint8_t pin, ate_gpio_mode_t mode);
|
|
ate_ret_t ate_gpio_read(ate_t *ate, uint8_t pin, bool *value);
|
|
ate_ret_t ate_gpio_write(ate_t *ate, uint8_t pin, bool value);
|
|
|
|
#endif // MPYATE_HOST_H
|