STM32驱动模数转换芯片ADS1120(PT100铂电阻测温度)第2篇
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篇的更多相关文章
- STM32驱动模数转换芯片ADS1120(基础知识篇)第1篇
1. 先看下ADS1120的结构图,ADS1120是个比较奇葩的ADC模数转换器,因为比较适用于热电阻之类的温度采集器.看下图,有个MUX多路复用器,应该是选择两个差分信号去测试,通过输入多路复用器 ...
- STM32驱动DS18B20
DS18B20 是由 DALLAS 半导体公司推出的一种的“一线总线”接口的温度传感器.与传 统的热敏电阻等测温元件相比,它是一种新型的体积小.适用电压宽.与微处理器接口简单的 数字化温度传感器.一线 ...
- esp8266的STM32驱动
esp8266的STM32驱动,数据发送接收由DMA完成,释放CPU. 目前只能发送返回消息为成功或失败的AT命令,并判断是否成功,详见esp8266_cmd():其它返回消息不可预知的命令(如查看A ...
- STM32驱动OV7725摄像头颜色识别
实验目的: 使用stm32驱动OV7725摄像头进行图像实时采集,在tft屏幕上实时显示并识别图像中的特定颜色,在颜色的周围画上框. 实验现象: 我的工程代码链接: http://download.c ...
- STM32驱动ILI9341控制器控制TFTLCD显示
STM32驱动ILI9341控制器控制TFTLCD显示 一.用STM32控制TFTLCD显示的编程方法,在编程驱动TFTLCD液晶显示器之前,我们先熟悉以下概念: 1.色彩深度,这是一个与TFTLCD ...
- AMS5601的ardunio和STM32驱动开发
AMS5601的ardunio和STM32驱动开发 本文有麦粒电子撰写,并提供相应产品服务. 前言 目前ams关于磁编码芯片用的比较多的可能是ams5600,能够输出pwm信号,电压信号以及I2C通信 ...
- 树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据
树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据 今天和小朋友一起玩树莓派,打算来做一个测量室温的小实验.经过几个小时的研究和测试,终于能够成功读取LM35传感器的温度数据了.本文主要记 ...
- STM32驱动LCD实战
前段时间写了<STM32驱动LCD原理>和<STM32的FSMC外设简介>两篇文章,本文将对STM32驱动LCD进行实战应用.LCD是深圳市拓普微科技开发有限公司的LMT028 ...
- STM32—驱动GY85-IMU模块
GY85是一个惯性测量模块,内部集成了三轴加速度计.三轴陀螺仪.电子罗盘.气压传感器等芯片,用于测量和报告设备速度.方向.重力,模块可以将加速度计.陀螺仪.电子罗盘等传感器的数据进行综合,在上位机可以 ...
随机推荐
- (尚004)Vue计算属性之基本使用和监视
所做效果预览: test004.html <!DOCTYPE html><html lang="en"><head> <meta char ...
- saltstack 基础模块
Salt 在 linux 系统下 基础操作 1.更改权限 # salt 2.更改用户 # salt '172.16.3.9' file.chown /root/test test test 3.复制文 ...
- [转] Raspberry Pi 樹莓派使用場合及時機
在買了 Raspberry Pi 後,到底能拿來做什麼事情呢?有幾個想法一起分享 這裡有初學者教學的影片,非常值得一看. http://www.youtube.com/user/Raspberry ...
- 课标2-2-1-3 :MMU配置与使用
void create_page_table(void){ unsigned long *ttb = (unsigned long *)0x20000000; unsigned long vaddr, ...
- 12、基于yarn的提交模式
一.三种提交模式 1.Spark内核架构,其实就是第一种模式,standalone模式,基于Spark自己的Master-Worker集群. 2.第二种,是基于YARN的yarn-cluster模式. ...
- 常用命令备忘 lsof
lsof命令 可以列出被进程所打开的文件的信息.被打开的文件可以是 1.普通的文件, 2.目录 3.网络文件系统的文件, 4.字符设备文件 5.(函数)共享库 6.管道,命名管道 7.符号链接 8.底 ...
- CSP-S2019 快乐爆0
hhh 我爆0了 快乐 大家都比我强 hh 常规操作 本来就是个憨憨 回去复习文化课了 唉 干啥啥不行
- Flask一种通用视图,增删改查RESTful API的设计
模型设计是后端开发的第一步.数据模型反映了各种对象之间的相互关系. from app import db class Role(db.Model): """角色" ...
- 菜鸟的算法入门:java的链表操作
从C语言的指针开始,我的算法之路就结束了! 今天为了找个好的实习,不得不捡起来,写了三年的web,算法落下了太多了 今天在leetcode上刷题,难在了一个简单的链表上,因此记录一下 题目:给定两个非 ...
- java代码拼写sql
java后台 String zffwdm=map.get("zffwmc")==null?"":map.get("zffwmc"); ...