为您找到"
单片机C语言程序设计实训100例综合设计中的用1602LCD与DS18B20设计的温度...
"相关结果约100,000,000个
PORTA|=BIT(DS18B20); //释放总线 Delayus(60); //等待60微秒 DDRA&=~BIT(DS18B20); //配置为输入 while((PINA&(BIT(DS18B20))); //等待DS18B20拉低 while(!(PINA&(BIT(DS18B20))); //等待DS18B20释放总线}/***函数名...
lcd_wcmd(0x01) ; //清除LCD的显示内容 lcd_wcmd(0x38) ; //16*2显示,5*7点阵,8位数据 delay1(5) ; lcd_wcmd(0x38) ; delay1(5) ; lcd_wcmd(0x38) ; delay1(5) ; lcd_wcmd(0x0c) ; //显示开,关光标...
uchar CurrentT=0;//当前读取的温度整数部分 uchar Temp_Value[]={0x00,0x00};//从DS18B20读取的温度值 uchar Display_Digit[]={0,0,0,0}; //待显示的各温度数位 bit DS18B20_IS_OK=1;//传感器正常标志 //-...
DQ=1;Delay(8); //释放数据线(将数据线拉高) //延时约30us(释放总线后需等待15~60us让DS18B20输出存在脉冲) status=DQ;Delay(100); //让单片机检测是否输出了存在脉冲(DQ=0表示存在) //延时足够长时间,等待存在脉冲输出完毕 ...
Init_DS18B20();WriteOneChar(0xCC); //跳过读序号列号的操作 WriteOneChar(0xBE); //读取温度寄存器等(共可读9个寄存器) 前两个就是温度 delay_18B20(100);a=ReadOneChar(); //读取温度值低位 b=ReadOneCha...
看书:51单片机工程师是怎么炼成的 最后一章:温度自动控制系统
void ds18b20_init(void){ int i;again: //这里为了方便,用了一个C语言的禁忌指令:goto label TD = 1; //T 为输出状态 TO = 0; //输出低电平 delayus(500); //延迟480~960 us TO = 1; //释放总线...
Init_DS18B20();WriteOneChar(0xCC); //跳过读序号列号的操作 WriteOneChar(0xBE); //读取温度寄存器等(共可读9个寄存器) 前两个就是温度 delay_18B20(100);a=ReadOneChar(); //读取温度值低位 b=ReadOneCha...
void delay(uint a) //延时 { while(a--); //为了精准控制 } void reset() //复位 { DQ=0;delay(50);DQ=1;delay(50);} void write_bit(uchar a) //写一位 { DQ=0;if(a) DQ=1;delay(5)...
//数码管的位选信号void delay1 (void)//关闭数码管延时程序{int k;for (k=0; k<1000; k++);}///以下是LCD1602驱动程序///void lcd_delay(uchar ms) /*LCD1602 延时*/{ uchar j; while(ms--){ ...