55 lines
1022 B
C
55 lines
1022 B
C
#ifndef _MUX_SIGNAL_H_
|
|
#define _MUX_SIGNAL_H_
|
|
|
|
#include "data_type_def.h"
|
|
#include "gpio.h"
|
|
|
|
#define PWM_MUX 0
|
|
#define PWM_HART 1
|
|
|
|
typedef enum
|
|
{
|
|
CH0_OUT_VOL_V = 0,
|
|
CH1_OUT_VOL_MV = 1,
|
|
CH2_OUT_CUR = 2,
|
|
CH3_OUT_FRE = 3,
|
|
CH4_OUT_RES = 4,
|
|
CH5_EMPTY = 5,
|
|
CH6_IN_VOL = 6,
|
|
CH7_IN_MVOL = 7,
|
|
CH8_IN_CUR = 8,
|
|
CH9_IN_FRE = 9,
|
|
CH10_IN_RTD = 10,
|
|
CH11_IN_TC = 11,
|
|
CH12_IN_HART = 12,
|
|
CHX_IN_MAX = 13,
|
|
|
|
} CHANNEL;
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t capture_cnt;
|
|
uint8_t over_cnt;
|
|
float32 high_time; // 高电平时间
|
|
float32 duty_time; // 周期
|
|
float32 freq;
|
|
float32 capture_buf[3];
|
|
} st_freq_signal;
|
|
|
|
typedef struct
|
|
{
|
|
CHANNEL channel;
|
|
float32 data_sv;
|
|
float32 data_pv;
|
|
float32 pwr_delay;
|
|
} st_mux_signal;
|
|
|
|
extern st_freq_signal freq_signal;
|
|
extern st_mux_signal mux_signal;
|
|
|
|
void pwr_cosume(BOOL rst, uint32_t ms);
|
|
void mux_signal_switch(st_mux_signal *mux_signal);
|
|
void frequence_output(uint32_t freq, uint8_t pulse, uint8_t pwm_select);
|
|
|
|
#endif
|