OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4838|回复: 13

stm32f10 ds18b20怎么把测得的温度信号转换成电压啊

[复制链接]

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
发表于 2016-3-7 20:13:46 | 显示全部楼层 |阅读模式
2金钱
stm32f10 ds18b20怎么把测得的温度信号转换成电压啊,给点提示行不行啊,求,不用直接给程序(虽然也知道不能有),给点提示

最佳答案

查看完整内容[请看2#楼]

DS18B20是一个数字温度传感器,使用的是1-ware总线,其有特定的总线时序 读出来的数据直接是0-1数字信号,跟电压没关系 ------不正经的分割线------
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

1097

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3571
金钱
3571
注册时间
2014-12-2
在线时间
365 小时
发表于 2016-3-7 20:13:47 | 显示全部楼层
DS18B20是一个数字温度传感器,使用的是1-ware总线,其有特定的总线时序
读出来的数据直接是0-1数字信号,跟电压没关系

d.png


------不正经的分割线------

z (12).jpg
坚决不用寄存器,拒绝重复造轮子。
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
 楼主| 发表于 2016-3-8 20:06:06 | 显示全部楼层
xkwy 发表于 2016-3-7 20:53
DS18B20是一个数字温度传感器,使用的是1-ware总线,其有特定的总线时序
读出来的数据直接是0-1数字信号, ...

如果我要设定一个温度范围,应该往哪里设定?  把温度上下限转换成寄存器可以存的数据那样可以吗
回复

使用道具 举报

6

主题

1097

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3571
金钱
3571
注册时间
2014-12-2
在线时间
365 小时
发表于 2016-3-8 20:25:27 | 显示全部楼层
爱已欠费199581 发表于 2016-3-8 20:06
如果我要设定一个温度范围,应该往哪里设定?  把温度上下限转换成寄存器可以存的数据那样可以吗

首先,你要会把温度读回来,一步一步来。
坚决不用寄存器,拒绝重复造轮子。
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
 楼主| 发表于 2016-3-9 12:57:25 | 显示全部楼层
xkwy 发表于 2016-3-8 20:25
首先,你要会把温度读回来,一步一步来。

温度已经读出来了,比如我想在一个温度范围让led灯亮,不在这个范围让他灭 应该怎么办啊
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
 楼主| 发表于 2016-3-9 13:02:25 | 显示全部楼层
爱已欠费199581 发表于 2016-3-9 12:57
温度已经读出来了,比如我想在一个温度范围让led灯亮,不在这个范围让他灭 应该怎么办啊

if(temperature>22)
                {
                  
                        GPIO_ResetBits(GPIOB,GPIO_Pin_5);
                        delay_ms(10);
                }
                 else
                 {
                  
                         GPIO_SetBits(GPIOB,GPIO_Pin_5);
                        delay_ms(10);
                 }



比如这样  我的室温才20.几   为什么程序烧进去温度不到22 PB.5控制的led就亮,就像这个if判断没有一样
回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2016-3-9 13:47:45 | 显示全部楼层
爱已欠费199581 发表于 2016-3-9 13:02
if(temperature>22)
                {
                  

你温度读对了吗
我有故事,你有酒吗
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
 楼主| 发表于 2016-3-9 14:05:46 | 显示全部楼层

对啊  我直接把给的程序扒下来就改了一点,度温度的任何函数都没动
回复

使用道具 举报

29

主题

311

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1530
金钱
1530
注册时间
2012-9-4
在线时间
262 小时
发表于 2016-3-9 14:06:43 | 显示全部楼层
你要干的事,和18b20有什么关系啊,你读到温度值,想用这个值干嘛就干嘛,就和18b20没关系啦。。。
STM32---STM32---STM32---STM32---STM32---STM32---STM32---STM32---STM32
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
 楼主| 发表于 2016-3-9 14:11:14 来自手机 | 显示全部楼层
aben 发表于 2016-3-9 14:06
你要干的事,和18b20有什么关系啊,你读到温度值,想用这个值干嘛就干嘛,就和18b20没关系啦。。。

对啊,就是我就用他读出来的temperature做一个判断,不好使,加的函数就是上面发的那个
回复

使用道具 举报

29

主题

311

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1530
金钱
1530
注册时间
2012-9-4
在线时间
262 小时
发表于 2016-3-9 16:53:47 | 显示全部楼层
爱已欠费199581 发表于 2016-3-9 14:11
对啊,就是我就用他读出来的temperature做一个判断,不好使,加的函数就是上面发的那个

你仿真一下不就知道啦,看一下你的温度值,看一下程序到底跑进if里没。。。仿真一下
STM32---STM32---STM32---STM32---STM32---STM32---STM32---STM32---STM32
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
 楼主| 发表于 2016-3-9 17:46:34 | 显示全部楼层
aben 发表于 2016-3-9 16:53
你仿真一下不就知道啦,看一下你的温度值,看一下程序到底跑进if里没。。。仿真一下

谢谢啦
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-11-8
在线时间
5 小时
 楼主| 发表于 2016-3-9 17:47:45 | 显示全部楼层
除10 ,自己编一个函数
回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2016-3-9 20:12:32 | 显示全部楼层
爱已欠费199581 发表于 2016-3-9 14:05
对啊  我直接把给的程序扒下来就改了一点,度温度的任何函数都没动

那你的if语句不可能出错的,你输出一下温度看看
我有故事,你有酒吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-20 13:39

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表