|
|
@ -21,6 +21,10 @@ class ZCanHost { |
|
|
|
|
|
|
|
map<string, function<bool(int argc, char** argv, string& retval)>> m_cmdMap; |
|
|
|
|
|
|
|
bool m_writeio_cache[255]; |
|
|
|
|
|
|
|
int16_t m_pumpc1004_speed_cache[255]; |
|
|
|
|
|
|
|
public: |
|
|
|
void initialize(string can_if_name, int baudrate, bool enablLoopback); |
|
|
|
bool execcmd(string cmd, string& retval); |
|
|
@ -34,7 +38,10 @@ class ZCanHost { |
|
|
|
int32_t ping(int board_id); |
|
|
|
|
|
|
|
int32_t readio(int id, bool& value); |
|
|
|
|
|
|
|
int32_t writeio(int id, bool value); |
|
|
|
bool read_writeio_state_cache(int id); |
|
|
|
|
|
|
|
int32_t readadc(int id, int& value); |
|
|
|
|
|
|
|
// 读取M211887(维萨拉)传感器信息
|
|
|
@ -72,6 +79,8 @@ class ZCanHost { |
|
|
|
int32_t pumpctrl_c1004(int sensorid, int16_t acc, int16_t rpm); |
|
|
|
int32_t pumpctrl_c1004(int sensorid, int16_t acc, int16_t rpm, int8_t idlepower, int8_t power); |
|
|
|
|
|
|
|
int16_t pumpctrl_c1004_get_speed_cache(int id); |
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief 读取华成压力传感器数值 |
|
|
|
* |
|
|
@ -85,6 +94,19 @@ class ZCanHost { |
|
|
|
int16_t zero; // 零点
|
|
|
|
int16_t full; // 满量程
|
|
|
|
} huacheng_pressure_sensor_read_c1005_t; |
|
|
|
int32_t huacheng_pressure_sensor_get_pa(huacheng_pressure_sensor_read_c1005_t* rawdata) { |
|
|
|
if (rawdata->unit == 0) { |
|
|
|
int32_t pa = (int32_t)rawdata->value / (10.0 * rawdata->precision) * 1000000; |
|
|
|
return pa; |
|
|
|
} else if (rawdata->unit == 1) { |
|
|
|
int32_t pa = (int32_t)rawdata->value / (10.0 * rawdata->precision) * 1000; |
|
|
|
return pa; |
|
|
|
} else if (rawdata->unit == 2) { |
|
|
|
int32_t pa = (int32_t)rawdata->value / (10.0 * rawdata->precision); |
|
|
|
return pa; |
|
|
|
} |
|
|
|
return -1; |
|
|
|
} |
|
|
|
int32_t huacheng_pressure_sensor_read_c1005(int sensorid, huacheng_pressure_sensor_read_c1005_t& value); |
|
|
|
}; |
|
|
|
|