int TEMP_GROP[]= { 2923 , //-20 2714 , //-10 2447 , // 0 2138 , // 10 1812 , // 20 1494 , // 30 1463 , // 31 1433 , // 32 1403 , // 33 1374 , // 34 1334 , // 35 1305 , // 36 1277 , // 37 1249 , // 38 1221 , // 39 1206 , // 40 960 , // 50 758 , // 60 597 , // 70 470 , // 80 372 , // 90 296 , // 100 265 , // 105 }; 11:55 //计算温度档 if (i <= 5) { temp = (i - 1) * 10.0 - 20.0; } else if (i > 5 && i < 15) { temp = 30.0; } else if (i = 15) { temp = 40.0; } else { temp = (i - 1) * 10.0 - 20.0; } //计算尾数 if (i <= 5) { t_temp = (TEMP_GROP[i - 1] - val) * (10.0 / (TEMP_GROP[i - 1] - TEMP_GROP[i])); } else if (i > 5 && i < 15) { t_temp = (TEMP_GROP[i - 1] - val) * (1.0 / (TEMP_GROP[i - 1] - TEMP_GROP[i])); } else if (i = 15) { t_temp = 0; } else { t_temp = (TEMP_GROP[i - 1] - val) * (10.0 / (TEMP_GROP[i - 1] - TEMP_GROP[i])); } temp = temp + t_temp;
时间: 2024-02-10 22:33:05 浏览: 73
grop:简单的RISC-V仿真器
这段代码是一个根据给定的温度值和温度档位计算实际温度的程序。其中,TEMP_GROP是一个数组,按照温度档位从低到高存储了相应的模拟值。程序根据输入的val值和TEMP_GROP数组里的值进行比较,找到对应的温度档位i,并根据不同的温度档位计算出温度的尾数t_temp。最后将温度档位和尾数相加得到实际温度值。具体的计算方式如下:
- 若i<=5,即温度档位在-20℃到20℃之间,根据线性插值公式计算t_temp值。
- 若i>5且i<15,即温度档位为30℃,t_temp值为(TEMP_GROP[i-1]-val)/(TEMP_GROP[i-1]-TEMP_GROP[i])。
- 若i=15,即温度档位为40℃,t_temp值为0。
- 若i>15,即温度档位在20℃到105℃之间,根据线性插值公式计算t_temp值。
阅读全文