RK3562开发板使用SPI挂载RTD温度传感器

发布时间:2025-3-31 15:15    发布者:秦彻呀呀呀
MAX31865是一款设计简洁且功能强大的热敏电阻至数字输出转换器,特别适用于铂电阻温度检测器(RTD)的应用。该器件通过外部电阻设置RTD的灵敏度,并利用高精度Δ-Σ模数转换器(ADC)将RTD电阻与基准电阻的比值转换为数字信号输出。其输入端具备高达±45V的过压保护,并能检测RTD及电缆的开路、短路情况,因此在医疗、工业、温度控制、卫星、气象以及阻值计算等高精度温度测量领域得到了广泛应用。
飞凌嵌入式基于瑞芯微RK3562处理器推出的OK3562J-C开发板,在P8插针引脚上预留了SPI2接口,包括:
SPI2_CLK_M0、SPI2_CSN0_M0、SPI2_MOSI_M0和SPI2_MISO_M0。
本文将详细介绍如何在飞凌嵌入式RK3562开发板上使用SPI2接口挂载MAX31865数字式RTD温度传感器
1.jpg
一、添加SPI设备的思路
在飞凌嵌入式RK3562开发板上添加一个新的SPI设备,通常需要遵循以下步骤:
  • 在设备树中添加相应设备的描述。
  • 确保设备树描述与设备驱动相匹配。
  • 将设备驱动添加到内核中。二、具体实现方法1. 接线方式
    MAX31865支持2线、3线和4线接线方式。为了简化接线并减少引线数量,我们选择3线接线方式。3线连接是一种折中方案,通过从(RTDIN+ RTDIN-)中减去FORCE+和RTDIN+之间的电压来补偿导线上的压降,利用FORCE2对输入采样实现。如果电缆电阻具有较好的一致性,这种方法可以有效消除电缆电阻引入的误差。在接线之前,需要按照下图将模块焊接成3线模式。


2.jpg
2. 设备树配置
在设备树中添加MAX31865的相关描述。由于我们采用的是3线接法,因此需要添加maxim,3-wire参数。
3.jpg

3. 驱动编译与加载
(1)在内核源码的/drivers目录下创建max31865文件夹,并添加max31865.c和Makefile文件。
5.jpg
8.jpg
(2)修改父目录/kernel/drivers/Makefile文件,添加对max31865目录的编译支持。具体修改如下:
/drivers/max31865/Makefile内容:
  1. makefile复制代码obj-m += max31865.o
复制代码
/kernel/drivers/Makefile添加:
  1. makefile复制代码obj-y += max31865
复制代码
执行./build.sh kernel脚本编译内核,编译完成后,在/drivers/max31865目录下会生成max31865.ko模块。
6.jpg
4. 测试与验证
使用22Ω的电阻模拟铂电阻,通过以下命令查看ADC的原始值:
  1. bash复制代码cat /sys/bus/iio/devices/iio:device2/in_temp_raw
复制代码
7.jpg
观察到22Ω电阻对应的ADC值为1655。与芯片手册中的值进行对比,确认该值在正常范围内,对应的温度大约在-190℃左右
8.png
至此,我们成功在飞凌嵌入式RK3562开发板上通过SPI2接口挂载了MAX31865数字式RTD温度传感器。开发者可以根据读取到的ADC原始值,开发自己的应用来对应当前测量的温度。


本文地址:https://www.eechina.com/thread-884850-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

  • Microchip视频专区
  • 无线充电基础知识及应用培训教程2
  • 想要避免发生灾难,就用MPLAB® SiC电源仿真器!
  • 了解一下Microchip强大的PIC18-Q24 MCU系列
  • 5分钟详解定时器/计数器E和波形扩展!
  • 贸泽电子(Mouser)专区
关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表