13年7个月前IP:未同步
525340
13楼
不建议刚开始入门就从18B20开始,它的时序有点啰嗦。IO口线的定义要与硬件的接法一致,Keil编译软件要和谐过。LS说得对,read_18b20函数里面有错误。更正为:
unsigned char read_18b20()
{
    unsigned char du_i;
    unsigned char outdata_1820=0x00;    
    unsigned char tmp_du=0x00;          

    for(du_i=1;du_i<=8;du_i++)
    {
         DQ=1;
         DQ=0;                              
         _nop_();    
         _nop_();
         DQ=1;                          
        _nop_();
        tmp_du=P1&0x80;                    
        tmp_du=tmp_du<<0;              
        outdata_1820=outdata_1820|tmp_du;        
        delay1(8);                            
        if(du_i==8)break;
        outdata_1820=outdata_1820>>1;  
    }
    return(outdata_1820);
}
评论
文号 / 525340

千古风流
名片发私信
学术分 2
总主题 34 帖总回复 860 楼拥有证书:学者 笔友
注册于 2010/06/26 11:28:25最后登录 2023/12/25 18:13:39
主体类型:个人
所属领域:无
认证方式:邮箱
IP归属地:0

个人简介

暂未填写
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的