关于PT100测温可以看上一篇文章:关于用STM32ADC TP100测温电路的分析学习
这里要在程序中使用查表的方法来计算温度。所以就需要一个温度和阻值的对照表格。
在网上搜了一下没有可以直接复制的,干脆自己写一个以后万一用得到。
直接插代码:【适用范围:温度>0】 因为公式是温度>0时的公式。
#include "stdio.h"
#include "stdint.h"
// Pt1000 and Pt100 handling
// Rt=R0*(1+a*T+b*T*T) [for T>0]
// a=3.9083E-3, b=-5.775E-7
// 系数A 系数B
float A = 0.0039083;
float B = -0.0000005775;
// PT100 0°时的阻值
float R0 = 100;
// PT100阻值对照表的数量
#define PT100LIST_NUM 100
// PT100阻值温度对照表的分辨率 温度上升多少度 计算一次阻值
#define PT100LIST_RESOLUTION 1.0
// 温度从0开始计算
float tStep = 0.0;
float PT100[PT100LIST_NUM][2] = {};
int main()
{
for (uint8_t i = 0; i < PT100LIST_NUM; i++)
{
PT100[i][0] = R0 * (1 + A * tStep + B * tStep * tStep);
PT100[i][1] = tStep;
tStep += PT100LIST_RESOLUTION;
}
for (uint8_t y = 0; y < PT100LIST_NUM; y++)
{
printf("PT100: %f ohm, temp: %f \r\n", PT100[y][0], PT100[y][1]);
}
}
这是一个测试用的Demo,可以更改上面的几个参数来达到生成不同大小数组的目的。改改就能放程序里面了。
输出内容:
可以简单对照一下别人给的表格,都是一样的。