C语言实现8X8点阵滚动显示温度,DS18B20的操作程序 sbit DQ=P3^3; unsigned char time; //设置全局变量,专门用于严格延时 函数功能:将DS18B20传感器初始化,读取应答信号 出口参数:flag bit Init_DS18B20(void) { bit flag; //储存DS18B20是否存在的标志,flag=0,表示存在;flag=1,表示不存在 DQ = 1; //先将数据线拉高 for(time=0;time<2;time ) //略微延时约6微秒 ; DQ = 0; //再将数据线从高拉低,要求保持480~960us for(time=0;time<200;time ) //略微延时约600微秒 ; //以向DS18B20发出一持续480~960us的低电平复位脉冲 DQ = 1; //释放数据线(将数据线拉高) for(time=0;time<10;time ) ; //延时约30us(释放总线后需等待15~60us让DS18B20输出存在脉冲) flag=DQ; //让单片机检测是否输出了存在脉冲(DQ=0表示存在) for(time=0;time<200;time ) //延时足够长时间,等待存在脉冲输出完毕 ; return (flag); //返回检测成功标志 } 函数功能:从DS18B20读取一个字节数据 出口参数:dat ……