⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gui.c

📁 别人的C51菜单程序
💻 C
📖 第 1 页 / 共 2 页
字号:
	{
		string_display_code(0,str1,0x00,0x31);
		while(!key_flag) //如果无键按下,等待
		{
		}
			key_flag=0;	
			readregister(keyvalue);	//如果有键按下,读键
			temp=keyvalue[0]&0x0f;
			if(temp==0x0c)//cancel 键
			{
				clrtext();
				string_display_code(0,str2,0x00,0x31);
				while(!key_flag) //如果无键按下,等待
				{
				}
				key_flag=0;
			
				readregister(keyvalue);	//如果有键按下,读键
				temp=keyvalue[0]&0x0f;
				switch(temp)
				{
					case 0x00:
					{	clrtext();
						ds18b20_1_dis=1;
						ds18b20_2_dis=0;
						ds18b20_3_dis=0;
						ds18b20_4_dis=0;
						break;
					}
					case 0x01:
					{	clrtext();
						ds18b20_1_dis=0;
						ds18b20_2_dis=1;
						ds18b20_3_dis=0;
						ds18b20_4_dis=0;
						break;
					}
					case 0x02:
					{	clrtext();
						ds18b20_1_dis=0;
						ds18b20_2_dis=0;
						ds18b20_3_dis=1;
						ds18b20_4_dis=0;
						break;
					}
					case 0x04:
					{	clrtext();
						ds18b20_1_dis=0;
						ds18b20_2_dis=0;
						ds18b20_3_dis=0;
						ds18b20_4_dis=1;
						break;
					}
					default:
						break;
				}  
			}
			else 
				if(temp==0x0f)//ok 键
				{
					ds18b20_1_dis=1;
					ds18b20_2_dis=1;
					ds18b20_3_dis=1;
					ds18b20_4_dis=1;
					clrtext();
				}
				else
				{
					clrtext();
					continue;
				}
		while(!key_flag)
		{
			channel_display();
		}
	
	}

}
//AD转换
void AD_Disp(void)
{
	uint data ad_value;
	float data var1;
	uchar data buf[10];
	uchar code *str="The AD value is:";
	clrgraphic();
	string_display_code(0,str,0x00,0x31);
	while(!key_flag)
	{
	ad_value=spi_transition();
	lct1451_transition(ad_value);
	var1=(float)(ad_value*ad_vref/4096);
	
	sprintf(buf,"%f",var1);
	string_display(buf,0x10,0x31);
	}
}
//
void CaculatorDisp(void)
{
}
//
void TimeDisp(void)
{
	
	clrgraphic();
	while(!key_flag)
	{	
		//display_time(0x00,0x31);
		//display_year(0x03,0x32);
		time_display();
	}
	
}
//
void time_init(void)
{
	TMOD=0x02;
	TH0=6;
	TL0=6;
	ET0=1;
	TR0=1;
}
//
void time0_int(void) interrupt 1 using 1
{	
	if(time_count==100)
	{
		time_count=0;
		timeout=1;
	}
	else
		time_count++;
}
void channel_display(void)
{  	uchar xdata ds18b20_data[4];
	uchar data i;
	uchar ds18b20_num1[8]={0xfd,0x00,0x00,0x00,0xb8,0xc5,0x45,0x28};
	uchar ds18b20_num2[8]={0x8e,0x00,0x00,0x00,0xb8,0xc5,0x30,0x28};
	uchar ds18b20_num3[8]={0xb9,0x00,0x00,0x00,0xb8,0xc5,0x31,0x28};
	uchar ds18b20_num4[8]={0xe0,0x00,0x00,0x00,0xb8,0xc5,0x32,0x28};
	
	uchar code *str1="ds18b20_1 :temperature is:";
	uchar code *str2="ds18b20_2 :temperature is:";
	uchar code *str3="ds18b20_3 :temperature is:";
	uchar code *str4="ds18b20_4 :temperature is:";
	if(timeout)
		{
		timeout=0;
		if(ds18b20_1_dis)
		{
		ds18b20_init();
		ds18b20_writecommand(0xcc);
		ds18b20_writecommand(0x44);
		//ds18b20_init();
		//ds18b20_writecommand(0xcc);
		//ds18b20_writecommand(0xbe);
		delay(500);
		match_rom(ds18b20_num1);	  //匹配第一路
 		ds18b20_writecommand(0xbe);	  //读
		for(i=0;i<2;i++)
		{
			ds18b20_data[i]=ds18b20_readdata();
		}
		if(ds18b20_data[0]!=ds18b20_data[2]||ds18b20_data[1]!=ds18b20_data[3])		// 	是或
		{	 
			
			ds18b20_data[2]=ds18b20_data[0];
			ds18b20_data[3]=ds18b20_data[1];
			temperature_process(ds18b20_data[2],ds18b20_data[3]);
			string_display_code(0,str1,0x00,0x31);
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			if(!ds18b20_flag) //正
			{	
				string_display(zhen_temp,0x1a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x1e,0x31);
				}
		
			}
			else   //负
			{	
				set_point(SET_ADDRESS_POINTER,0x19,0x31);
				text_display('-');
				string_display(zhen_temp,0x1a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x1e,0x31);
				}

  	 		}
		}
		}
		if(ds18b20_2_dis)
		{
		ds18b20_init();
		ds18b20_writecommand(0xcc);
		ds18b20_writecommand(0x44);
		//ds18b20_init();
		//ds18b20_writecommand(0xcc);
		//ds18b20_writecommand(0xbe);
		delay(500);
		match_rom(ds18b20_num2);	  //匹配第二路
 		ds18b20_writecommand(0xbe);	  //读
		for(i=0;i<2;i++)
		{
			ds18b20_data[i]=ds18b20_readdata();
		}
		if(ds18b20_data[0]!=ds18b20_data[2]||ds18b20_data[1]!=ds18b20_data[3])		// 	是或
		{	 
			//clrtext();
			ds18b20_data[2]=ds18b20_data[0];
			ds18b20_data[3]=ds18b20_data[1];
			temperature_process(ds18b20_data[2],ds18b20_data[3]);
			string_display_code(0,str2,0x20,0x31);
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			if(!ds18b20_flag) //正
			{	
				string_display(zhen_temp,0x3a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x3e,0x31);
				}
		
			}
			else   //负
			{	
				set_point(SET_ADDRESS_POINTER,0x39,0x31);
				text_display('-');
				string_display(zhen_temp,0x3a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x3e,0x31);
				}

  	 		}
		}
		}
		if(ds18b20_3_dis)
		{
		ds18b20_init();
		ds18b20_writecommand(0xcc);
		ds18b20_writecommand(0x44);
		//ds18b20_init();
		//ds18b20_writecommand(0xcc);
		//ds18b20_writecommand(0xbe);
		delay(500);
		match_rom(ds18b20_num3);	  //匹配第三路
 		ds18b20_writecommand(0xbe);	  //读
		for(i=0;i<2;i++)
		{
			ds18b20_data[i]=ds18b20_readdata();
		}
		if(ds18b20_data[0]!=ds18b20_data[2]||ds18b20_data[1]!=ds18b20_data[3])		// 	是或
		{	 
			//clrtext();
			ds18b20_data[2]=ds18b20_data[0];
			ds18b20_data[3]=ds18b20_data[1];
			temperature_process(ds18b20_data[2],ds18b20_data[3]);
			string_display_code(0,str3,0x40,0x31);
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			if(!ds18b20_flag) //正
			{	
				string_display(zhen_temp,0x5a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x5e,0x31);
				}
		
			}
			else   //负
			{	
				set_point(SET_ADDRESS_POINTER,0x59,0x31);
				text_display('-');
				string_display(zhen_temp,0x5a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x5e,0x31);
				}

  	 		}
		}
		}
		if(ds18b20_4_dis)
		{
		ds18b20_init();
		ds18b20_writecommand(0xcc);
		ds18b20_writecommand(0x44);
		//ds18b20_init();
		//ds18b20_writecommand(0xcc);
		//ds18b20_writecommand(0xbe);
		delay(500);
		match_rom(ds18b20_num4);	  //匹配第四路
 		ds18b20_writecommand(0xbe);	  //读
		for(i=0;i<2;i++)
		{
			ds18b20_data[i]=ds18b20_readdata();
		}
		if(ds18b20_data[0]!=ds18b20_data[2]||ds18b20_data[1]!=ds18b20_data[3])		// 	是或
		{	 
			//clrtext();
			ds18b20_data[2]=ds18b20_data[0];
			ds18b20_data[3]=ds18b20_data[1];
			temperature_process(ds18b20_data[2],ds18b20_data[3]);
			string_display_code(0,str4,0x60,0x31);
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			text_display(' ');
			if(!ds18b20_flag) //正
			{	
				string_display(zhen_temp,0x7a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x7e,0x31);
				}
		
			}
			else   //负
			{	
				set_point(SET_ADDRESS_POINTER,0x79,0x31);
				text_display('-');
				string_display(zhen_temp,0x7a,0x31);
				if(dot_dis)
				{
					text_display('.');	  // ,0x00,0x00
					string_display(xiaoshu_temp,0x7e,0x31);
				}

  	 		}			
		}
		}	
	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -