| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 用STM32单片机ADC+NTC热敏电阻采集温度的设计思路 | 附参考电路 -> 正文阅读 |
|
[嵌入式]用STM32单片机ADC+NTC热敏电阻采集温度的设计思路 | 附参考电路 |
目录 前言记录一些我在工作和学习过程中遇到的问题 NTC:在淘宝随便买的 单片机型号:STM32G030C8T6 目的:用单片机采集NTC温度 本文主要是介绍关于NTC激励电压的选择 一、热敏电阻NTC? ? ? ?热敏电阻NTC(Negative Temperature Coefficient),直译过来就是负温度系数,表示其阻值随着温度的升高而呈指数下降。热敏电阻是无源器件,自身不能产生电气输出,需要激励电压或者激励电流来测量传感器的电阻,也就是用一个小电流流过传感器以产生电压,单片机ADC采集这个电压计算出此时NTC的阻值进而推出其温度值。 二、参考电路? ? ? ? 用单片机和NTC热敏电阻测量温度的推荐电路,这是相对简单的电路,如果要考虑稳定性和抗干扰的问题最好加一个射级跟随器,我这里用运放完成,参考电路如下: ? ? ? ? ? 在PCB布局的时候,NTC的信号是模拟信号,要注意布局的时候与数字信号隔离开。 ?三、激励电压选择? ? ? ?? ? ? ? ? ?以上电路设计出来,还要考虑一个问题就是激励电压Vcc的选择,这在之前是我一直忽略的一个问题,经过我经理的讲解才知道,要想单片机采集的温度更精确,激励电压是不能随便选择的。 ? ? ? ? 首先我的单片机是12位ADC,但是在实际应用中,相信很多和我一样在电子行业经验不足的,设计出来的产品是很难匹配这个数值的,不论是器件本身的误差还是来自其他电路的干扰以及信号耦合的问题,都会导致单片机最终采集到的模拟信号存在误差。经理的意思是12位ADC就看成8位来计算,但是考虑到电路比较简单相对能出现干扰的部分不多所以我还是按照10位ADC来计算。 ? ? ? ?关于精度的计算:假设单片机ADC的参考电压是0~3.3v,那么其采样范围也是0~3.3v,10位ADC分辨率为2^10 = 1024,我们可以理解成0~3.3v的电压分布在这1024个数字上,每一个数字变化的电压就表示他的精度,计算公式:3.3/2^10 = 0.003。 我简单拉了一个表格,懒得算的可以参考:(注:计算的时候要注意你设计的单片机参考电压范围)
? ? ? ? ?通过简单的构思,我们不难分析出,要想NTC精度提高,我们电压变化的极值在满足单片机ADC采样范围的条件下,还要尽量靠近这个值。也就是说如果你测量的环境温度变化范围在0~99℃,那么你需要计算0℃和99℃时,其分别表示的电压在相减得出极值,看是否和单片机的ADC采样范围匹配。 ? ? ? ? ?先用Vcc=5v电压来计算,不同型号的NTC在不同温度情况下其电阻是不一样的,具体的RT表格可以向你买的NTC厂家要,我的型号在0℃时电阻是33k,99℃时电阻是0.5k,可以得出其电压极值为:5*33/(10+33) - 5*0.5(10+0.5) = 3.6v,这个值是不满足单片机的采样范围的,所以5v及其以上电压我不能考虑。 ? ? ? ? 再来看4.096v电压,同理计算极值4.096*33/(10+33) - 4.096*0.5(10+0.5) =?2.94,满足条件可以选择。 ? ? ? ??极值满足我们还要看ADC的精度是否能达到要求,首先在电压4.096v的情况下得出的极值为2.94v,那么其0.1℃的精度为 2.94/1000 = 0.00294,参照上表单片机的精度表格,与10位ADC可以比较匹配,综合考虑下是可以选择4.096的作为Vcc激励电压的。 懒得算的,我也简单拉了一个表格,仅供参考:
这就是关于用单片机和NTC采集温度的设计过程,如果有不对的地方欢迎纠正! |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年3日历 | -2025/3/12 22:37:08- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |