DS18B20初始化失败,用MSP430F149

2019-07-20 15:23发布

刚开始学习MSP430单片机,参考网上修改的程序, DS18B20总是初始化失败,端口读入的值总是FFFF。
延时用示波器测的,满足500,改为600US也不好用,请教各位达人,可能是什么原因,谢谢。

/***************DS18B20 Reset&Init*********************/
void Reset_18B20(void)
{
    P4DIR|=0x01 ;
   OUT_0;//Set output 0  主机首先发出一个480-960微秒的低电平脉冲
   DelayNus(50);  //500us
   OUT_1; //释放数据线(将数据线拉高)
   DelayNus(10);  //90us
   P4DIR&=~BIT0;   //BIT0=0X01  P4.0=input
   if((P4IN&BIT0)==BIT0)  
   {   Err_Flag=1;     }  //失败,一直都是高电平说明总线上无器件应答
   else  
   {
     Err_Flag=0; // 有低电平出现说明总线上有器件已做出应答
     OUT_1;
   }
   P4DIR|=BIT0 ;  //BIT0=0X01  P4.0=output
   
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
在路上的旁观者
1楼-- · 2019-07-21 14:28
 精彩回答 2  元偷偷看……
pmp
2楼-- · 2019-07-21 19:06
你把时序安排好了!
pmp
3楼-- · 2019-07-21 23:55
 精彩回答 2  元偷偷看……
lzbf
4楼-- · 2019-07-22 02:43
 精彩回答 2  元偷偷看……
smilingangel
5楼-- · 2019-07-22 03:08
这个我觉得一还是先检查下硬件的
smilingangel
6楼-- · 2019-07-22 05:12
第二就是单片机的时钟的以及跟18B20的通讯时序的

一周热门 更多>