锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

蓝桥杯DS18B20温度传感器,读写操作解释

时间:2022-11-06 21:30:00 传感器22da5

///通过单总线DS18B20写一个字节 void Write_DS18B20(unsigned char dat) {  unsigned char i;  for(i=0;i<8;i  )  {   DQ = 0;   DQ = dat&0x01///每次只操作一个,通过这个操作DQ比如0x44(0100 0100),从最右边开始,状态为                 //两低 一高 三低 一高 一低 ,0xcc,执行跳过ROM的指令,0x44执行温度转换指令,0xbe 读取暂存器指令   Delay_OneWire(5);   DQ = 1;   dat >>= 1;  }  Delay_OneWire(5); }  //从DS18B读一个字节 unsigned char Read_DS18B20(void) {  unsigned char i;  unsigned char dat;     for(i=0;i<8;i  )  {   DQ = 0;   dat >>= 1;   DQ = 1;   if(DQ)//因为当输入0xbe开始读取高速暂存器的时候,只需输出临时存储器的第0字节(低温数据8位)和第1字节(高温数据8位)        而且输出是一个一个输出,只输出0或1,DA18B20是单总线输出(通过DQ输出),当DQ当输出为0时,跳过if里面的操作         //通过dat右移一位的操作,给出dat打进去0,如果DQ为1,就实施if通过或(0)x80 -1000 0000),赋值1操作,后几个不变   {    dat |= 0x80;//dat=dat | (DQ<<7)   }        Delay_OneWire(5);  }  return dat; }

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章