19 lines
506 B
C
19 lines
506 B
C
#ifndef __XDAC_H__
|
|
#define __XDAC_H__
|
|
#include "stm32l0xx_hal.h"
|
|
#include "dac.h"
|
|
|
|
typedef enum
|
|
{
|
|
XDAC_CHANNEL_1 = 0,
|
|
XDAC_CHANNEL_2,
|
|
XDAC_CHANNEL_MAX
|
|
} xdac_e;
|
|
|
|
extern void dac_set_value(uint8_t xdac_channel, uint32_t val);
|
|
extern uint32_t dac_get_value(uint8_t xdac_channel);
|
|
|
|
extern void pid_controller_init(uint8_t xdac_channel, float32 kp, float32 ki, float32 kd);
|
|
extern float32 pid_position_control(uint8_t xdac_channel, float32 setpoint, float32 process_variable);
|
|
#endif // __XDAC_H__
|