OpenEdv-开源电子网

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

ds18b20实验中释放总线的问题

[复制链接]

22

主题

73

帖子

0

精华

初级会员

Rank: 2

积分
164
金钱
164
注册时间
2017-9-18
在线时间
42 小时
发表于 2018-4-28 20:24:24 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 aswsd 于 2018-4-29 10:57 编辑

这个实验中每当要释放总线时,把连接DQ的IO口设为通用推挽输出,并输出高电平。我通过在网上查资料,做一个推测:
1当IO口设为推挽输出,我们要释放总线就是让IO口输出满足总线空闲状态的电平。(比如本实验中DQ空闲状态为高电平)
2当IO口设为开漏输出,我们要释放总线就是让IO口输出高阻态,这样总线电平可以被其他器件拉高或拉低

这样理解对不对??


最佳答案

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

这是输出0以后,设置为输出1,相当于输出一个低电平脉宽。 如果你不设置这一步,你后面设置成输入模式,那就是下拉输入了,还是低电平,自然就不行
普通人要怎么努力,才能超越勤奋的天才啊
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-4-28 20:24:25 | 显示全部楼层
aswsd 发表于 2018-4-29 11:06
如果是这样的话我对于读时序有一个疑问
读时序过程是主机输出低电平延时2us,然后主机转入输入模式延时12u ...

这是输出0以后,设置为输出1,相当于输出一个低电平脉宽。
如果你不设置这一步,你后面设置成输入模式,那就是下拉输入了,还是低电平,自然就不行
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-4-29 01:33:25 | 显示全部楼层
差不多吧
回复

使用道具 举报

22

主题

73

帖子

0

精华

初级会员

Rank: 2

积分
164
金钱
164
注册时间
2017-9-18
在线时间
42 小时
 楼主| 发表于 2018-4-29 11:06:04 | 显示全部楼层
如果是这样的话我对于读时序有一个疑问
读时序过程是主机输出低电平延时2us,然后主机转入输入模式延时12us,读取总线当前电平后延时50us
那么红色部分程序我理解是设为上拉输入,这一步为什么必要呢?我在PPT里看到一句“主机在读时序期间必须释放总线”,不知道有没有关系?

u8 DS18B20_Read_Bit(void)                          // read one bit
{
    u8 data;
    DS18B20_IO_OUT();//SET PA0 OUTPUT
    DS18B20_DQ_OUT=0;
    delay_us(2);
    DS18B20_DQ_OUT=1;
    DS18B20_IO_IN();//SET PA0 INPUT
    delay_us(12);
    if(DS18B20_DQ_IN)data=1;
    else data=0;         
    delay_us(50);           
    return data;
}
普通人要怎么努力,才能超越勤奋的天才啊
回复

使用道具 举报

22

主题

73

帖子

0

精华

初级会员

Rank: 2

积分
164
金钱
164
注册时间
2017-9-18
在线时间
42 小时
 楼主| 发表于 2018-4-30 11:47:46 | 显示全部楼层
明白了!是为了输出2us低电平脉冲
普通人要怎么努力,才能超越勤奋的天才啊
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-18 17:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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