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

📄 screenshow.c

📁 驾驶员考试电桩考试系统的车载程序
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               长春智君电子有限公司
**
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: ScreenShow.c
**创   建   人: 查立军
**最后修改日期: 2007年03月19日
**描        述: LCD屏幕控制函数
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 查立军
** 版  本: 1.0
** 日 期: 2007年03月19日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
** 修改人:
** 版  本: 2.0
** 日 期: 2007年09月19日
** 描 述:
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人: 
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#include "config.h"
#include "LCD_Control.h"

/****************************************************************************
* 名称:test() 外部函数
* 功能:在坐标 X,Y 的位置上显示吉林大学四个字
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void test(unsigned char x,unsigned char y)
{
	puthz(x,y,0xBCAA);   //吉
	puthz(x+2,y,0xC1D6); //林
	puthz(x+4,y,0xB4F3); //大
	puthz(x+6,y,0xD1A7); //学
}
/****************************************************************************
* 名称:ShowTitle() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowTitle(unsigned char x,unsigned char y)//,unsigned int hzcode[])
{
	puthz(x,y,0xBCDD);			//驾
	puthz(x+2,y,0xCABB);		//驶
	puthz(x+4,y,0xD4B1);		//员
	puthz(x+6,y,0xBFC6);		//科
	puthz(x+8,y,0xC4BF);		//目	
	puthz(x+10,y,0xB6FE);		//二
	puthz(x+12,y,0x2D2D);		//-
//	puthz(x+13,y,0xBEC5);		//九	
//	puthz(x+15,y,0xCFEE);		//项
//	puthz(x+17,y,0xC2B7);		//路
	puthz(x+13,y,0xD7AE);		//桩	
	puthz(x+15,y,0xBFBC);		//考
	puthz(x+17,y,0xB3B5);		//车
	puthz(x+19,y,0xD4D8);		//载
	puthz(x+21,y,0xCFB5);		//系
	puthz(x+23,y,0xCDB3);		//统
	
//	puthz(x+14,y,0xB5E7);		//电
//	puthz(x+16,y,0xD7D3);		//子
//	puthz(x+18,y,0xBFD8);		//控
//	puthz(x+20,y,0xD6C6);		//制
}
/****************************************************************************
* 名称:ShowMessage() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowMessage(unsigned char x,unsigned char y,uint16 u16Message[],uint16 u16Counter)
{
	uint8 i;

	puthz(x,y,0xCCE1);		//提
	puthz(x+2,y,0xCABE);	//示
	puthz(x+4,y,0xCFFB);	//消
	puthz(x+6,y,0xCFA2);	//息
	puthz(x+8,y,0xA1C3);	//:
	
	for(i=0;i<u16Counter;i++)
	{
		puthz(x+10+i*2,y,u16Message[i]);
		if(i>8)return;
	}
}
/****************************************************************************
* 名称:ShowName() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowName(unsigned char x,unsigned char y,uint16 u16Name[],uint16 u16Counter)
{
	uint8 i;

	puthz(x,y,0xBFBC);		//考
	puthz(x+2,y,0xC9FA);	//生
	puthz(x+4,y,0xD0D5);	//姓
	puthz(x+6,y,0xC3FB);	//名
	puthz(x+8,y,0xA1C3);	//:

	for(i=0;i<u16Counter;i++)
	{
		puthz(x+10+i*2,y,u16Name[i]);
		if(i>8)return;
	}
}
/****************************************************************************
* 名称:ShowExamNo() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowExamNo(unsigned char x,unsigned char y,uint8 u8ExamNo[],uint16 u16Counter)
{
	uint8 i;
	uint16 u16Temp;
	uint16 u16CounterTemp;

	puthz(x,y,0xD7BC);		//准
	puthz(x+2,y,0xBFBC);	//考
	puthz(x+4,y,0xD6A4);	//证
	puthz(x+6,y,0xBAC5);	//号
	puthz(x+8,y,0xA1C3);	//:

	u16CounterTemp=u16Counter/2;
	
	for(i=0;i<u16CounterTemp;i++)
	{
		u16Temp=u8ExamNo[i*2]*0x100+u8ExamNo[i*2+1];
		puthz(x+10+i*2,y,u16Temp);
		if(i>9)return;
	}
	
	if((u16Counter%2)!=0)
	{
		u16Temp=u8ExamNo[u16Counter-1]*0x100;
		puthz(x+10+i*2,y,u16Temp);
	}
}
/****************************************************************************
* 名称:ShowCompony() 外部函数
* 功能:在上面显示菜单内容
* 入口参数:
* 出口参数:无
****************************************************************************/
void ShowCompony(unsigned char x,unsigned char y)
{
//	puthz(x,y,0xB3A4);	//长
//	puthz(x+2,y,0xB4BA);//春
//	puthz(x+14,y,0xD7D3);//子
	puthz(x,y,0xBCAA);		//吉
	puthz(x+2,y,0xC1D6);	//林
	puthz(x+4,y,0xCAA1);	//省
	puthz(x+6,y,0xD0C2);	//新
	puthz(x+8,y,0xCDF2);	//万
	puthz(x+10,y,0xCDA8);	//通
	puthz(x+12,y,0xB9E2);	//光
	puthz(x+14,y,0xB5E7);	//电
	puthz(x+16,y,0xBFC6);	//科
	puthz(x+18,y,0xBCBC);	//技
	puthz(x+20,y,0xD3D0);	//有
	puthz(x+22,y,0xCFDE);	//限
	puthz(x+24,y,0xB9AB);	//公
	puthz(x+26,y,0xCBBE);	//司
}
//=======================================================================================
/****************************************************************************
* 名称:ShowCarStatus() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowCarStatus(unsigned char x,unsigned char y,unsigned char u8Car)
{
	puthz(x,y,0xB3B5);		//车
	puthz(x+2,y,0xD7B4);		//状
	puthz(x+4,y,0xCCAC);		//态
	puthz(x+6,y,0xA1C3);	//:
	
	switch(u8Car & 0x07)
	{
	case 1:
		puthz(x+8,y,0xC7B0);			//前
		puthz(x+10,y,0xBDF8);		//进
		break;
	case 2:
		puthz(x+8,y,0xBAF3);			//后
		puthz(x+10,y,0xCDCB);		//退
		break;
	case 4:
		puthz(x+8,y,0xCDA3);			//停
		puthz(x+10,y,0xB3B5);		//车
		break;
	default:
		puthz(x+8,y,0xCDA3);			//停
		puthz(x+10,y,0xB3B5);		//车
		break;
	}
	
	if((u8Car & 0x08)==0x08)
	{
		puthz(x+14,y,0xCFA8);		//熄
		puthz(x+16,y,0xBBF0);		//火
	}
	else
	{
		puthz(x+14,y,0xA0A1);		//空
		puthz(x+16,y,0xA0A1);		//空
	}

}
/****************************************************************************
* 名称:ShowCarShift() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowCarShift(unsigned char x,unsigned char y,unsigned char u8CarShift)
{
	switch(u8CarShift)
	{
	case 0:
		puthz(x,y,0xC1E3);			//零
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 1:
		puthz(x,y,0xD2BB);			//一
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 2:
		puthz(x,y,0xB6FE);			//二
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 3:
		puthz(x,y,0xC8FD);			//三
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 4:
		puthz(x,y,0xCBC4);			//四
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 5:
		puthz(x,y,0xCEE5);			//五
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 6:
		puthz(x,y,0xC1F9);			//六
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 7:
		puthz(x,y,0xC6DF);			//七
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 8:
		puthz(x,y,0xB0CB);			//八
		puthz(x+2,y,0xB5B5);		//档
		break;
	case 9:
		puthz(x,y,0xBAF3);			//后
		puthz(x+2,y,0xCDCB);		//退
		puthz(x+4,y,0xB5B5);		//档
	default:
		break;
	}
}
/****************************************************************************
* 名称:ShowDoorStatus() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowDoorStatus(unsigned char x,unsigned char y,unsigned char u8Door)
{
/*	if(u8Door==1)
	{
		puthz(x,y,0xD2D1);	//已
	}
	else
	{
		puthz(x,y,0xC3BB);	//没
	}
	puthz(x+2,y,0xB9D8);		//关
	puthz(x+4,y,0xC3C5);		//门*/
	
	puthz(x,y,0xA0A1);		//空
	puthz(x+2,y,0xA0A1);		//空
	puthz(x+4,y,0xA0A1);		//空
	puthz(x+6,y,0xA0A1);		//空
	puthz(x+8,y,0xA0A1);		//空
	puthz(x+10,y,0xA0A1);		//空
	puthz(x+12,y,0xA0A1);		//空
	puthz(x+14,y,0xA0A1);		//空
	puthz(x+16,y,0xA0A1);		//空
	puthz(x+18,y,0xA0A1);		//空
	puthz(x+20,y,0xA0A1);		//空
	puthz(x+22,y,0xA0A1);		//空
	puthz(x+24,y,0xA0A1);		//空
	puthz(x+26,y,0xA0A1);		//空
	
}
/****************************************************************************
* 名称:ShowSeatbeltStatus() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowSeatbeltStatus(unsigned char x,unsigned char y,unsigned char u8Seatbelt)
{
	if(u8Seatbelt==1)
	{
		puthz(x,y,0xD2D1);	//已
	}
	else
	{
		puthz(x,y,0xC3BB);	//没
	}
	puthz(x+2,y,0xCFB5);		//系
	puthz(x+4,y,0xB0B2);			//安
	puthz(x+6,y,0xC8AB);		//全
	puthz(x+8,y,0xB4F8);		//带
}
/****************************************************************************
* 名称:ShowPreasureStatus() 外部函数
* 功能:在坐标 X,Y 的位置上显示
* 入口参数:X,Y
* 出口参数:无
****************************************************************************/
void ShowPreasureStatus(unsigned char x,unsigned char y,unsigned char u8Preasure)
{
	puthz(x,y,0xC6F8);			//气
	puthz(x+2,y,0xD1B9);		//压
	if(u8Preasure==1)
	{
		puthz(x+4,y,0xD5FD);	//正
		puthz(x+6,y,0xB3A3);	//常
	}
	else
	{
		puthz(x+4,y,0xB2BB);	//不
		puthz(x+6,y,0xB9BB);	//够
	}
}
//=======================================================================================
//=======================================================================================
/****************************************************************************
* 名称:ShowABC() 外部函数
* 功能:在上面显示ABC信息
* 入口参数:
* 出口参数:无
****************************************************************************/
void ShowABC(unsigned char x,unsigned char y,uint8 byA,uint8 byB,uint8 byC)
{
	if (byA == 0)
		puthz(x,y,0x2E2E);
	else
		puthz(x,y,0x412E);
		
	if (byB == 0)
		puthz(x+2,y,0x2E2E);
	else
		puthz(x+2,y,0x422E);

	if (byC == 0)
		puthz(x+4,y,0x2E2E);
	else
		puthz(x+4,y,0x432E);
	
}
//=======================================================================================
//=======================================================================================
/****************************************************************************
* 名称:ShowMenu() 外部函数
* 功能:在上面显示菜单内容
* 入口参数:
* 出口参数:无
****************************************************************************/
void ShowMenu(void)
{
	puthz(0,0,0xB2CB);//菜
	puthz(2,0,0xB5A5);//单
	puthz(5,0,0xCAD6);//手
	puthz(7,0,0xB6AF);//动
	puthz(10,0,0xD7D4);//自
	puthz(12,0,0xB6AF);//动
}












⌨️ 快捷键说明

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