1; } void checkflag() { sta=SPI_Read(STATUS); // 读状态寄存器// if(RX_DR) //{ // SPI_Read_Buf(RD_RX_PLOAD/* 读取接收数据指令*/,rx_buf/* 数组[20]*/,TX_PLOAD_WIDTH/*20*/); // flag=1; //} if (MAX_RT) { SPI_RW_Reg(FLUSH_TX /* 冲洗发送 FIFO 指令*/ ,0); } SPI_RW_Reg(WRITE_REG+STATUS,sta); // 清除中断} // 以下是 DS18B20 的操作程序//************************************************************************/ void delay1ms() { unsigned char i,j; for (i=0;i<4;i++) for (j=0;j<33;j++) ;} /***************************************************** 函数功能:延时若干毫秒入口参数: n ***************************************************/ void delaynms( unsigned char n) { unsigned char i; for (i=0;i<n;i++) delay1ms(); } /***************************************************** 函数功能:将 DS18B20 传感器初始化,读取应答信号出口参数: flag ***************************************************/