微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于RlTOS和ISP功能数字仪表系统设计实现

基于RlTOS和ISP功能数字仪表系统设计实现

时间:02-09 来源:互联网 点击:

601μs之间

DaUassDataout=1;

delay(35);

Dresence=DallassDataout;

delay(60);

return(presence);

}

//写时序从主控制器把总线拉低时开始

void writeCommand(unsigned char command)

{

unsigned char count;

for(count=O;count8;count++)

{

DallassDataout=0;

if(command0x01==1)

{

DallassDataout=1;

//写“1”时序在将总线拉低后,AT89S52主控制器必须在15μs内释放总线,所以此语句之前不能有较长时间的延时语句

}

delay(35);//无论写“1”还是写“0”时序都必须有至少601as的低电平 DallassDataout=1;//总线恢复的过程

command=command>>1;

}

}

//读时序从主控制器将总线拉低至少1μs后释放总线的时刻开始

unsigned char readdata(void)

{

unsigned char value;

unsigned char midtemp=0;

for(value=0;value8;Value++)

{

I DallassDataout=0;

midtemp=midtemp>>1;

-nop_O;

_nop_O;

DallassDataout=1;

//读时序时,控制器必须在15μs内释放总线,然后采样总线状态,所以此语句之前不能延时太长的时间的延时语句

if(DallassDataout==1)

{

midtemp=midtemp | 0x80;

//因为midtemp初始被赋值为0,所以如果采样总线状态为0则不必处理,0会自动被返回

}

delay(35);

//延时70μs完成此次Bit

位读时序过程,为下一次读作准备

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top