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

📄 5588.c

📁 密码箱程序
💻 C
📖 第 1 页 / 共 5 页
字号:
	for (temp=0;temp<9;temp++)
	{
		_1625_Data=B7;
		_1625_WR=0;	_1625_WR=1;
		B=B<<1;
	}
	_1625_CS=1;
}


void Display(unsigned char DispObj)
{
	unsigned char temp;
	
	switch(DispObj)
	{
		case MainKey:
					switch(ObjectBuf[MainKey])
					{
						case 1:
									WriteLCD(48,0x01);
									Add26&=0x07;	WriteLCD(26,Add26);
									Add34&=0x07;	WriteLCD(34,Add34);
									WriteLCD(42,0x00);
									WriteLCD(115,0x02);
									break;
						case 2:
									WriteLCD(48,0x02);
									Add26&=0x07;	WriteLCD(26,Add26);
									Add34&=0x07;	WriteLCD(34,Add34);
									WriteLCD(42,0x00);
									WriteLCD(115,0x02);
									break;
						case 3:
									WriteLCD(48,0x04);
									Add26&=0x07;	WriteLCD(26,Add26);
									Add34&=0x07;	WriteLCD(34,Add34);
									WriteLCD(42,0x00);
									WriteLCD(115,0x02);
									break;
						case 4:
									WriteLCD(48,0x00);
									Add26|=0x08;	WriteLCD(26,Add26);
									Add34&=0x07;	WriteLCD(34,Add34);
									WriteLCD(42,0x00);
									WriteLCD(115,0x02);
									break;
						case 5:
									WriteLCD(48,0x00);
									Add26&=0x07;	WriteLCD(26,Add26);
									Add34|=0x08;	WriteLCD(34,Add34);
									WriteLCD(42,0x00);
									WriteLCD(115,0x02);
									break;
						case 6:
									WriteLCD(48,0x00);
									Add26&=0x07;	WriteLCD(26,Add26);
									Add34&=0x07;	WriteLCD(34,Add34);
									WriteLCD(42,0x0f);
									WriteLCD(115,0x02);
									break;
						case 7:
									WriteLCD(48,0x00);
									Add26&=0x07;	WriteLCD(26,Add26);
									Add34&=0x07;	WriteLCD(34,Add34);
									WriteLCD(42,0x00);
									WriteLCD(115,0x0f);
					}
					break;
		case LowFreMainKey:
					switch(ObjectBuf[LowFreMainKey])
					{
						case 1:
									WriteLCD(14,0x01);
									WriteLCD(16,0x00);
									Add10&=0x07;	WriteLCD(10,Add10);
									break;
						case 2:
									WriteLCD(14,0x02);
									WriteLCD(16,0x00);
									Add10&=0x07;	WriteLCD(10,Add10);
									break;
						case 3:
									WriteLCD(14,0x04);
									WriteLCD(16,0x00);
									Add10&=0x07;	WriteLCD(10,Add10);
									break;
						case 4:
									WriteLCD(14,0x08);
									WriteLCD(16,0x00);
									Add10&=0x07;	WriteLCD(10,Add10);
									break;
						case 5:
									WriteLCD(14,0x00);
									WriteLCD(16,0x02);
									Add10&=0x07;	WriteLCD(10,Add10);
									break;
						case 6:
									WriteLCD(14,0x00);
									WriteLCD(16,0x04);
									Add10&=0x07;	WriteLCD(10,Add10);
									break;
						case 7:
									WriteLCD(14,0x00);
									WriteLCD(16,0x08);
									Add10&=0x07;	WriteLCD(10,Add10);
									break;
						case 8:
									WriteLCD(14,0x00);
									WriteLCD(16,0x00);
									Add10|=0x08;	WriteLCD(10,Add10);
					}
					break;
		case Timer:
					temp=SEG[ObjectBuf[Timer]/10];
					WriteLCD(52,temp);
					temp>>=4;
					WriteLCD(50,temp);

					temp=SEG[ObjectBuf[Timer]%10];
					WriteLCD(54,temp|0x08);
					temp>>=4;
					WriteLCD(56,temp);
					break;
		case LowFreTimer:
					temp=SEG[ObjectBuf[LowFreTimer]/10];
					WriteLCD(7,temp);
					temp>>=4;
					WriteLCD(9,temp);

					temp=SEG[ObjectBuf[LowFreTimer]%10];
					WriteLCD(3,temp);
					temp>>=4;
					WriteLCD(5,temp);
					break;
		case WaterTemperatureSet:
					if(OperateMode==SetWaterTemperatureMode&&!LightState)
					{
						WriteLCD(32,0);
						WriteLCD(30,0);
						Add34&=0x08;	WriteLCD(34,Add34);
						WriteLCD(36,0);
					}
					else
					{
						temp=SEG[ObjectBuf[WaterTemperatureSet]/10];
						WriteLCD(32,temp);
						temp>>=4;
						WriteLCD(30,temp);
	
						temp=A5_SEG[ObjectBuf[WaterTemperatureSet]%10];
						Add34&=0x08;	Add34|=temp;	WriteLCD(34,Add34);
						temp>>=4;
						WriteLCD(36,temp);
					}
					break;
		case WaterTemperature:
					temp=SEG[ObjectBuf[WaterTemperature]/10];
					WriteLCD(32,temp);
					temp>>=4;
					WriteLCD(30,temp);

					temp=A5_SEG[ObjectBuf[WaterTemperature]%10];
					Add34&=0x08;	Add34|=temp;	WriteLCD(34,Add34);
					temp>>=4;
					WriteLCD(36,temp);
					break;
		case TimeSum:
					temp=SEG[(unsigned char)(TimeSumVal/60/1000)];
					WriteLCD(85,temp);
					temp>>=4;
					WriteLCD(87,temp);

					temp=SEG[(unsigned char)(TimeSumVal/60%1000/100)];
					WriteLCD(81,temp);
					temp>>=4;
					WriteLCD(83,temp);

					temp=SEG[(unsigned char)(TimeSumVal/60%100/10)];
					WriteLCD(77,temp);
					temp>>=4;
					WriteLCD(79,temp);

					temp=SEG[(unsigned char)(TimeSumVal/60%10)];
					WriteLCD(73,temp|0x08);
					temp>>=4;
					WriteLCD(75,temp);
					break;
		case EnvTemperature:
					temp=SEG[ObjectBuf[EnvTemperature]/10];
					WriteLCD(110,temp);
					temp>>=4;
					WriteLCD(112,temp);

					temp=SEG[ObjectBuf[EnvTemperature]%10];
					WriteLCD(106,temp|0x08);
					temp>>=4;
					WriteLCD(108,temp);
					break;
		case EnvHumidity:
					temp=SEG[ObjectBuf[EnvHumidity]/10];
					WriteLCD(111,temp);
					temp>>=4;
					WriteLCD(113,temp);

					temp=SEG[ObjectBuf[EnvHumidity]%10];
					WriteLCD(107,temp|0x08);					
					temp>>=4;
					WriteLCD(109,temp);
					break;
		case Cartoon:
					switch(ObjectBuf[Cartoon])
					{
						case 0:
									WriteLCD(60,0);
									WriteLCD(62,0);
									WriteLCD(64,0);
									WriteLCD(66,0);
									WriteLCD(68,0);
									WriteLCD(84,0);
									WriteLCD(70,0);
									WriteLCD(72,0);
									WriteLCD(74,0);
									WriteLCD(76,0);
									WriteLCD(78,0);
									WriteLCD(80,0);
									WriteLCD(82,0);
									WriteLCD(86,0);
									WriteLCD(88,0);
									WriteLCD(90,0);
									WriteLCD(92,0);
									WriteLCD(94,0);
									WriteLCD(98,0);
									break;
						case 1:
									WriteLCD(64,0x02);
									WriteLCD(60,0x01);
									WriteLCD(62,0x01);
									WriteLCD(66,0x01);
									WriteLCD(68,0x01);
									break;
						case 2:
									WriteLCD(60,0x03);
									WriteLCD(62,0x03);
									WriteLCD(66,0x03);
									WriteLCD(68,0x03);
									break;
						case 3:
									WriteLCD(60,0x07);
									WriteLCD(62,0x07);
									WriteLCD(66,0x07);
									WriteLCD(68,0x07);
									break;
						case 4:
									WriteLCD(60,0x0f);
									WriteLCD(62,0x0f);
									WriteLCD(66,0x0f);
									WriteLCD(68,0x0f);
									break;
						case 5:
									WriteLCD(84,0x08);
									break;
						case 6:
									WriteLCD(84,0x0f);
									break;
						case 7:
									WriteLCD(98,0x07);
									break;
						case 8:
									WriteLCD(98,0x0f);
									break;
						case 9:
									WriteLCD(94,0x08);
									break;
						case 10:
									WriteLCD(94,0x0f);
									break;
						case 11:
									WriteLCD(92,0x07);
									break;
						case 12:
									WriteLCD(92,0x0f);
									break;
						case 13:
									WriteLCD(64,0x06);
									WriteLCD(90,0x08);
									break;
						case 14:
									WriteLCD(90,0x0f);
									break;
						case 15:
									WriteLCD(88,0x07);
									break;
						case 16:
									WriteLCD(88,0x0f);
									break;
						case 17:
									WriteLCD(86,0x08);
									break;
						case 18:
									WriteLCD(86,0x0f);
									break;
						case 19:
									WriteLCD(82,0x07);
									break;
						case 20:
									WriteLCD(82,0x0f);
									break;
						case 21:
									WriteLCD(80,0x08);
									break;
						case 22:
									WriteLCD(80,0x0f);
									break;
						case 23:
									WriteLCD(78,0x07);
									break;
						case 24:
									WriteLCD(78,0x0f);
									break;
						case 25:
									WriteLCD(64,0x03);
									WriteLCD(76,0x08);
									break;
						case 26:
									WriteLCD(76,0x0f);
									break;
						case 27:
									WriteLCD(74,0x07);
									break;
						case 28:
									WriteLCD(74,0x0f);
									break;
						case 29:
									WriteLCD(72,0x08);
									break;
						case 30:
									WriteLCD(72,0x0f);
									break;
						case 31:
									WriteLCD(70,0x0f);
									break;
					}

					break;
		case Minute:
					if(OperateMode==SetMinMode&&!LightState)
					{
						WriteLCD(93,0);
						WriteLCD(95,0);
						WriteLCD(89,0x08);
						WriteLCD(91,0);
					}
					else
					{
						temp=SEG[ObjectBuf[Minute]/10];
						WriteLCD(93,temp);
						temp>>=4;
						WriteLCD(95,temp);
	
						temp=SEG[ObjectBuf[Minute]%10];
						WriteLCD(89,temp|0x08);
						temp>>=4;
						WriteLCD(91,temp);
					}
					break;
		case Hour:
					if(OperateMode==SetHourMode&&!LightState)
					{
						WriteLCD(103,0);
						WriteLCD(105,0);
						WriteLCD(99,0);
						WriteLCD(101,0);
					}
					else
					{
						temp=SEG[ObjectBuf[Hour]/10];
						WriteLCD(103,temp);
						temp>>=4;
						WriteLCD(105,temp);
	
						temp=SEG[ObjectBuf[Hour]%10];
						WriteLCD(99,temp);
						temp>>=4;
						WriteLCD(101,temp);
					}
					break;
		case SecondDot:
					if(SecondDotState)
					{
						WriteLCD(97,0x0f);
					}
					else
					{
						WriteLCD(97,0);
					}
					break;
		case Knock:
					if(!KnockPause)
					{
						Add26|=0x04;
					}
					else
					{
						Add26&=0x0b;
					}
					WriteLCD(26,Add26);
					break;
		case PauseFlash:
					if(PauseLightState)
					{
						WriteLCD(38,0x08);
					}
					else
					{
						WriteLCD(38,0x00);
					}
					break;
		case IntensityFlash:
					if(IntensityLightState)
					{
						Add10|=0x04;	WriteLCD(10,Add10);
					}
					else
					{
						Add10&=0x0b;	WriteLCD(10,Add10);
					}
					break;
		case LowFreIntensity:
					switch(ObjectBuf[LowFreIntensity])
					{
						case 0:
								WriteLCD(20,0x00);
								WriteLCD(21,0x00);
								WriteLCD(22,0x00);
								break;
						case 1:
								WriteLCD(20,0x01);
								WriteLCD(21,0x00);
								WriteLCD(22,0x00);
								break;
						case 2:
								WriteLCD(20,0x07);
								WriteLCD(21,0x00);
								WriteLCD(22,0x00);
								break;
						case 3:
								WriteLCD(20,0x0f);
								WriteLCD(21,0x01);
								WriteLCD(22,0x00);
								break;
						case 4:
								WriteLCD(20,0x0f);
								WriteLCD(21,0x07);
								WriteLCD(22,0x00);
								break;
						case 5:
								WriteLCD(20,0x0f);
								WriteLCD(21,0x0f);
								WriteLCD(22,0x01);
								break;
						case 6:
								WriteLCD(20,0x0f);
								WriteLCD(21,0x0f);
								WriteLCD(22,0x07);
								break;
					}
					break;
		case RefreshFlash:
					if(RefreshLightState)
					{
						WriteLCD(46,0x07);
					}
					else
					{
						WriteLCD(46,0x06);
					}
					break;
		case PerfectFlash:
					if(PerfectLightState)
					{
						WriteLCD(46,0x07);
					}
					else
					{
						WriteLCD(46,0x05);
					}
					break;
		case SynthesizeFlash:
					if(SynthesizeLightState)
					{
						WriteLCD(46,0x07);
					}
					else
					{
						WriteLCD(46,0x03);
					}
					break;
		case ManualFlash:
					if(ManualLightState)
					{
						WriteLCD(28,0x08);
					}
					else
					{
						WriteLCD(28,0x00);
					}
					break;
		case OneFlash:
					if(OneLightState)
					{
						WriteLCD(12,0x0f);
					}
					else
					{
						WriteLCD(12,0x0e);
					}
					break;
		case TwoFlash:
					if(TwoLightState)
					{
						WriteLCD(12,0x0f);
					}
					else
					{
						WriteLCD(12,0x0d);
					}
					break;
		case ThreeFlash:
					if(ThreeLightState)
					{
						WriteLCD(12,0x0f);
					}
					else
					{
						WriteLCD(12,0x0b);
					}
					break;
		case FourFlash:
					if(FourLightState)
					{
						WriteLCD(12,0x0f);
					}
					else
					{
						WriteLCD(12,0x07);
					}
					break;
		case FiveFlash:
					if(FiveLightState)
					{

⌨️ 快捷键说明

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