#ifndef __DIGITAL_OUTPUT_H
#define __DIGITAL_OUTPUT_H

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


//
void do_init(void);

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

//
void do_set_common(void);

//
void do_set(void);

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

//
void do_set_mode(void);

//
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);


#endif  // __DIGITAL_OUTPUT_H

