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

📄 lcm.c

📁 LCM320*240液晶驱动代码
💻 C
📖 第 1 页 / 共 5 页
字号:
	x=0x23;													//横坐标
	switch(Time[0]&0x0F)
	{
		case 0:
			LCM_WriteEnglish(y,x,No0);						//写数字“0”
			break;											//退出判断
		case 1:
			LCM_WriteEnglish(y,x,No1);						//写数字“1”
			break;											//退出判断
		case 2:
			LCM_WriteEnglish(y,x,No2);						//写数字“2”
			break;											//退出判断
		case 3:
			LCM_WriteEnglish(y,x,No3);						//写数字“3”
			break;											//退出判断
		case 4:
			LCM_WriteEnglish(y,x,No4);						//写数字“4”
			break;											//退出判断
		case 5:
			LCM_WriteEnglish(y,x,No5);						//写数字“5”
			break;											//退出判断
		case 6:
			LCM_WriteEnglish(y,x,No6);						//写数字“6”
			break;											//退出判断
		case 7:
			LCM_WriteEnglish(y,x,No7);						//写数字“7”
			break;											//退出判断
		case 8:
			LCM_WriteEnglish(y,x,No8);						//写数字“8”
			break;											//退出判断
		case 9:
			LCM_WriteEnglish(y,x,No9);						//写数字“9”
			break;											//退出判断
		default:
			LCM_WriteEnglish(y,x,FH0);						//写“*”
	}
	y=0x20;													//纵坐标
	x=0x06;													//横坐标
	switch(Time[6]&0xF0)
	{
		case 0:
			LCM_WriteEnglish(y,x,No0);						//写数字“0”
			break;											//判断退出
		case 1:
			LCM_WriteEnglish(y,x,No1);						//写数字“1”
			break;											//判断退出
		case 2:
			LCM_WriteEnglish(y,x,No2);						//写数字“2”
			break;											//判断退出
		case 3:
			LCM_WriteEnglish(y,x,No3);						//写数字“3”
			break;											//判断退出
		case 4:
			LCM_WriteEnglish(y,x,No4);						//写数字“4”
			break;											//判断退出
		case 5:
			LCM_WriteEnglish(y,x,No5);						//写数字“5”
			break;											//判断退出
		case 6:
			LCM_WriteEnglish(y,x,No6);						//写数字“6”
			break;											//判断退出
		case 7:
			LCM_WriteEnglish(y,x,No7);						//写数字“7”
			break;											//判断退出
		case 8:
			LCM_WriteEnglish(y,x,No8);						//写数字“8”
			break;											//判断退出
		case 9:
			LCM_WriteEnglish(y,x,No9);						//写数字“9”
			break;											//判断退出
		default:
			LCM_WriteEnglish(y,x,FH0);						//写“*”
	}
	y=0x20;													//纵坐标
	x=0x07;													//横坐标
	switch(Time[6]&0x0F)
	{
		case 0:
			LCM_WriteEnglish(y,x,No0);						//写数字“0”
			break;											//判断退出
		case 1:
			LCM_WriteEnglish(y,x,No1);						//写数字“1”
			break;											//判断退出
		case 2:
			LCM_WriteEnglish(y,x,No2);						//写数字“2”
			break;											//判断退出
		case 3:
			LCM_WriteEnglish(y,x,No3);						//写数字“3”
			break;											//判断退出
		case 4:
			LCM_WriteEnglish(y,x,No4);						//写数字“4”
			break;											//判断退出
		case 5:
			LCM_WriteEnglish(y,x,No5);						//写数字“5”
			break;											//判断退出
		case 6:
			LCM_WriteEnglish(y,x,No6);						//写数字“6”
			break;											//判断退出
		case 7:
			LCM_WriteEnglish(y,x,No7);						//写数字“7”
			break;											//判断退出
		case 8:
			LCM_WriteEnglish(y,x,No8);						//写数字“8”
			break;											//判断退出
		case 9:
			LCM_WriteEnglish(y,x,No9);						//写数字“9”
			break;											//判断退出
		default:
			LCM_WriteEnglish(y,x,FH0);						//写“*”
	}
	y=0x20;													//纵坐标
	x=0x0A;													//横坐标
	if(Time[4]&0x10)
	{
		LCM_WriteEnglish(y,x,No1);							//写数字“1”
	}
	else
	{
		LCM_WriteEnglish(y,x,FH4);							//写空格“ ”
	}
	y=0x20;													//纵坐标
	x=0x0B;													//横坐标
	switch(Time[4]&0x0F)
	{
		case 0:
			LCM_WriteEnglish(y,x,No0);						//写数字“0”
			break;											//判断退出
		case 1:
			LCM_WriteEnglish(y,x,No1);						//写数字“1”
			break;											//判断退出
		case 2:
			LCM_WriteEnglish(y,x,No2);						//写数字“2”
			break;											//判断退出
		case 3:
			LCM_WriteEnglish(y,x,No3);						//写数字“3”
			break;											//判断退出
		case 4:
			LCM_WriteEnglish(y,x,No4);						//写数字“4”
			break;											//判断退出
		case 5:
			LCM_WriteEnglish(y,x,No5);						//写数字“5”
			break;											//判断退出
		case 6:
			LCM_WriteEnglish(y,x,No6);						//写数字“6”
			break;											//判断退出
		case 7:
			LCM_WriteEnglish(y,x,No7);						//写数字“7”
			break;											//判断退出
		case 8:
			LCM_WriteEnglish(y,x,No8);						//写数字“8”
			break;											//判断退出
		case 9:
			LCM_WriteEnglish(y,x,No9);						//写数字“9”
			break;											//判断退出
		default:
		LCM_WriteEnglish(y,x,FH0);							//写“*”
	}
	y=0x20;													//纵坐标
	x=0x0E;													//横坐标
	switch((Time[3]&0x30)>>4)
	{
		case 0:
			LCM_WriteEnglish(y,x,FH4);						//写空格“ ”
			break;											//如果为0直接退出,不写
		case 1:
			LCM_WriteEnglish(y,x,No1);						//写数字“1”
			break;											//判断退出
		case 2:
			LCM_WriteEnglish(y,x,No2);						//写数字“2”
			break;											//判断退出
		case 3:
			LCM_WriteEnglish(y,x,No3);						//写数字“3”
			break;											//判断退出
		default:
			LCM_WriteEnglish(y,x,FH0);						//写“*”
	}
	y=0x20;													//纵坐标
	x=0x0F;													//横坐标
	switch(Time[3]&0x0F)
	{
		case 0:
			LCM_WriteEnglish(y,x,No0);						//写数字“0”
			break;											//判断退出
		case 1:
			LCM_WriteEnglish(y,x,No1);						//写数字“1”
			break;											//判断退出
		case 2:
			LCM_WriteEnglish(y,x,No2);						//写数字“2”
			break;											//判断退出
		case 3:
			LCM_WriteEnglish(y,x,No3);						//写数字“3”
			break;											//判断退出
		case 4:
			LCM_WriteEnglish(y,x,No4);						//写数字“4”
			break;											//判断退出
		case 5:
			LCM_WriteEnglish(y,x,No5);						//写数字“5”
			break;											//判断退出
		case 6:
			LCM_WriteEnglish(y,x,No6);						//写数字“6”
			break;											//判断退出
		case 7:
			LCM_WriteEnglish(y,x,No7);						//写数字“7”
			break;											//判断退出
		case 8:
			LCM_WriteEnglish(y,x,No8);						//写数字“8”
			break;											//判断退出
		case 9:
			LCM_WriteEnglish(y,x,No9);						//写数字“9”
			break;											//判断退出
		default:
			LCM_WriteEnglish(y,x,FH0);						//写“*”
	}
	y=0x20;													//纵坐标
	x=0x18;													//横坐标
	switch(Time[5]&0x07)
	{
		case 1:
			LCM_WriteChinese(y,x,W23);						//写汉字“一”
			break;											//判断退出
		case 2:
			LCM_WriteChinese(y,x,W24);						//写汉字“二”
			break;											//判断退出
		case 3:
			LCM_WriteChinese(y,x,W25);						//写汉字“三”
			break;											//判断退出
		case 4:
			LCM_WriteChinese(y,x,W26);						//写汉字“四”
			break;											//判断退出
		case 5:
			LCM_WriteChinese(y,x,W27);						//写汉字“五”
			break;											//判断退出
		case 6:
			LCM_WriteChinese(y,x,W28);						//写汉字“六”
			break;											//判断退出
		case 7:
			LCM_WriteChinese(y,x,W20);						//写汉字“日”
			break;											//判断退出
		default:
			LCM_WriteEnglish(y,x,FH0);						//写“*”
	}
}

/*=========================================================
函数名:LCM_Init()
功能:初始化LCM函数
入口参数:无
出口参数:无
说明:液晶复位后需要延时至少100ms方可对其进行操作
=========================================================*/
void LCM_Init(void)
{
	Uchar i;												//临时变量
	Uchar LCM_SYS[8]={0x34,0x87,0x07,0x27,0x39,0xEF,0x28,0x00};
															//LCM系统设置参数
	Uchar LCM_SCR[10]={0x00,0x00,0xEF,0x00,0x40,0xEF,0x00,0x80,0x00,0x00};
															//LCM系统RAM及其显示相关设置参数
	LCM_RST=0;												//复位液晶
	DelayNms(10);											//延时10ms
	LCM_RST=1;												//复位完成
	DelayNms(100);											//延时100ms
	LCM_WriteByteCon(0x40);									//初始化指令0x40
	for(i=0;i<8;i++)
	{
		LCM_WriteByteData(LCM_SYS[i]);						//依次送入8个附带参数
	}
	LCM_WriteByteCon(0x44);									//设置指令0x44
	for(i=0;i<10;i++)
	{
		LCM_WriteByteData(LCM_SCR[i]);						//依次送入10个附带参数
	}
	LCM_WriteByteCon(0x5D);									//设置指令0x5D
	LCM_WriteByteData(0x07);								//写入参数
	LCM_WriteByteData(0x87);								//写入参数

	LCM_WriteByteCon(0x5A);									//设置指令0x5A
	LCM_WriteByteData(0x00);								//写入参数

	LCM_WriteByteCon(0x5B);									//设置指令0x5B
	LCM_WriteByteData(0x0C);								//写入参数(原来参数为0x08)

	LCM_WriteByteCon(0x59);									//DISPON,指令代码:59H,开显示
	LCM_WriteByteData(0x13);								//
}

/*=========================================================
函数名:LCM_DispDelay()
功能:LCM延时显示函数
入口参数:无
出口参数:无
=========================================================*/
void LCM_DispDelay(void)
{
	Count4=0;												//计数值重新开始
	DispOver_Flag=0;										//顯示標誌位清零
	DispDelay_Flag=1;										//延时显示标志位置高
}

/*=========================================================
函数名:LCM_CheckTimeOK()
功能:LCM显示校验时间成功函数
入口参数:无
出口参数:无
=========================================================*/
void LCM_CheckTimeOK(void)
{
	//显示【校验时间成功!】
	Uchar y;												//声明变量
	LCM_ClearWorkSpace();									//清除工作区
	y=0x68;													//显示纵坐标赋值
	LCM_WriteChinese(y,0x0D,W137);							//“校”
	LCM_WriteChinese(y,0x0F,W138);							//“验”
	LCM_WriteChinese(y,0x11,W16);							//“时”
	LCM_WriteChinese(y,0x13,W17);							//“间”
	LCM_WriteChinese(y,0x15,W55);							//“完”
	LCM_WriteChinese(y,0x17,W56);							//“成”
	LCM_WriteChinese(y,0x19,W77);							//“!”
}

/*=========================================================
函数名:LCM_Online()
功能:LCM显示联机函数
入口参数:无
出口参数:无
=========================================================*/
void LCM_Online(void)
{
	//显示【正在联机…】
	Uchar y;												//声明变量
	LCM_ClearWorkSpace();									//清除工作区
	y=0x68;													//显示纵坐标赋值
	LCM_WriteChinese(y,0x0B,W59);							//“正”
	LCM_WriteChinese(y,0x0D,W60);							//“在”
	LCM_WriteChinese(y,0x0F,W139);							//“联”
	LCM_WriteChinese(y,0x11,W140);							//“机”
	LCM_WriteChinese(y,0x13,W78);							//“,”
	LCM_WriteChinese(y,0x15,W63);							//“请”
	LCM_WriteChinese(y,0x17,W64);							//“稍”
	LCM_WriteChinese(y,0x19,W65);							//“候”
	LCM_WriteChinese(y,0x1B,W66);							//“…”
}

//=======================================================//
/********************LCM函数结束**************************/
//=======================================================//

⌨️ 快捷键说明

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