watershade 发表于 2016-5-4 22:22:33

个人觉得不应该改变输入输出状态。建议用USART设置成1-wire试试。

cos12a-21701 发表于 2016-5-5 12:27:10

先确认硬件是否连接好,IO是否连对,有无上下拉,测试电压是否正常(包括电源,IO口)。
调试程序IO输出,是否能正常输出,是否能读入。
再用检测程序时序是否正确,数据是否正确。
如果都正确再更换传感器零件测试一下。

时光虫子 发表于 2016-5-5 21:10:12

IO配置浮空输入就可以了,数据上拉的

taonsh 发表于 2016-5-6 15:53:19

解决了没?这个不难啊,延时改一下试试。

H_JEN 发表于 2016-5-8 16:10:06

LIUBEIHUA 发表于 2016-5-4 16:16
STM32的DS18B20的测温
设置成开漏输出,外接上拉电阻,
没有说明芯片类型,如是F103直接设成开漏输出。


103的,现在改了成开漏了,能读数据了,但是读出来的数据要么全为0,要么全为1,而且低八位总是为0

H_JEN 发表于 2016-5-8 16:10:54

wtliu 发表于 2016-5-4 16:19
有做上啦设置吗?

有上拉电阻。能读数据了,但是读出来的数据,高八位要么全为0,要么全为1;低八位总是为0

H_JEN 发表于 2016-5-8 16:11:57

jtc_88 发表于 2016-5-4 16:46
公司电脑 不太好弄 我有一个 STM32F030 读取DS18B20的程序 上传不上去
《DS18B20.c》



谢谢,不过我的是103的。现在能读数据了,但是读出来的数据,高八位要么全为0,要么全为1;低八位总是为0

H_JEN 发表于 2016-5-8 16:12:29

wambob 发表于 2016-5-4 17:40
18b20是单总线器件,外部需要上拉,而且时序对延时有要求,我开始跳这个,也没调成,最后还是用别人的例子 ...

谢谢。现在能读数据了,但是读出来的数据,高八位要么全为0,要么全为1;低八位总是为0

H_JEN 发表于 2016-5-8 16:12:47

zhang7309 发表于 2016-5-4 19:32
首先确定传感器是不是好的

传感器是好的。现在能读数据了,但是读出来的数据,高八位要么全为0,要么全为1;低八位总是为0

H_JEN 发表于 2016-5-8 16:18:52

sacq12 发表于 2016-5-4 19:40
楼主给出你的连线图,免得大家怀疑上拉电阻什么的;
如有可能,用逻辑分析仪看波形更好。 ...

图片中的左边是电源线,中间是数据线,右边是地线。
现在能读数据了,但是读出来的数据,高八位要么全为0,要么全为1;低八位总是为0
页: 1 2 [3] 4 5 6
查看完整版本: 基于STM32的DS18B20的问题