Commit 4f36d69e authored by 郑萍's avatar 郑萍

feat:增加水温文件

parent fa0f7a76
......@@ -847,7 +847,7 @@
<Group>
<GroupName>Application</GroupName>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
......@@ -995,6 +995,18 @@
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>59</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\..\Source\Application\Data_Coolant.c</PathWithFileName>
<FilenameWithoutPath>Data_Coolant.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
......@@ -1005,7 +1017,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>59</FileNumber>
<FileNumber>60</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1017,7 +1029,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>60</FileNumber>
<FileNumber>61</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1029,7 +1041,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>61</FileNumber>
<FileNumber>62</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1041,7 +1053,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>62</FileNumber>
<FileNumber>63</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1053,7 +1065,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>63</FileNumber>
<FileNumber>64</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1065,7 +1077,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>64</FileNumber>
<FileNumber>65</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1077,7 +1089,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>65</FileNumber>
<FileNumber>66</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1089,7 +1101,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>66</FileNumber>
<FileNumber>67</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1101,7 +1113,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>67</FileNumber>
<FileNumber>68</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1113,7 +1125,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>68</FileNumber>
<FileNumber>69</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1125,7 +1137,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>69</FileNumber>
<FileNumber>70</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1137,7 +1149,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>70</FileNumber>
<FileNumber>71</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1149,7 +1161,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>71</FileNumber>
<FileNumber>72</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1161,7 +1173,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>72</FileNumber>
<FileNumber>73</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1173,7 +1185,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>73</FileNumber>
<FileNumber>74</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1185,7 +1197,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>74</FileNumber>
<FileNumber>75</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1197,7 +1209,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>75</FileNumber>
<FileNumber>76</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1209,7 +1221,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>76</FileNumber>
<FileNumber>77</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1221,7 +1233,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>77</FileNumber>
<FileNumber>78</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1233,7 +1245,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>78</FileNumber>
<FileNumber>79</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1245,7 +1257,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>79</FileNumber>
<FileNumber>80</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1257,7 +1269,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>80</FileNumber>
<FileNumber>81</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1269,7 +1281,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>81</FileNumber>
<FileNumber>82</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1281,7 +1293,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>82</FileNumber>
<FileNumber>83</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1293,7 +1305,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>83</FileNumber>
<FileNumber>84</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1305,7 +1317,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>84</FileNumber>
<FileNumber>85</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1317,7 +1329,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>85</FileNumber>
<FileNumber>86</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1329,7 +1341,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>86</FileNumber>
<FileNumber>87</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1341,7 +1353,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>87</FileNumber>
<FileNumber>88</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1353,7 +1365,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>88</FileNumber>
<FileNumber>89</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1365,7 +1377,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>89</FileNumber>
<FileNumber>90</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1377,7 +1389,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>90</FileNumber>
<FileNumber>91</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1389,7 +1401,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>91</FileNumber>
<FileNumber>92</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1401,7 +1413,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>92</FileNumber>
<FileNumber>93</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1413,7 +1425,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>93</FileNumber>
<FileNumber>94</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1425,7 +1437,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>94</FileNumber>
<FileNumber>95</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1437,7 +1449,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>95</FileNumber>
<FileNumber>96</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1449,7 +1461,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>96</FileNumber>
<FileNumber>97</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1461,7 +1473,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>97</FileNumber>
<FileNumber>98</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1473,7 +1485,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>98</FileNumber>
<FileNumber>99</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1485,7 +1497,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>99</FileNumber>
<FileNumber>100</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1497,7 +1509,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>100</FileNumber>
<FileNumber>101</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1509,7 +1521,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>101</FileNumber>
<FileNumber>102</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1521,7 +1533,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>102</FileNumber>
<FileNumber>103</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1533,7 +1545,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>103</FileNumber>
<FileNumber>104</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1545,7 +1557,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>104</FileNumber>
<FileNumber>105</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1557,7 +1569,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>105</FileNumber>
<FileNumber>106</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1569,7 +1581,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>106</FileNumber>
<FileNumber>107</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1581,7 +1593,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>107</FileNumber>
<FileNumber>108</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1593,7 +1605,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>108</FileNumber>
<FileNumber>109</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1605,7 +1617,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>109</FileNumber>
<FileNumber>110</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1617,7 +1629,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>110</FileNumber>
<FileNumber>111</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1629,7 +1641,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>111</FileNumber>
<FileNumber>112</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1641,7 +1653,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>112</FileNumber>
<FileNumber>113</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......@@ -1653,7 +1665,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>113</FileNumber>
<FileNumber>114</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
......
......@@ -688,6 +688,11 @@
<FileType>5</FileType>
<FilePath>..\..\..\..\Source\Application\Data_VSpeed.h</FilePath>
</File>
<File>
<FileName>Data_Coolant.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\..\Source\Application\Data_Coolant.c</FilePath>
</File>
</Files>
</Group>
<Group>
......
#include "Data_Coolant.h"
#include "Components.h"
#if 0
#define FUEL_DATA_TIME 25u /*这里填写多长时间采集一个数据,单位ms*/
#define FUEL_DATA_NUM 20u /*燃油电阻采集数据总数 最大255*/
#define FUEL_CAL_START 5u /*数据排序后取中间部分计算平均:起始*/
#define FUEL_CAL_END 15u /*数据排序后取中间部分计算平均:结束*/
#define Coolant_DATA_TIME 25u /*这里填写多长时间采集一个数据,单位ms*/
#define Coolant_DATA_NUM 20u /*燃油电阻采集数据总数 最大255*/
#define Coolant_CAL_START 5u /*数据排序后取中间部分计算平均:起始*/
#define Coolant_CAL_END 15u /*数据排序后取中间部分计算平均:结束*/
#define RETURN_DIFFERENCE 25u /*判断上升或下降的回差,精度0.1*/
#define FUEL_SEG_UP 0u
#define FUEL_SEG_DOWN 1u
#define Coolant_SEG_UP 0u
#define Coolant_SEG_DOWN 1u
uint16_t g_u16FuelData[FUEL_DATA_NUM];
uint8_t g_u8FuelDataCount = 0u;
uint16_t g_u16CoolantData[Coolant_DATA_NUM];
uint8_t g_u8CoolantDataCount = 0u;
uint16_t FuelR = 0u; /*滤波后的燃油电阻,精度0.1*/
static uint16_t FuelRBak = 0;
uint16_t CoolantR = 0u; /*滤波后的燃油电阻,精度0.1*/
static uint16_t CoolantRBak = 0;
uint8_t g_u8DesFuelSetp = 0u;
uint8_t g_u8CurFuelSetp = 0u;
uint8_t g_u8FuelInitFlag = 0u;
uint8_t g_u8FuelStateInitFlag = 0u;
uint8_t g_u8FuelDir = FUEL_SEG_UP;
FuelSensorSts_t FuelSensorState = FuelSensorNormal;
uint16_t g_u16FuelSensorNormalTime = 0u;
uint16_t g_u16FuelSensorShortTime = 0u;
uint16_t g_u16FuelSensorOpenTime = 0u;
uint8_t g_u8FuelADCompleteFlg = 0u;
uint8_t g_u8DesCoolantSetp = 0u;
uint8_t g_u8CurCoolantSetp = 0u;
uint8_t g_u8CoolantInitFlag = 0u;
uint8_t g_u8CoolantStateInitFlag = 0u;
uint8_t g_u8CoolantDir = Coolant_SEG_UP;
CoolantSensorSts_t CoolantSensorState = CoolantSensorNormal;
uint16_t g_u16CoolantSensorNormalTime = 0u;
uint16_t g_u16CoolantSensorShortTime = 0u;
uint16_t g_u16CoolantSensorOpenTime = 0u;
uint8_t g_u8CoolantADCompleteFlg = 0u;
void Fuel_KL30_Init(void)
void Coolant_KL30_Init(void)
{
g_u8DesFuelSetp = 0u;
g_u8CurFuelSetp = 0u;
g_u8FuelInitFlag = 1u;
g_u8FuelStateInitFlag = 1u;
g_u8FuelDir = FUEL_SEG_UP;
FuelSensorState = FuelSensorNormal;
g_u16FuelSensorNormalTime = 0u;
g_u16FuelSensorShortTime = 0u;
g_u16FuelSensorOpenTime = 0u;
g_u8FuelADCompleteFlg = 0u;
g_u8DesCoolantSetp = 0u;
g_u8CurCoolantSetp = 0u;
g_u8CoolantInitFlag = 1u;
g_u8CoolantStateInitFlag = 1u;
g_u8CoolantDir = Coolant_SEG_UP;
CoolantSensorState = CoolantSensorNormal;
g_u16CoolantSensorNormalTime = 0u;
g_u16CoolantSensorShortTime = 0u;
g_u16CoolantSensorOpenTime = 0u;
g_u8CoolantADCompleteFlg = 0u;
}
void Fuel_KL15_Init(void)
void Coolant_KL15_Init(void)
{
g_u8DesFuelSetp = 0u;
g_u8CurFuelSetp = 0u;
g_u8FuelInitFlag = 1u;
g_u8FuelStateInitFlag = 1u;
g_u8FuelDir = FUEL_SEG_UP;
FuelSensorState = FuelSensorNormal;
g_u16FuelSensorNormalTime = 0u;
g_u16FuelSensorShortTime = 0u;
g_u16FuelSensorOpenTime = 0u;
g_u8FuelADCompleteFlg = 0u;
g_u8DesCoolantSetp = 0u;
g_u8CurCoolantSetp = 0u;
g_u8CoolantInitFlag = 1u;
g_u8CoolantStateInitFlag = 1u;
g_u8CoolantDir = Coolant_SEG_UP;
CoolantSensorState = CoolantSensorNormal;
g_u16CoolantSensorNormalTime = 0u;
g_u16CoolantSensorShortTime = 0u;
g_u16CoolantSensorOpenTime = 0u;
g_u8CoolantADCompleteFlg = 0u;
}
void Fuel_R_Cal(uint8_t deltaTime)
void Coolant_R_Cal(uint8_t deltaTime)
{
uint16_t FuelRes = 0;
uint16_t CoolantRes = 0;
uint8_t i, j;
uint32_t temp32;
static uint16_t timeCount = 0;
if(g_u8FuelStateInitFlag)
if(g_u8CoolantStateInitFlag)
{
FuelR = ADC_Read_Signal(ADC_CH_FUEL1);
// CoolantR = ADC_Read_Signal(ADC_CH_Coolant1);
}
if (timeCount >= FUEL_DATA_TIME)
if (timeCount >= Coolant_DATA_TIME)
{
timeCount = 0;
if (g_u8FuelDataCount < FUEL_DATA_NUM)
if (g_u8CoolantDataCount < Coolant_DATA_NUM)
{
/*获取燃油电阻*/
FuelRes = ADC_Read_Signal(ADC_CH_FUEL1);
// CoolantRes = ADC_Read_Signal(ADC_CH_Coolant1);
/*四舍五入*/
if (FuelRes < 3100)
if (CoolantRes < 3100)
{
if (FuelRes % 10 >= 5)
if (CoolantRes % 10 >= 5)
{
FuelRes += 5;
CoolantRes += 5;
}
}
else
{
FuelRes = 0xFFFF;
CoolantRes = 0xFFFF;
}
/*由小到大插入数据*/
for (i = 0; i < g_u8FuelDataCount; i++)
for (i = 0; i < g_u8CoolantDataCount; i++)
{
if (FuelRes < g_u16FuelData[i])
if (CoolantRes < g_u16CoolantData[i])
{
break;
}
}
for (j = g_u8FuelDataCount; j > i; j--)
for (j = g_u8CoolantDataCount; j > i; j--)
{
g_u16FuelData[j] = g_u16FuelData[j - 1];
g_u16CoolantData[j] = g_u16CoolantData[j - 1];
}
g_u16FuelData[i] = FuelRes;
g_u8FuelDataCount++;
g_u16CoolantData[i] = CoolantRes;
g_u8CoolantDataCount++;
}
else
{
/*一组数据采集完毕,取中间部分计算平均值*/
temp32 = 0;
for (i = FUEL_CAL_START; i < FUEL_CAL_END; i++)
for (i = Coolant_CAL_START; i < Coolant_CAL_END; i++)
{
temp32 += g_u16FuelData[i];
temp32 += g_u16CoolantData[i];
}
FuelR = temp32 / (FUEL_CAL_END - FUEL_CAL_START);
g_u8FuelDataCount = 0;
g_u8FuelADCompleteFlg = 1;
CoolantR = temp32 / (Coolant_CAL_END - Coolant_CAL_START);
g_u8CoolantDataCount = 0;
g_u8CoolantADCompleteFlg = 1;
}
}
timeCount += deltaTime;
}
void Fuel_State_Check(uint8_t deltaTime)
void Coolant_State_Check(uint8_t deltaTime)
{
if (FuelR < 30)
if (CoolantR < 30)
{ /*短路3*/
g_u16FuelSensorOpenTime = 0;
g_u16FuelSensorNormalTime = 0;
if ((g_u16FuelSensorShortTime > 3000) || ((g_u8FuelStateInitFlag) && (g_u16FuelSensorShortTime > 3000)))
g_u16CoolantSensorOpenTime = 0;
g_u16CoolantSensorNormalTime = 0;
if ((g_u16CoolantSensorShortTime > 3000) || ((g_u8CoolantStateInitFlag) && (g_u16CoolantSensorShortTime > 3000)))
{
FuelSensorState = FuelSensorShortCircuit;
g_u8DesFuelSetp = 0;
g_u8CurFuelSetp = 6;
g_u8FuelStateInitFlag = 0;
g_u8FuelInitFlag = 1;
g_u8FuelDir = FUEL_SEG_UP;
CoolantSensorState = CoolantSensorShortCircuit;
g_u8DesCoolantSetp = 0;
g_u8CurCoolantSetp = 6;
g_u8CoolantStateInitFlag = 0;
g_u8CoolantInitFlag = 1;
g_u8CoolantDir = Coolant_SEG_UP;
}
else
{
g_u16FuelSensorShortTime += deltaTime;
g_u16CoolantSensorShortTime += deltaTime;
}
}
else if (FuelR > 3100)
else if (CoolantR > 3100)
{ /*开路 310*/
g_u16FuelSensorShortTime = 0;
g_u16FuelSensorNormalTime = 0;
if ((g_u16FuelSensorOpenTime > 3000) || ((g_u8FuelStateInitFlag) && (g_u16FuelSensorOpenTime > 3000)))
g_u16CoolantSensorShortTime = 0;
g_u16CoolantSensorNormalTime = 0;
if ((g_u16CoolantSensorOpenTime > 3000) || ((g_u8CoolantStateInitFlag) && (g_u16CoolantSensorOpenTime > 3000)))
{
FuelSensorState = FuelSensorOpenCircuit;
g_u8DesFuelSetp = 0;
g_u8CurFuelSetp = 0;
g_u8FuelStateInitFlag = 0;
g_u8FuelInitFlag = 1;
g_u8FuelDir = FUEL_SEG_UP;
CoolantSensorState = CoolantSensorOpenCircuit;
g_u8DesCoolantSetp = 0;
g_u8CurCoolantSetp = 0;
g_u8CoolantStateInitFlag = 0;
g_u8CoolantInitFlag = 1;
g_u8CoolantDir = Coolant_SEG_UP;
}
else
{
g_u16FuelSensorOpenTime += deltaTime;
g_u16CoolantSensorOpenTime += deltaTime;
}
}
else
{
g_u16FuelSensorShortTime = 0;
g_u16FuelSensorOpenTime = 0;
if (g_u16FuelSensorNormalTime > 3000)
g_u16CoolantSensorShortTime = 0;
g_u16CoolantSensorOpenTime = 0;
if (g_u16CoolantSensorNormalTime > 3000)
{
FuelSensorState = FuelSensorNormal;
g_u8FuelStateInitFlag = 0;
CoolantSensorState = CoolantSensorNormal;
g_u8CoolantStateInitFlag = 0;
}
else
{
g_u16FuelSensorNormalTime += deltaTime;
g_u16CoolantSensorNormalTime += deltaTime;
}
}
}
void Fuel_Gauges_Cal(uint8_t deltaTime)
void Coolant_Gauges_Cal(uint8_t deltaTime)
{
static uint16_t time = 0;
if ((FuelSensorState == FuelSensorNormal) && (FuelR <= 3100) && (FuelR >= 30))
if ((CoolantSensorState == CoolantSensorNormal) && (CoolantR <= 3100) && (CoolantR >= 30))
{
/*采集完第一组数据后,开始计算燃油格数*/
if (g_u8FuelADCompleteFlg)
if (g_u8CoolantADCompleteFlg)
{
if (g_u8FuelInitFlag)
if (g_u8CoolantInitFlag)
{
FuelRBak = FuelR;
CoolantRBak = CoolantR;
}
/*根据回差计算走动方向*/
if (g_u8FuelDir == FUEL_SEG_UP)
if (g_u8CoolantDir == Coolant_SEG_UP)
{
if (FuelR >= FuelRBak + RETURN_DIFFERENCE)
if (CoolantR >= CoolantRBak + RETURN_DIFFERENCE)
{
g_u8FuelDir = FUEL_SEG_DOWN;
FuelRBak = FuelR;
g_u8CoolantDir = Coolant_SEG_DOWN;
CoolantRBak = CoolantR;
}
if (FuelR < FuelRBak)
if (CoolantR < CoolantRBak)
{
FuelRBak = FuelR;
CoolantRBak = CoolantR;
}
}
else
{
if (FuelRBak >= FuelR + RETURN_DIFFERENCE)
if (CoolantRBak >= CoolantR + RETURN_DIFFERENCE)
{
g_u8FuelDir = FUEL_SEG_UP;
FuelRBak = FuelR;
g_u8CoolantDir = Coolant_SEG_UP;
CoolantRBak = CoolantR;
}
if (FuelR > FuelRBak)
if (CoolantR > CoolantRBak)
{
FuelRBak = FuelR;
CoolantRBak = CoolantR;
}
}
/*计算目标格数*/
if (g_u8FuelDir == FUEL_SEG_UP)
if (g_u8CoolantDir == Coolant_SEG_UP)
{
if (((g_u8DesFuelSetp == 5) || g_u8FuelInitFlag) && (FuelR < 30))
if (((g_u8DesCoolantSetp == 5) || g_u8CoolantInitFlag) && (CoolantR < 30))
{
g_u8DesFuelSetp = 6;
g_u8DesCoolantSetp = 6;
}
else if (((g_u8DesFuelSetp == 4) || g_u8FuelInitFlag) && (FuelR < 160))
else if (((g_u8DesCoolantSetp == 4) || g_u8CoolantInitFlag) && (CoolantR < 160))
{
g_u8DesFuelSetp = 5;
g_u8DesCoolantSetp = 5;
}
else if (((g_u8DesFuelSetp == 3) || g_u8FuelInitFlag) && (FuelR < 300))
else if (((g_u8DesCoolantSetp == 3) || g_u8CoolantInitFlag) && (CoolantR < 300))
{
g_u8DesFuelSetp = 4;
g_u8DesCoolantSetp = 4;
}
else if (((g_u8DesFuelSetp == 2) || g_u8FuelInitFlag) && (FuelR < 500))
else if (((g_u8DesCoolantSetp == 2) || g_u8CoolantInitFlag) && (CoolantR < 500))
{
g_u8DesFuelSetp = 3;
g_u8DesCoolantSetp = 3;
}
else if (((g_u8DesFuelSetp == 1) || g_u8FuelInitFlag) && (FuelR < 790))
else if (((g_u8DesCoolantSetp == 1) || g_u8CoolantInitFlag) && (CoolantR < 790))
{
g_u8DesFuelSetp = 2;
g_u8DesCoolantSetp = 2;
}
else if (((g_u8DesFuelSetp == 0) || g_u8FuelInitFlag) && (FuelR <= 3100))
else if (((g_u8DesCoolantSetp == 0) || g_u8CoolantInitFlag) && (CoolantR <= 3100))
{
g_u8DesFuelSetp = 1;
g_u8DesCoolantSetp = 1;
}
}
else if (g_u8FuelDir == FUEL_SEG_DOWN)
else if (g_u8CoolantDir == Coolant_SEG_DOWN)
{
if (((g_u8DesFuelSetp == 1) || g_u8FuelInitFlag) && (FuelR > 3100))
if (((g_u8DesCoolantSetp == 1) || g_u8CoolantInitFlag) && (CoolantR > 3100))
{
g_u8DesFuelSetp = 0;
g_u8DesCoolantSetp = 0;
}
else if (((g_u8DesFuelSetp == 2) || g_u8FuelInitFlag) && (FuelR >= 790))
else if (((g_u8DesCoolantSetp == 2) || g_u8CoolantInitFlag) && (CoolantR >= 790))
{
g_u8DesFuelSetp = 1;
g_u8DesCoolantSetp = 1;
}
else if (((g_u8DesFuelSetp == 3) || g_u8FuelInitFlag) && (FuelR >= 500))
else if (((g_u8DesCoolantSetp == 3) || g_u8CoolantInitFlag) && (CoolantR >= 500))
{
g_u8DesFuelSetp = 2;
g_u8DesCoolantSetp = 2;
}
else if (((g_u8DesFuelSetp == 4) || g_u8FuelInitFlag) && (FuelR >= 300))
else if (((g_u8DesCoolantSetp == 4) || g_u8CoolantInitFlag) && (CoolantR >= 300))
{
g_u8DesFuelSetp = 3;
g_u8DesCoolantSetp = 3;
}
else if (((g_u8DesFuelSetp == 5) || g_u8FuelInitFlag) && (FuelR >= 160))
else if (((g_u8DesCoolantSetp == 5) || g_u8CoolantInitFlag) && (CoolantR >= 160))
{
g_u8DesFuelSetp = 4;
g_u8DesCoolantSetp = 4;
}
else if (((g_u8DesFuelSetp == 6) || g_u8FuelInitFlag) && (FuelR >= 30))
else if (((g_u8DesCoolantSetp == 6) || g_u8CoolantInitFlag) && (CoolantR >= 30))
{
g_u8DesFuelSetp = 5;
g_u8DesCoolantSetp = 5;
}
}
}
......@@ -276,27 +276,27 @@ void Fuel_Gauges_Cal(uint8_t deltaTime)
if (Common_GetIgnOnTime() >= 3000)
{
time += deltaTime;
if (g_u8FuelInitFlag)
if (g_u8CoolantInitFlag)
{
g_u8FuelInitFlag = 0;
g_u8CoolantInitFlag = 0;
time = 0;
g_u8CurFuelSetp = g_u8DesFuelSetp;
g_u8CurCoolantSetp = g_u8DesCoolantSetp;
}
if (time >= 15000)
{ /* 15S变化一格 */
time = 0;
if (g_u8CurFuelSetp < g_u8DesFuelSetp)
if (g_u8CurCoolantSetp < g_u8DesCoolantSetp)
{
g_u8CurFuelSetp++;
g_u8CurCoolantSetp++;
}
else if (g_u8CurFuelSetp > g_u8DesFuelSetp)
else if (g_u8CurCoolantSetp > g_u8DesCoolantSetp)
{
g_u8CurFuelSetp--;
g_u8CurCoolantSetp--;
}
}
if (g_u8CurFuelSetp == g_u8DesFuelSetp)
if (g_u8CurCoolantSetp == g_u8DesCoolantSetp)
{
time = 0;
}
......@@ -304,77 +304,76 @@ void Fuel_Gauges_Cal(uint8_t deltaTime)
}
}
void Fuel_Cal_Sevice(uint8_t deltaTime)
void Coolant_Cal_Sevice(uint8_t deltaTime)
{
/*检测燃油电阻状态*/
Fuel_State_Check(deltaTime);
Coolant_State_Check(deltaTime);
/*显示燃油格*/
Fuel_Gauges_Cal(deltaTime);
Coolant_Gauges_Cal(deltaTime);
}
uint8_t Get_CurFuelSetp(void)
uint8_t Get_CurCoolantSetp(void)
{
uint8_t u8CurFuelSetp = g_u8CurFuelSetp;
if(FuelSensorState == FuelSensorOpenCircuit)
uint8_t u8CurCoolantSetp = g_u8CurCoolantSetp;
if(CoolantSensorState == CoolantSensorOpenCircuit)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 6;
u8CurCoolantSetp = 6;
}
else
{
u8CurFuelSetp = 0;
u8CurCoolantSetp = 0;
}
}
else if(FuelSensorState == FuelSensorShortCircuit)
else if(CoolantSensorState == CoolantSensorShortCircuit)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 7;
u8CurCoolantSetp = 7;
}
else
{
u8CurFuelSetp = 0;
u8CurCoolantSetp = 0;
}
}
else if(u8CurFuelSetp == 1)
else if(u8CurCoolantSetp == 1)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 1;
u8CurCoolantSetp = 1;
}
else
{
u8CurFuelSetp = 0;
u8CurCoolantSetp = 0;
}
}
else
{
;
}
return u8CurFuelSetp;
return u8CurCoolantSetp;
}
FuelSensorSts_t Get_Fuel_Sensor_State(void)
CoolantSensorSts_t Get_Coolant_Sensor_State(void)
{
uint8_t u8CurFuelSetp = 0;
if(FuelSensorState == FuelSensorOpenCircuit || g_u8CurFuelSetp == 1u)
uint8_t u8CurCoolantSetp = 0;
if(CoolantSensorState == CoolantSensorOpenCircuit || g_u8CurCoolantSetp == 1u)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 2;
u8CurCoolantSetp = 2;
}
else
{
u8CurFuelSetp = 0;
u8CurCoolantSetp = 0;
}
}
else
{
u8CurFuelSetp = 1u;
u8CurCoolantSetp = 1u;
}
return u8CurFuelSetp;
return u8CurCoolantSetp;
}
#endif
\ No newline at end of file
......@@ -5,15 +5,15 @@
typedef enum{
FuelSensorNormal = 0,
FuelSensorShortCircuit,
FuelSensorOpenCircuit,
}FuelSensorSts_t;
CoolantSensorNormal = 0,
CoolantSensorShortCircuit,
CoolantSensorOpenCircuit,
}CoolantSensorSts_t;
extern void Fuel_KL15_Init(void);
extern void Fuel_KL30_Init(void);
extern void Fuel_Cal_Sevice(uint8_t deltaTime);
extern uint8_t Get_CurFuelSetp(void);
extern FuelSensorSts_t Get_Fuel_Sensor_State(void);
void Fuel_R_Cal(uint8_t deltaTime);
extern void Coolant_KL15_Init(void);
extern void Coolant_KL30_Init(void);
extern void Coolant_Cal_Sevice(uint8_t deltaTime);
extern uint8_t Get_CurCoolantSetp(void);
extern CoolantSensorSts_t Get_Coolant_Sensor_State(void);
void Coolant_R_Cal(uint8_t deltaTime);
#endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment