打印
[51单片机]

C8051F410片内温度传感器怎么检测温度?

[复制链接]
2252|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Big学渣|  楼主 | 2017-1-6 11:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ayb_ice| | 2017-1-6 12:27 | 只看该作者
用adc啊,单位应该是mv

使用特权

评论回复
板凳
Big学渣|  楼主 | 2017-1-6 15:26 | 只看该作者
ayb_ice 发表于 2017-1-6 12:27
用adc啊,单位应该是mv

您能具体讲讲思路吗,是adc转换后再采温度传感器的输出电压吗,就是得到的数字量我再转成模拟量然后算温度,是这样吗?

使用特权

评论回复
地板
ayb_ice| | 2017-1-6 16:56 | 只看该作者
Big学渣 发表于 2017-1-6 15:26
您能具体讲讲思路吗,是adc转换后再采温度传感器的输出电压吗,就是得到的数字量我再转成模拟量然后算温 ...

是的,用adc测量温度传感器通道的电压,再根据电压反推算出温度

使用特权

评论回复
5
linqing171| | 2017-1-7 20:42 | 只看该作者
ADtemp = (Vtemp / Vref ) * AD_MAX
貌似是 Vtemp *4096 / 2.5 ???

使用特权

评论回复
6
Big学渣|  楼主 | 2017-1-9 09:36 | 只看该作者
ayb_ice 发表于 2017-1-6 16:56
是的,用adc测量温度传感器通道的电压,再根据电压反推算出温度

好的,谢谢您

使用特权

评论回复
7
Big学渣|  楼主 | 2017-1-9 09:37 | 只看该作者
linqing171 发表于 2017-1-7 20:42
ADtemp = (Vtemp / Vref ) * AD_MAX
貌似是 Vtemp *4096 / 2.5 ???

您好,AD_TEMP,AD_MAX都是什么量啊

使用特权

评论回复
8
Big学渣|  楼主 | 2017-1-17 17:24 | 只看该作者
ayb_ice 发表于 2017-1-6 16:56
是的,用adc测量温度传感器通道的电压,再根据电压反推算出温度

您好,c8051f410的片内温度传感器能测量外部环境温度吗?

使用特权

评论回复
9
ningling_21| | 2017-1-17 18:15 | 只看该作者
Big学渣 发表于 2017-1-17 17:24
您好,c8051f410的片内温度传感器能测量外部环境温度吗?

只能检测芯片本身的温度

使用特权

评论回复
10
Big学渣|  楼主 | 2017-1-18 09:58 | 只看该作者
ningling_21 发表于 2017-1-17 18:15
只能检测芯片本身的温度

就是需要测量一个外部模块的温度,但是板子上又没有特别搭出温度传感器电路,老大让我用内部的温度传感器测外部模块,精读要求倒不高,原程序上也写的有测量外部模块温度的句子但是是错的,在网上查到一份资料《基于c8051f片内传感器测量环境温度的方法研究》感觉也不靠谱。

使用特权

评论回复
11
ningling_21| | 2017-1-18 11:40 | 只看该作者
Big学渣 发表于 2017-1-18 09:58
就是需要测量一个外部模块的温度,但是板子上又没有特别搭出温度传感器电路,老大让我用内部的温度传感器 ...

什么样的外部模块? 一般用18B20或热敏电阻

使用特权

评论回复
12
Big学渣|  楼主 | 2017-1-18 16:18 | 只看该作者
ningling_21 发表于 2017-1-18 11:40
什么样的外部模块? 一般用18B20或热敏电阻

就是一个索尼的摄像模块,老大说只需要一个大概的温度就行,就不折腾板子了,用片内温度传感器测出的温度减去单片机芯片本身的温升就行

使用特权

评论回复
13
ningling_21| | 2017-1-19 08:22 | 只看该作者
Big学渣 发表于 2017-1-18 16:18
就是一个索尼的摄像模块,老大说只需要一个大概的温度就行,就不折腾板子了,用片内温度传感器测出的温度 ...

检测410大概的温度就行了

使用特权

评论回复
14
Big学渣|  楼主 | 2017-1-19 10:23 | 只看该作者
ningling_21 发表于 2017-1-19 08:22
检测410大概的温度就行了

那用到的公式是五楼说的那个吗?

使用特权

评论回复
15
ningling_21| | 2017-1-19 12:28 | 只看该作者
Big学渣 发表于 2017-1-19 10:23
那用到的公式是五楼说的那个吗?

摄氏度=k*电压+b
k=2.95mV/摄氏度;
b=-900/2.95 摄氏度=-305
电压=AD*xxx;

使用特权

评论回复
16
Big学渣|  楼主 | 2017-1-19 14:01 | 只看该作者
ningling_21 发表于 2017-1-19 12:28
摄氏度=k*电压+b
k=2.95mV/摄氏度;
b=-900/2.95 摄氏度=-305

Vtemp=2.95*TEMP+900(mv),英文手册上查到的这个公式,然后Vtemp/Vref=ADtemp/AD_MAX,算出来的温度差不多可以接受

使用特权

评论回复
17
ningling_21| | 2017-1-19 14:48 | 只看该作者
Big学渣 发表于 2017-1-19 14:01
Vtemp=2.95*TEMP+900(mv),英文手册上查到的这个公式,然后Vtemp/Vref=ADtemp/AD_MAX,算出来的温度差 ...

差不多就行了

使用特权

评论回复
18
Big学渣|  楼主 | 2017-1-20 09:55 | 只看该作者
ningling_21 发表于 2017-1-19 14:48
差不多就行了

嗯,谢谢大神

使用特权

评论回复
19
ddllxxrr| | 2017-1-20 14:23 | 只看该作者
一般内部温度传感器都是固定的ADC通道,楼主只要采积ADC的值然后用公式算就可以了

使用特权

评论回复
20
Big学渣|  楼主 | 2017-1-20 15:41 | 只看该作者
ddllxxrr 发表于 2017-1-20 14:23
一般内部温度传感器都是固定的ADC通道,楼主只要采积ADC的值然后用公式算就可以了 ...

嗯,问题解决了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

34

帖子

0

粉丝