MAX31865硬件和程序攻坚

中文数据手册

MAX31865中文手册可以看这个博主挂上的文章
总结——STM32F103C8T6通过MAX31865读取PT100电阻值

STM32H库与工程文件创建

本次使用STM32H库和STM32CubeMX生成工程文件,详细可参考以下这个博主的文章。这里有个坑就是不要使用SPI硬件的CS控制。不然SMT32一直拉低CS信号,MAX31865芯片无法正常接收到信号。

STM32CubeMX-配置SPI驱动MAX31865读取铂电阻温度

在这里插入图片描述
就是这里的配置不要跟这位博主选择,开启硬件 CS。或许我不够技术不到位,一直玩不转STM32的SPI硬件CS。反正是一直拉低,没怎么研究如何让他自己适当的时机电平翻转。代码部分直接复制就能使用。

SPI 配置这里也有坑 原博主是这样的以下
配置 SPI 详细参数
在这里插入图片描述
进入到 SPI 的配置项中,基础参数保存默认,主要看第二项时钟设置,时钟分频我使用128分频,CPOL 设置为 HIGH(空闲为高电平),CPHA 设置为 2Edge(即第二个边沿传输数据)

这里的有些问题,我试了在Debug状态下能够正常读取芯片数据,但是在正常模式下会读不出数据的问题,后来发现是Clock Polarity (CPOL)要选择LOW 才能解决。

如果想用软件SPI方式可以查看这篇文章STM32软硬件SPI读取MAX31865 PT100温度支持shell功能

模块硬件部分

某宝的套件主要是出售PT100加MAX31865小模块了,所以这个也是要参考下MAX31865和PT100 PT1000的小白避坑攻略。这篇文章
MAX31865小模块连接PT100传感器需要将模块的一处用刀具隔开,因为哪里是有很细小的走线。文章有提及注意割开就行。

还有就是不知道如何将PT100传感器连接到MAX31865小模块上去的。
通常三根线中选取两根不同颜色的就是闭环的一个电阻,在25°下能测量出他的电阻值为110欧左右,另一根是他的补偿线。电阻的头尾分别连接到RTD+和RTD-之间。类外连接到F+中去。如下图连接方式:
在这里插入图片描述
对于STM32与MAX31865模块之间的连接。如果使用了STM32CubeMX-配置SPI驱动MAX31865读取铂电阻温度这篇文章的工程的话,里面贴心提示有对应的MCU与小模块之间的连接。

温度数据准确性

由于传感器材质的问题电阻与温度不是很线性关系,所以会用到查表法进行。该芯片提供了电阻与温度的表格,但是是以10步进为单位的。如果你想做细一点以0.1为步进可以查看这个博主的文章《温度控制器PT100查表法(0.1分度表)》。对于查表法快速定位该值通常使用的算法是二分法,具体怎么写可以通过AI生成代码。这里我也是直接使用了讯飞星火AI生成代码代入进去。
在这里插入图片描述

  • 16
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

谢谢~谢先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值