You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
451 lines
16 KiB
451 lines
16 KiB
#include "SC828_DATA_table.h"
|
|
#include "Variable.h"
|
|
|
|
#define DBG_TAG "data.table"
|
|
#define DBG_LVL DBG_LOG
|
|
#include <rtdbg.h>
|
|
|
|
// 系统数据状态表(表格)
|
|
IO_State_DATA data_table[] = {
|
|
{1001, 0, STR_COMM_COUNTER},
|
|
{1002, 0, STR_COMM_FAULT_COUNTER},
|
|
{1003, 0, STR_CYCLE_TEMP_RISE_SET},
|
|
{1004, 0, STR_TEMP_CONTROL_RATIO},
|
|
{1005, 0, STR_CALCULATED_TEMP},
|
|
{1006, 0, STR_FLOW_COUNTER},
|
|
{1007, 0, STR_GLOBAL_FLOW_COUNTER},
|
|
{1008, 0, STR_NOZZLE_SETTING},
|
|
{1009, 0, STR_MAIN_PUMP_SPEED_SET},
|
|
{1010, 0, STR_FAN_SPEED_SET},
|
|
{1011, 0, STR_TARGET_PH_SET},
|
|
{1012, 0, STR_PH_DEVICE_STATUS}
|
|
};
|
|
|
|
// DIO状态表(表格)
|
|
IO_State_DIO di_table[] = {
|
|
{2001, 0, STR_EMERGENCY_STOP},
|
|
{2002, 0, STR_TEMP_LOCK},
|
|
{2003, 0, STR_PRESSURE_LOCK},
|
|
{2004, 0, STR_CALL_CONFIRM},
|
|
{2005, 0, STR_MANUAL},
|
|
{2006, 0, STR_FAN_START},
|
|
{2007, 0, STR_FAN_FAULT},
|
|
{2008, 0, STR_MAIN_PUMP_FAULT},
|
|
{2009, 0, STR_ROLL_RESET},
|
|
{2010, 0, STR_FABRIC_FAULT},
|
|
{2011, 0, STR_ELEC_FAULT},
|
|
{2012, 0, STR_MATERIAL_PUMP1},
|
|
{2013, 0, STR_MATERIAL_PUMP2},
|
|
{2014, 0, STR_MATERIAL_PUMP3},
|
|
{2015, 0, STR_MANUAL1},
|
|
{2016, 0, STR_COIL_CAR1},
|
|
{2017, 0, STR_FABRIC_HEAD1},
|
|
{2018, 0, STR_ROLL_FWD1},
|
|
{2019, 0, STR_ROLL_REV1},
|
|
{2020, 0, STR_ROLL_OVERLOAD1},
|
|
{2021, 0, STR_BLOCK_FABRIC1},
|
|
{2022, 0, STR_MATERIAL1_HIGH},
|
|
{2023, 0, STR_MATERIAL1_LOW},
|
|
{2024, 0, STR_MATERIAL1_IN},
|
|
{2025, 0, STR_MATERIAL1_OUT},
|
|
{2026, 0, STR_MATERIAL1_RECIRC},
|
|
{2027, 0, STR_MATERIAL1_BOTTOM},
|
|
{2028, 0, STR_MATERIAL1_FILL},
|
|
{2029, 0, STR_MATERIAL1_HEAT},
|
|
{2030, 0, STR_MATERIAL2_HIGH},
|
|
{2031, 0, STR_MATERIAL2_LOW},
|
|
{2032, 0, STR_MATERIAL2_IN},
|
|
{2033, 0, STR_MATERIAL2_OUT},
|
|
{2034, 0, STR_MATERIAL2_RECIRC},
|
|
{2035, 0, STR_MATERIAL2_BOTTOM},
|
|
{2036, 0, STR_MATERIAL2_FILL},
|
|
{2037, 0, STR_MATERIAL2_HEAT},
|
|
{2038, 0, STR_MATERIAL2_STIR},
|
|
{2039, 0, STR_MANUAL2},
|
|
{2040, 0, STR_COIL_CAR2},
|
|
{2041, 0, STR_FABRIC_HEAD2},
|
|
{2042, 0, STR_ROLL_FWD2},
|
|
{2043, 0, STR_ROLL_REV2},
|
|
{2044, 0, STR_ROLL_OVERLOAD2},
|
|
{2045, 0, STR_BLOCK_FABRIC2},
|
|
{2046, 0, STR_MANUAL3},
|
|
{2047, 0, STR_COIL_CAR3},
|
|
{2048, 0, STR_FABRIC_HEAD3},
|
|
{2049, 0, STR_ROLL_FWD3},
|
|
{2050, 0, STR_ROLL_REV3},
|
|
{2051, 0, STR_ROLL_OVERLOAD3},
|
|
{2052, 0, STR_BLOCK_FABRIC3},
|
|
{2053, 0, STR_MANUAL4},
|
|
{2054, 0, STR_COIL_CAR4},
|
|
{2055, 0, STR_FABRIC_HEAD4},
|
|
{2056, 0, STR_ROLL_FWD4},
|
|
{2057, 0, STR_ROLL_REV4},
|
|
{2058, 0, STR_ROLL_OVERLOAD4},
|
|
{2059, 0, STR_BLOCK_FABRIC4},
|
|
{2060, 0, STR_MANUAL5},
|
|
{2061, 0, STR_COIL_CAR5},
|
|
{2062, 0, STR_FABRIC_HEAD5},
|
|
{2063, 0, STR_ROLL_FWD5},
|
|
{2064, 0, STR_ROLL_REV5},
|
|
{2065, 0, STR_ROLL_OVERLOAD5},
|
|
{2066, 0, STR_BLOCK_FABRIC5},
|
|
{2067, 0, STR_MANUAL6},
|
|
{2068, 0, STR_COIL_CAR6},
|
|
{2069, 0, STR_FABRIC_HEAD6},
|
|
{2070, 0, STR_ROLL_FWD6},
|
|
{2071, 0, STR_ROLL_REV6},
|
|
{2072, 0, STR_ROLL_OVERLOAD6},
|
|
{2073, 0, STR_BLOCK_FABRIC6},
|
|
{2074, 0, STR_MATERIAL3_HIGH},
|
|
{2075, 0, STR_MATERIAL3_LOW},
|
|
{2076, 0, STR_MATERIAL3_IN},
|
|
{2077, 0, STR_MATERIAL3_OUT},
|
|
{2078, 0, STR_MATERIAL3_RECIRC},
|
|
{2079, 0, STR_MATERIAL3_BOTTOM},
|
|
{2080, 0, STR_MATERIAL3_FILL},
|
|
{2081, 0, STR_MATERIAL3_HEAT},
|
|
{2082, 0, STR_MATERIAL3_STIR},
|
|
};
|
|
// --- DIO 输出(3001~3066)---
|
|
IO_State_DIO do_table[] = {
|
|
{3001, 1, STR_RED}, // 红
|
|
{3002, 0, STR_GREEN}, // 绿
|
|
{3003, 0, STR_YELLOW}, // 黄
|
|
{3004, 0, STR_ALARM}, // 警报
|
|
{3005, 0, STR_HAND_AUTO}, // 手自动
|
|
{3006, 0, STR_CONFIRM}, // 确认
|
|
{3007, 0, STR_PRESSURIZE_VALVE}, // 加压阀
|
|
{3008, 0, STR_DEPRESSURIZE_VALVE}, // 排压阀
|
|
{3009, 0, STR_HEAT_UP_VALVE}, // 升温阀
|
|
{3010, 0, STR_COOL_DOWN_VALVE}, // 降温阀
|
|
{3011, 0, STR_MAIN_PUMP_START}, // 主泵启动
|
|
{3012, 0, STR_FAN_START}, // 风机启动
|
|
{3013, 0, STR_WATER_IN_1}, // 入水1
|
|
{3014, 0, STR_WATER_IN_2}, // 入水2
|
|
{3015, 0, STR_WATER_IN_3}, // 入水3
|
|
{3016, 0, STR_WATER_IN_4}, // 入水4
|
|
{3017, 0, STR_WATER_OUT_1}, // 排水1
|
|
{3018, 0, STR_WATER_OUT_2}, // 排水2
|
|
{3019, 0, STR_WATER_OUT_3}, // 排水3
|
|
{3020, 0, STR_OVERFLOW_VALVE}, // 溢流阀
|
|
{3021, 0, STR_ROLL_FWD_1}, // 布轮正转1
|
|
{3022, 0, STR_ROLL_REV_1}, // 布轮反转1
|
|
{3023, 0, STR_ROLL_FWD_2}, // 布轮正转2
|
|
{3024, 0, STR_ROLL_REV_2}, // 布轮反转2
|
|
{3025, 0, STR_ROLL_FWD_3}, // 布轮正转3
|
|
{3026, 0, STR_ROLL_REV_3}, // 布轮反转3
|
|
{3027, 0, STR_ROLL_FWD_4}, // 布轮正转4
|
|
{3028, 0, STR_ROLL_REV_4}, // 布轮反转4
|
|
{3029, 0, STR_ROLL_FWD_5}, // 布轮正转5
|
|
{3030, 0, STR_ROLL_REV_5}, // 布轮反转5
|
|
{3031, 0, STR_ROLL_FWD_6}, // 布轮正转6
|
|
{3032, 0, STR_ROLL_REV_6}, // 布轮反转6
|
|
{3033, 0, STR_TANK1_PUMP}, // 药缸1泵
|
|
{3034, 0, STR_TANK1_WATER_IN_1}, // 药缸1入水1
|
|
{3035, 0, STR_TANK1_WATER_IN_2}, // 药缸1入水2
|
|
{3036, 0, STR_TANK1_RETURN_WATER}, // 药缸1回水
|
|
{3037, 0, STR_TANK1_HEAT}, // 药缸1加热
|
|
{3038, 0, STR_TANK1_STIRRER}, // 药缸1搅拌器
|
|
{3039, 0, STR_TANK1_STIR_VALVE}, // 药缸1搅拌阀
|
|
{3040, 0, STR_TANK1_FILL_VALVE}, // 药缸1加料阀
|
|
{3041, 0, STR_TANK1_BYPASS_VALVE}, // 药缸1比例旁通阀
|
|
{3042, 0, STR_TANK1_DRAIN_VALVE}, // 药缸1排水阀
|
|
{3043, 0, STR_TANK2_PUMP}, // 药缸2泵
|
|
{3044, 0, STR_TANK2_WATER_IN_1}, // 药缸2入水1
|
|
{3045, 0, STR_TANK2_WATER_IN_2}, // 药缸2入水2
|
|
{3046, 0, STR_TANK2_RETURN_WATER}, // 药缸2回水
|
|
{3047, 0, STR_TANK2_HEAT}, // 药缸2加热
|
|
{3048, 0, STR_TANK2_STIRRER}, // 药缸2搅拌器
|
|
{3049, 0, STR_TANK2_STIR_VALVE}, // 药缸2搅拌阀
|
|
{3050, 0, STR_TANK2_FILL_VALVE}, // 药缸2加料阀
|
|
{3051, 0, STR_TANK2_BYPASS_VALVE}, // 药缸2比例旁通阀
|
|
{3052, 0, STR_TANK2_DRAIN_VALVE}, // 药缸2排水阀
|
|
{3053, 0, STR_TANK3_PUMP}, // 药缸3泵
|
|
{3054, 0, STR_TANK3_WATER_IN_1}, // 药缸3入水1
|
|
{3055, 0, STR_TANK3_WATER_IN_2}, // 药缸3入水2
|
|
{3056, 0, STR_TANK3_RETURN_WATER}, // 药缸3回水
|
|
{3057, 0, STR_TANK3_HEAT}, // 药缸3加热
|
|
{3058, 0, STR_TANK3_STIRRER}, // 药缸3搅拌器
|
|
{3059, 0, STR_TANK3_STIR_VALVE}, // 药缸3搅拌阀
|
|
{3060, 0, STR_TANK3_FILL_VALVE}, // 药缸3加料阀
|
|
{3061, 0, STR_TANK3_BYPASS_VALVE}, // 药缸3比例旁通阀
|
|
{3062, 0, STR_TANK3_DRAIN_VALVE}, // 药缸3排水阀
|
|
{3063, 0, STR_ROLL_REV_12}, // 布轮反转12
|
|
{3064, 0, STR_DRAIN_PUMP}, // 排水泵
|
|
{3065, 0, STR_HEAT_EXCHANGER_CONDENSATE}, // 热交换器冷凝水
|
|
{3066, 0, STR_HEAT_EXCHANGER_COOLING_WATER}, // 交换器排冷却水
|
|
};
|
|
|
|
//AIO状态表
|
|
IO_State_AIO ai_table[] = {
|
|
// --- AIO 输入(4001~4022)---
|
|
{4001, 0, STR_AIO_TEMP1},
|
|
{4002, 0, STR_AIO_TEMP2},
|
|
{4003, 0, STR_AIO_TEMP3},
|
|
{4004, 0, STR_AIO_TEMP4},
|
|
{4005, 0, STR_AIO_TEMP5},
|
|
{4006, 0, STR_AIO_FLOW1},
|
|
{4007, 0, STR_AIO_LEVEL1},
|
|
{4008, 0, STR_AIO_LEVEL2},
|
|
{4009, 0, STR_AIO_LEVEL3},
|
|
{4010, 0, STR_AIO_LEVEL4},
|
|
{4011, 0, STR_AIO_MAIN_PRESSURE},
|
|
{4012, 0, STR_AIO_NOZZLE_PRESSURE},
|
|
{4013, 0, STR_AIO_NOZZLE_FLOW},
|
|
{4014, 0, STR_AIO_AIR_FLOW},
|
|
{4015, 0, STR_AIO_POWER},
|
|
{4016, 0, STR_AIO_FABRIC_CYCLE1},
|
|
{4017, 0, STR_AIO_FABRIC_CYCLE2},
|
|
{4018, 0, STR_AIO_FABRIC_CYCLE3},
|
|
{4019, 0, STR_AIO_FABRIC_CYCLE4},
|
|
{4020, 0, STR_AIO_FABRIC_CYCLE5},
|
|
{4021, 0, STR_AIO_FABRIC_CYCLE6},
|
|
{4022, 0, STR_AIO_PH},
|
|
};
|
|
// --- AO 输出(5001~5014)---
|
|
IO_State_AIO ao_table[] = {
|
|
{5001, 0, STR_AIO_HEAT_RATIO},
|
|
{5002, 0, STR_AIO_COOL_RATIO},
|
|
{5003, 0, STR_AIO_MAIN_PUMP_SPEED},
|
|
{5004, 0, STR_AIO_FAN_SPEED},
|
|
{5005, 0, STR_AIO_FILL_RATIO1},
|
|
{5006, 0, STR_AIO_FILL_RATIO2},
|
|
{5007, 0, STR_AIO_FILL_RATIO3},
|
|
{5008, 0, STR_AIO_FABRIC_SWING},
|
|
{5009, 0, STR_AIO_LIFT1},
|
|
{5010, 0, STR_AIO_LIFT2},
|
|
{5011, 0, STR_AIO_LIFT3},
|
|
{5012, 0, STR_AIO_LIFT4},
|
|
{5013, 0, STR_AIO_LIFT5},
|
|
{5014, 0, STR_AIO_LIFT6}
|
|
};
|
|
//步骤数据表最大99
|
|
IO_STEP_DATA step_table[99];
|
|
|
|
const unsigned char DI_TABLE_SIZE = sizeof(di_table) / sizeof(di_table[0]);
|
|
const unsigned char DO_TABLE_SIZE = sizeof(do_table) / sizeof(do_table[0]);
|
|
const unsigned char AI_TABLE_SIZE = sizeof(ai_table) / sizeof(ai_table[0]);
|
|
const unsigned char AO_TABLE_SIZE = sizeof(ao_table) / sizeof(ao_table[0]);
|
|
const unsigned char DATA_TABLE_SIZE = sizeof(data_table) / sizeof(data_table[0]);
|
|
|
|
void DATA_Table_Init(){
|
|
for(int i=0;i<DI_TABLE_SIZE;i++)
|
|
{
|
|
di_table[i].current_state = 0;
|
|
}
|
|
for(int i=0;i<DO_TABLE_SIZE;i++)
|
|
{
|
|
do_table[i].current_state = 0;
|
|
}
|
|
|
|
for(int i=0;i<AI_TABLE_SIZE;i++)
|
|
{
|
|
ai_table[i].current_Value = 0;
|
|
}
|
|
for(int i=0;i<AO_TABLE_SIZE;i++)
|
|
{
|
|
ao_table[i].current_Value = 0;
|
|
}
|
|
|
|
for(int i=0;i<DATA_TABLE_SIZE;i++)
|
|
{
|
|
data_table[i].current_data = 0;
|
|
}
|
|
for(int i=0;i<99;i++)
|
|
{
|
|
step_table[i].RUN = 0;
|
|
step_table[i].Parameter1 = 0;
|
|
step_table[i].Parameter2 = 0;
|
|
step_table[i].Parameter3 = 0;
|
|
step_table[i].Parameter4 = 0;
|
|
step_table[i].Parameter5 = 0;
|
|
step_table[i].Parameter1_S1 = 0;
|
|
step_table[i].Parameter2_S1 = 0;
|
|
step_table[i].Parameter3_S1 = 0;
|
|
step_table[i].Parameter4_S1 = 0;
|
|
step_table[i].Parameter5_S1 = 0;
|
|
step_table[i].Parameter1_S2 = 0;
|
|
step_table[i].Parameter2_S2 = 0;
|
|
step_table[i].Parameter3_S2 = 0;
|
|
step_table[i].Parameter4_S2 = 0;
|
|
step_table[i].Parameter5_S2 = 0;
|
|
step_table[i].Parameter1_S3 = 0;
|
|
step_table[i].Parameter2_S3 = 0;
|
|
step_table[i].Parameter3_S3 = 0;
|
|
step_table[i].Parameter4_S3 = 0;
|
|
step_table[i].Parameter5_S3 = 0;
|
|
rt_snprintf(step_table[i].StepID, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S1, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S2, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S3, 3,"000");
|
|
}
|
|
}
|
|
//运行指令:开始
|
|
void DATA_INSTRUCTION_START(char p[25]){
|
|
for(int i=0;i<99;i++)
|
|
{
|
|
step_table[i].RUN = 0;
|
|
step_table[i].Parameter1 = 0;
|
|
step_table[i].Parameter2 = 0;
|
|
step_table[i].Parameter3 = 0;
|
|
step_table[i].Parameter4 = 0;
|
|
step_table[i].Parameter5 = 0;
|
|
step_table[i].Parameter1_S1 = 0;
|
|
step_table[i].Parameter2_S1 = 0;
|
|
step_table[i].Parameter3_S1 = 0;
|
|
step_table[i].Parameter4_S1 = 0;
|
|
step_table[i].Parameter5_S1 = 0;
|
|
step_table[i].Parameter1_S2 = 0;
|
|
step_table[i].Parameter2_S2 = 0;
|
|
step_table[i].Parameter3_S2 = 0;
|
|
step_table[i].Parameter4_S2 = 0;
|
|
step_table[i].Parameter5_S2 = 0;
|
|
step_table[i].Parameter1_S3 = 0;
|
|
step_table[i].Parameter2_S3 = 0;
|
|
step_table[i].Parameter3_S3 = 0;
|
|
step_table[i].Parameter4_S3 = 0;
|
|
step_table[i].Parameter5_S3 = 0;
|
|
rt_snprintf(step_table[i].StepID, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S1, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S2, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S3, 3,"000");
|
|
}
|
|
Pump = 0;TC_H = 0;TC_L = 0;Fan = 0;
|
|
Swing = 0;Pull1 = 0;Pull2 = 0;Pull3 = 0;
|
|
Pull4 = 0;Pull5 = 0;Pull6 = 0;StepN = 0;
|
|
STA = 0;STB = 0;STC = 0;Time = 0;
|
|
P6 = 0;P7 = 0;P8 = 0;P9 = 0;P10 = 0;
|
|
P1 = 0;P2 =0;P3 =0;P4 =0;P5 =0;
|
|
P1S1 =0;P2S1 =0;P3S1 =0;P4S1 =0;
|
|
P5S1 =0;P1S2 =0;P2S2 =0;P3S2 =0;
|
|
P4S2 =0;P5S2 =0;P1S3 =0;P2S3 =0;
|
|
P3S3 =0;P4S3 =0;P5S3 =0;
|
|
rt_snprintf(StepID, 3,"000");
|
|
rt_snprintf(SIDS1, 3,"000");
|
|
rt_snprintf(SIDS2, 3,"000");
|
|
rt_snprintf(SIDS3, 3,"000");
|
|
}
|
|
//运行指令:结束
|
|
void DATA_INSTRUCTION_STOP(){
|
|
for(int i=0;i<99;i++)
|
|
{
|
|
step_table[i].RUN = 0;
|
|
step_table[i].Parameter1 = 0;
|
|
step_table[i].Parameter2 = 0;
|
|
step_table[i].Parameter3 = 0;
|
|
step_table[i].Parameter4 = 0;
|
|
step_table[i].Parameter5 = 0;
|
|
step_table[i].Parameter1_S1 = 0;
|
|
step_table[i].Parameter2_S1 = 0;
|
|
step_table[i].Parameter3_S1 = 0;
|
|
step_table[i].Parameter4_S1 = 0;
|
|
step_table[i].Parameter5_S1 = 0;
|
|
step_table[i].Parameter1_S2 = 0;
|
|
step_table[i].Parameter2_S2 = 0;
|
|
step_table[i].Parameter3_S2 = 0;
|
|
step_table[i].Parameter4_S2 = 0;
|
|
step_table[i].Parameter5_S2 = 0;
|
|
step_table[i].Parameter1_S3 = 0;
|
|
step_table[i].Parameter2_S3 = 0;
|
|
step_table[i].Parameter3_S3 = 0;
|
|
step_table[i].Parameter4_S3 = 0;
|
|
step_table[i].Parameter5_S3 = 0;
|
|
rt_snprintf(step_table[i].StepID, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S1, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S2, 3,"000");
|
|
rt_snprintf(step_table[i].StepID_S3, 3,"000");
|
|
}
|
|
Pump = 0;TC_H = 0;TC_L = 0;Fan = 0;
|
|
Swing = 0;Pull1 = 0;Pull2 = 0;Pull3 = 0;
|
|
Pull4 = 0;Pull5 = 0;Pull6 = 0;StepN = 0;
|
|
STA = 0;STB = 0;STC = 0;Time = 0;
|
|
P6 = 0;P7 = 0;P8 = 0;P9 = 0;P10 = 0;
|
|
P1 = 0;P2 =0;P3 =0;P4 =0;P5 =0;
|
|
P1S1 =0;P2S1 =0;P3S1 =0;P4S1 =0;
|
|
P5S1 =0;P1S2 =0;P2S2 =0;P3S2 =0;
|
|
P4S2 =0;P5S2 =0;P1S3 =0;P2S3 =0;
|
|
P3S3 =0;P4S3 =0;P5S3 =0;
|
|
rt_snprintf(StepID, 3,"000");
|
|
rt_snprintf(SIDS1, 3,"000");
|
|
rt_snprintf(SIDS2, 3,"000");
|
|
rt_snprintf(SIDS3, 3,"000");
|
|
}
|
|
|
|
/**
|
|
* 根据 pin 查找 current_Value
|
|
* @param pin: 要查询的 PLC 地址(如 4001)
|
|
* @return: 找到则返回 current_Value;未找到返回 INT16_MIN
|
|
*/
|
|
rt_int16_t get_ai_value(int pin)
|
|
{
|
|
for (int i = 0; i < AI_TABLE_SIZE; i++) {
|
|
if (ai_table[i].pin == pin) {
|
|
return ai_table[i].current_Value;
|
|
}
|
|
}
|
|
return 0; // 表示未找到
|
|
}
|
|
void get_ao_value(int pin,int16_t dat)
|
|
{
|
|
for (int i = 0; i < AO_TABLE_SIZE; i++) {
|
|
if (ao_table[i].pin == pin) {
|
|
ao_table[i].current_Value = dat;
|
|
}
|
|
}
|
|
}
|
|
|
|
void table_thread_entry(void *parameter)
|
|
{
|
|
while (1)
|
|
{
|
|
rt_thread_delay(1000);
|
|
|
|
//Ai输入
|
|
MTT = get_ai_value(4001)/10.0f;
|
|
MUT = get_ai_value(4002)/10.0f;
|
|
STTA = get_ai_value(4003)/10.0f;
|
|
STTB = get_ai_value(4004)/10.0f;
|
|
STTC = get_ai_value(4005)/10.0f;
|
|
MTL = get_ai_value(4007);
|
|
STLA = get_ai_value(4008);
|
|
STLB = get_ai_value(4009);
|
|
STLC = get_ai_value(4010);
|
|
MTH = get_ai_value(4022);
|
|
|
|
//Ao输出
|
|
get_ao_value(5001,TC_H);
|
|
get_ao_value(5002,TC_L);
|
|
get_ao_value(5003,Fan);
|
|
get_ao_value(5004,Pump);
|
|
get_ao_value(5005,STA);
|
|
get_ao_value(5006,STB);
|
|
get_ao_value(5007,STC);
|
|
get_ao_value(5008,Swing);
|
|
get_ao_value(5009,Pull1);
|
|
get_ao_value(5010,Pull2);
|
|
get_ao_value(5011,Pull3);
|
|
get_ao_value(5012,Pull4);
|
|
get_ao_value(5013,Pull5);
|
|
get_ao_value(5014,Pull6);
|
|
}
|
|
}
|
|
|
|
extern struct rt_memheap sram_DTCMRAM;
|
|
static struct rt_thread dat_table_thread;
|
|
static void *dat_comm_stack __attribute__((aligned(4)))= RT_NULL ;
|
|
int data_table_th(void)
|
|
{
|
|
rt_err_t dat_err;
|
|
|
|
dat_comm_stack = rt_memheap_alloc(&sram_DTCMRAM, 1024);
|
|
dat_err = rt_thread_init(&dat_table_thread, "dat_tab", table_thread_entry, RT_NULL,dat_comm_stack, 1024, 10, 10);
|
|
|
|
if(dat_err != RT_EOK)
|
|
{
|
|
LOG_E("Failed to create data table thread!");
|
|
return -1;
|
|
}
|
|
rt_thread_startup(&dat_table_thread);
|
|
return 0;
|
|
}
|
|
INIT_APP_EXPORT(data_table_th);
|
|
|