一、绪论

最近研究怎么实现一个高度稳定的热源,家里没有PT1000,也没有高精度的AD,只有PT100和陈年的几个单片机,怎么办?方法总比困难多,经过搜罗,终于找到AD神器一片,STC12C5A60S2,可以同时实现8路10位AD,这么好的资源怎能放弃?好,开工。

二、电路设计

工欲善其事,必先利其器。先找原理图吧,经过搜罗和评估,认为这张图可信度高一些,看了下,两级运放放大,刨去固有的电压降低0.7+0.7=1.4,用5V的电源,至少可以将模拟电压信号固定在0.5~3.5伏,如果把惠斯通电桥调零到20-50度,1024的分辨率,精度理论可以在0.03,算了吧,能到0.1稳定下来就不错了。。。TL431产生稳定的电桥电源2.5v。

三、KEIL5 使用C51开发

打开KEIL5,才发现KEIL5默认没有KEIL C51支持,懒得下载和安装KEIL4,就下载了个c51v959.exe,安装完了,在使用STC-ISP安装STC单片机的支持就可以了。如图。

完了后记得破解才能用。

四、ADC采集与显示

#define ADC_POWER   0x80
#define ADC_FLAG    0x10
#define ADC_START   0x08
#define ADC_SPEEDLL 0x00
#define ADC_SPEEDL  0x20
#define ADC_SPEEDH  0x40
#define ADC_SPEEDHH 0x60 BYTE  ch = 0;
BYTE  result =0;
WORD  wresult =0;
BYTE num[]={'0','1','2','3','4','5','6','7','8','9'};void Delay(WORD n)
{WORD x;while (n--){x = 5000;while (x--);}
}void InitADC()
{P1ASF = 0xff;ADC_RES = 0; ADC_RESL = 0;ADC_CONTR = ADC_POWER | ADC_SPEEDLL;Delay(2);
}WORD GetADCResult(BYTE ch)
{WORD result = 0;ADC_CONTR = ADC_POWER | ADC_SPEEDLL | ch | ADC_START;_nop_(); _nop_();_nop_();_nop_();while (!(ADC_CONTR & ADC_FLAG));ADC_CONTR &= ~ADC_FLAG; ADC_RESL &=0x03;result=ADC_RES*4+ADC_RESL;return result;
}void main(void)
{ P1M0 = 0x00;P1M1 = 0x00;Uart_Init();InitADC();Y_LAMP=1;G_LAMP=1;R_LAMP=1;SendString("start service...\r\n");while (1)   {wresult = GetADCResult(0);SendString("value=");SendData(num[wresult/1000]);SendData(num[wresult%1000/100]);SendData(num[wresult%100/10]);SendData(num[wresult%10]);SendString("\r\n");delaytime(20000);}
}

五、效果展示



上面的数据没有处理,大家可以看到,从常温368-484是我用手攥了下PT100产生的。其实利用这种滑窗调节法,可以大大提高指定温度范围的精度。
更新:如果想做精度较高的低温窄带标准温度源的话,可以参考一下车载小型冰箱,拆开看看就可以了,呵呵,昨天偶把李宁送的车载冰箱拆开看了看,TEC模块,还有驱动,都有的,再加上一层保温,就可以解决了,这种半导体温度源,就是稳定下来稍微慢了点。

STC12C5A60S2实现PT100传感器分段高精度测温相关推荐

  1. PT100高精度测温电路 AD623+REF3030(转)

    源: PT100高精度测温电路 AD623+REF3030(很稳定)

  2. PT100高精度测温电路 AD623+REF3030(转载)

    PT100是一种正温度系数的热敏电阻.说到什么是正温度系数?就必须要结合负温度系数来讲了.随着温度的升高,电阻的阻值变大,就是正温度系数的热敏电阻,相反,如果随着温度的升高,电阻的阻值变小,就是负温度 ...

  3. PT100高精度测温电路 AD623+REF3030(很稳定)

    出处:https://blog.csdn.net/gflytu/article/details/53902929 PT100是一种正温度系数的热敏电阻.说到什么是正温度系数?就必须要结合负温度系数来讲 ...

  4. 光纤收发器的原理及应用_基于砷化镓传感器的光纤测温原理及其在地铁中的应用...

    1.概况 我们公司研究了一种新型的光纤测温技术及装置,其核心是基于砷化镓传感器对波长的吸收特性.介绍了该测温系统的组成和功能,分析了其在地铁中的应用实例,以及实际测温结果与地铁主所负荷的关系. 大型油 ...

  5. MAX31865模块PT100两线制测温

    项目场景: 采用MAX31865芯片读取PT100测温,遇到的问题和步骤记录,采用的STM32F405 硬件SPI1读取温度.本次使用的两线制,四线制也是通用的.主要修改里边参数. 问题描述: 1,读 ...

  6. 基于op07的k型热电偶测量电路_基于K型热电偶的测温装置设计

    基于 K 型热电偶的测温装置设计 * 王安敏 孔令布 孟海彦 [摘 要] 摘 要 工业现场的温度检测大多以 K 型热电偶为传感器测量高温,针 对热电偶测量温度存在线性度差,测量误差大等问题.现采用 K ...

  7. 基于STM32的智能篮球测温记分记时系统

    1.项目概述(20分) 1.1项目简介(5分) 进入21世纪,伴随着电子信息通信技术的应用与普及开发,人们对电子技术的要也越来越高.篮球作为一种体育运动进入了人们的生活.为对比赛进行规范化管理,研究一 ...

  8. 基于STM32设计的健康检测设备(测温心率计步)

    1. 项目介绍 本文介绍的项目是基于STM32设计的健康检测设备,支持体温测量,心率检测,支持运动计步(采用MPU6050陀螺仪实现),支持WIFI传输数据到手机APP打印显示. 硬件环境介绍: MC ...

  9. 无线测温装置在变压器中的设计与应用

    安科瑞   汪国琴 一.引言 随着国家电力行业规模的快速发展,用电需求量也在持续上升,电力变压器不断在向大容量.高电压方向发展.变压器作为电力系统中的重要电力设备,运行的安全可靠性将会对电网的供电质量 ...

最新文章

  1. ubuntu操作系统下载
  2. Hadoop大数据零基础高端实战培训系列配文本挖掘项目
  3. 2012腾讯春季实习生面试经历(一)
  4. ReactNative环境配置的坑
  5. Mybatis接口注解开发
  6. The current branch is not configured for pull N...
  7. 程序员都会的 35 个 jQuery 小技巧
  8. JAVA面试--电商业内大厂
  9. ubuntu 10.04的git安装和使用
  10. oracle没有自带的程序吗,oracle – 空包定义(没有公共成员)
  11. URL地址 问号传参解析
  12. 联想重装系统去掉保护_带有联想保护系统的电脑安装系统具体步骤如下
  13. 大学计算机模拟2014网络应用,2014全校大学计算机基础模拟考试.doc
  14. 新浪微博发布文章html,微博怎么发文章
  15. 计算机幂函数xn,幂函数
  16. 系统分析和设计方法之输出设计和原型化
  17. 【Web】HTML基础——了解HMTL基本结构+常用标签的使用
  18. java 挑战性_想接受Java挑战吗?
  19. 电商数仓(dwt 层)
  20. appium通过坐标定位元素

热门文章

  1. 微信公众号简单开发(3)公众号自定义菜单
  2. ERROR Nacos failed to start, please see
  3. FISHFOOD——代码本色
  4. 阿里云OCR-身份证/营业执照识别
  5. 【死磕 Java 集合】— LinkedTransferQueue源码分析
  6. 存储论(二):有约束的确定型存贮模型、单周期随机库存模型
  7. JavaScript读取注册表
  8. mysql药品信息表_PHP+MySQL药品信息查询系统(含论文)
  9. 高情商的技术人,如何做沟通?
  10. Linux 18 IPC之共享内存shm