#ifndef __DIGITAL_OUTPUT_H
#define __DIGITAL_OUTPUT_H

#include <stdbool.h>
#include "io.h"


//
void do_init(void);

//
void do_update_field(uint8_t *param, uint16_t *field);

//
void do_gpio_init(out_t *out, uint8_t index);

//
void do_set_common(void);

//
void do_update(do_t *out, uint8_t i);

//
void do_set_pwm(uint16_t period, uint16_t duty, uint8_t index);

//
void do_set_out(out_t *out, uint8_t val);

//
void out_as_pwm(void);

// 
void di_out_pwm_tim_init(void);

//
void do_task(void *params);


#endif  // __DIGITAL_OUTPUT_H

