Fork me on GitHub

STM32调试PT100

STM32调试PT100

1. 主控芯片:STM32L496ZG

2. 使用芯片内部ADC

3. 注意事项:

  • 首先对硬件电路进行公式的换算得出真实的电压和采集的电压(一定要测量ADC入口端的电压值和ADC采出来的是不是一样)
  • 使用电压反推出PT100的电阻如下图所示:
    image
    采集出来的是Vo。反推出PT100的电阻。通过电阻可以查表计算也可以根据公式计算
    image

所以公式分两段,推出温度和电阻的对应关系

  • -200 ~ 0(待验证)
#include "math.h"
#define		A		3.90802 * pow(10,-3)
#define		B		-5.802 * pow(10,-7)
#define		C		-4.27350 * pow(10,-12)

test[i] = (ADCResult[i] * 3.315) / 4096;
R[i] = (1000 * test[i])/(3.315 -  test[i]);
tm = (100*C + A + sqrt(A * A - 200*A*C + 10000 * C * C - 4*B + (4*B*R[i])/100 - 4*C + (4*C*R[i])/100))/(2*B*C);
  • 0+(已经验证过)
#include "math.h"
#define		A		3.90802 * pow(10,-3)
#define		B		-5.802 * pow(10,-7)
#define		C		-4.27350 * pow(10,-12)

test[i] = (ADCResult[i] * 3.315) / 4096;
R[i] = (1000 * test[i])/(3.315 -  test[i]);
tm = (-A + sqrt(A*A - 4 * B + (B*R[i])/25))/(2*B);
  • 注意:首先确认自己的ADC需不需要校准,再确认电路电源有没有大电容。如果有大电容要延时一段时间稳定后再进行校准
posted @ 2021-12-20 15:15  一地鸡毛-  阅读(1627)  评论(0编辑  收藏  举报