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. Oracle 解决无法生成Snapshot问题

    1. 概述 Specify the number of days of snapshots to choose from ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...

  2. ES code study

    pom.xml <?xml version="1.0" encoding="UTF-8"?><project xmlns="http ...

  3. Linux下搭建iSCSI共享存储的方法 TGT 方式 Debian9.5系统下

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  4. apt-get linux 虚拟机安装vm tools下载

    要重启机器才行D:\Program Files (x86)\linux.iso解压tar zxvf VMwareTools-9.9.0-2304977.tar.gz

  5. POJ2421Constructing Roads

    Constructing Roads Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 23343   Accepted: 10 ...

  6. Windows下 Python 2 与 Python 3 共存

    转自:http://lovenight.github.io/2016/09/27/Windows%E4%B8%8B-Python-2-%E4%B8%8E-Python-3-%E5%85%B1%E5%A ...

  7. [Noip2018普及]摆渡车

    生涯回忆录彻底摸了...反正也没啥人看( 过几天要给普及组神犇讲课就寻思做一点普及题,然后差点被锤爆,, 题在luogu上找的https://www.luogu.org/problemnew/show ...

  8. 公司和家里代码文件同步方案: (git和dropbox实现)

    公司和家里代码文件同步方案: (git和dropbox实现) 参与公司福利购入了有补贴的macbook pro后, 就不用上下班背着电脑了. 但是也出现了另外一问题: 家里和公司代码同步的问题 公司有 ...

  9. PageHelper的问题

    如果分页语句没有被消耗掉,它一直保留着,直到被织入到下一次查询语句,如果 被织入的查询语句自己有LIMIT限制,那么两个LIMIT就导致语法错误了. PageHelper.startPage(page ...

  10. P1108 低价购买——最长下降子序列+方案数

    P1108 低价购买 最长下降子序列不用多讲:关键是方案数: 在求出f[i]时,我们可以比较前面的f[j]; 如果f[i]==f[j]&&a[i]==a[j] 要将t[j]=0,去重: ...