
PT100(RTD)三线制四线制测量方案升级版:快速原型机参考指南
最近在搞PT100温度测量,发现三线制和四线制方案对精度影响挺大的。这次拿STM32F103C8T6做控
制器,搭了个支持双模式的系统,实测四线制能到±0.3℃精度,三线制也稳在±1℃内,下面分享几个关键实现
点。
**硬件设计显细节**
AD7793这货真是24位ADC里的性价比之王,接PT100时注意电流激励配置。四线制直接怼上V+和V-,
三线制得用补偿导线电阻。硬件上搞了个骚操作:
```c
// 切换测量模式代码片段
void AD7793_SetMode(uint8_t mode) {
if(mode == FOUR_WIRE) {
write_register(IO_MODE_REG, 0x0A); // 启用四线激励电流
} else {
write_register(IO_MODE_REG, 0x09); // 三线模式补偿线阻
}
}
```
这里寄存器配置的bit3控制电流方向,三线制得同时开两个电流源平衡线路电阻。硬件上记得在RT
D引线端加TVS二极管,实测能防住现场感应雷击。
**按键驱动玩花样**
菜单切换用状态机实现,FIFO队列存按键事件比轮询靠谱多了:
```c
#define KEY_FIFO_SIZE 8
typedef struct {
uint8_t buf[KEY_FIFO_SIZE];
uint8_t head;
uint8_t tail;
} KeyFIFO;
void Key_Scan_Task() {
static uint32_t last_tick = 0;