1. 先看下原理图,原理图是电流从IDAC1流出,提供驱动,然后R(REF)这个电阻上的电压作为参考,读取AIN0和AIN1的电压,那么可以测量出来电阻值。

2. 上图是官方给出的参考,下图是我实际用的原理图,其中PT100的是在0摄氏度的时候,是100欧姆,上升1摄氏度,电阻增加0.385欧姆

3. 那么代码部分是,初始化,下面代码用的是TI官网下载的函数库,修改成自己的配置即可

    Setup_ADS1120 (ADS1120_MUX_AIN1_AIN0, ADS1120_OP_MODE_NORMAL,
ADS1120_CONVERSION_CONTINUOUS, ADS1120_DATA_RATE_20SPS, ADS1120_GAIN_8, ADS1120_USE_PGA,
ADS1120_IDAC1_AIN3, ADS1120_IDAC2_DISABLED, ADS1120_IDAC_CURRENT_1000_UA);
//¿ªÊ¼×ª»» ADS1120_Start();

参考的地方

4. PGA放大了8倍,参考电阻是1.2K欧姆,那么计算当前温度值的计算公式如下

        if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_4) == GPIO_PIN_RESET)//ADS1120
{
ADS1120_Get_Conversion_Data((unsigned char *)tempData);
temp = ((int)tempData[] << ) + tempData[];
temp = ((temp-) * * / - )/ ;
}

5. 第一个温度,ADS1120是12位的ADC,实际测试,满刻度是 0X7FFF,不是0XFFFF,我估计是可以测试正负值。

6. 曾经试过把R17修改成150欧姆,PGA=1倍,但是效果很差,偏差很大,实际测试,R17值越大,效果越好,怎么去评测这个效果呢?就是把PT100拆掉,短接PT100的两根线,测试在此下,temp的值,越接近0,那么说明偏差越小。

7. 关于校准问题,就是把PT100拆掉,短接PT100的两根线,测试在此下,temp的值,越接近0,那么说明偏差越小。官方的做法是记录下这个偏差值,以后每次测量出的temp减去这个偏差值。我用1.2K欧姆电阻的时候,这个偏差值是8,所以我就减去8了。

STM32驱动模数转换芯片ADS1120(PT100铂电阻测温度)第2篇的更多相关文章

  1. STM32驱动模数转换芯片ADS1120(基础知识篇)第1篇

    1. 先看下ADS1120的结构图,ADS1120是个比较奇葩的ADC模数转换器,因为比较适用于热电阻之类的温度采集器.看下图,有个MUX多路复用器,应该是选择两个差分信号去测试,通过输入多路复用器 ...

  2. STM32驱动DS18B20

    DS18B20 是由 DALLAS 半导体公司推出的一种的“一线总线”接口的温度传感器.与传 统的热敏电阻等测温元件相比,它是一种新型的体积小.适用电压宽.与微处理器接口简单的 数字化温度传感器.一线 ...

  3. esp8266的STM32驱动

    esp8266的STM32驱动,数据发送接收由DMA完成,释放CPU. 目前只能发送返回消息为成功或失败的AT命令,并判断是否成功,详见esp8266_cmd():其它返回消息不可预知的命令(如查看A ...

  4. STM32驱动OV7725摄像头颜色识别

    实验目的: 使用stm32驱动OV7725摄像头进行图像实时采集,在tft屏幕上实时显示并识别图像中的特定颜色,在颜色的周围画上框. 实验现象: 我的工程代码链接: http://download.c ...

  5. STM32驱动ILI9341控制器控制TFTLCD显示

    STM32驱动ILI9341控制器控制TFTLCD显示 一.用STM32控制TFTLCD显示的编程方法,在编程驱动TFTLCD液晶显示器之前,我们先熟悉以下概念: 1.色彩深度,这是一个与TFTLCD ...

  6. AMS5601的ardunio和STM32驱动开发

    AMS5601的ardunio和STM32驱动开发 本文有麦粒电子撰写,并提供相应产品服务. 前言 目前ams关于磁编码芯片用的比较多的可能是ams5600,能够输出pwm信号,电压信号以及I2C通信 ...

  7. 树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据

    树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据 今天和小朋友一起玩树莓派,打算来做一个测量室温的小实验.经过几个小时的研究和测试,终于能够成功读取LM35传感器的温度数据了.本文主要记 ...

  8. STM32驱动LCD实战

    前段时间写了<STM32驱动LCD原理>和<STM32的FSMC外设简介>两篇文章,本文将对STM32驱动LCD进行实战应用.LCD是深圳市拓普微科技开发有限公司的LMT028 ...

  9. STM32—驱动GY85-IMU模块

    GY85是一个惯性测量模块,内部集成了三轴加速度计.三轴陀螺仪.电子罗盘.气压传感器等芯片,用于测量和报告设备速度.方向.重力,模块可以将加速度计.陀螺仪.电子罗盘等传感器的数据进行综合,在上位机可以 ...

随机推荐

  1. learning java ATW ScrollPane

    import java.awt.*; public class ScrollPaneTest { public static void main(String[] args) { var f = ne ...

  2. 系统字体放大导致rem布局错乱,解决方案,已通过测试

    如果你用rem没遇到过坑,那只能说明你 too young too simple; (function (doc, win) { var resizeEvt = 'orientationchange' ...

  3. go error=216编译错误

    CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容.请查看计算机的系统信息,了解是否需要 x86 (32 位)或 x64 (64 位)版本的程序, ...

  4. java sqlite docker,sqlite出错

    1问题1 使用docker镜像部署springboot程序,sqlite出错,在windows和linux环境都没有问题,使用docker部署就报错 Caused by: java.lang.Unsa ...

  5. centos7下修改docker工作目录

    应用环境: docker安装时如果不指定家目录(也就是工作目录),一般默认工作目录是 /var/lib/docker ,很多时候需要修改到大容量磁盘上进行存储,这里记录一下修改默认路径为 /data/ ...

  6. 3、vueJs基础知识03

    vue过渡(动画) 本质走的css3: transtion ,animation <div id="div1" v-show="bSign" transi ...

  7. 数据库blob图片文件,多图片打包下载

    数据库存储blob图片文件,前端打包下载 数据库图片文件实体类 package com.cmrh.mspserver.pos.dto; import java.io.Serializable; imp ...

  8. Seurat V3.0

    最新版V3文档:https://satijalab.org/seurat/vignettes.html 不要再用V2的版本了,V3已经涵盖了V2所有的功能. 最新版3.0已经发布了,有重大更新,以前的 ...

  9. 使用Eclipse创建Web项目时WEB-INF下找不到web.xml问题详解

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/yjrguxing/article/deta ...

  10. 利用Word发布文章到cnblogs博客

    利用Word发布文章到cnblogs博客 用博客园cnblogs:http://www.cnblogs.com/博客名称/services/metablogapi.aspx,word老是提醒" ...