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

📄 lcm.c

📁 这个是一个带有IC卡
💻 C
📖 第 1 页 / 共 4 页
字号:
	{
		if(*z==yw16x8zk[k].index[0])
		{	
			findflag=1;
			for(i=0;i<=1;i++)
			{
			
				x=x3;
				for(j=0;j<=7;j++)
				{
					if(x<64)
					{
					y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
					Wr_Com_LCD_Left(y2);
					x2=x|0x40;										//x2为写入到lcd的命令字,用来设置列号
					Wr_Com_LCD_Left(x2);
					d=yw16x8zk[k].ywdot[i+2*j];
					Wr_Data_LCD_Left(d);
					
					}
					
					if(x >= 64 && x < 128)
					{
					y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
					Wr_Com_LCD_Middle(y2);
					x2 = (x - 64 ) | 0x40;							//x2为写入到lcd的命令字,用来设置列号
					Wr_Com_LCD_Middle(x2);
					d=yw16x8zk[k].ywdot[i+2*j];
					Wr_Data_LCD_Middle(d);
					}

					if(x >= 128)
					{
					y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
					Wr_Com_LCD_Right(y2);
					
					x2 = (x - 128) | 0x40;
					Wr_Com_LCD_Right(x2);
					d=yw16x8zk[k].ywdot[i+2*j];
					Wr_Data_LCD_Right(d);
											
					}
					x++;
				}
			}
			
		}

	k++;
	}  
	if(findflag==0)
	{
																//如果找不到这个字模则会显示黑框
			for(i=0;i<=1;i++)
			{
			
				x=x3;
				for(j=0;j<=7;j++)
				{
					if(x<64)
					{
					y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
					Wr_Com_LCD_Left(y2);
					x2=x | 0x40;										//x2为写入到lcd的命令字,用来设置列号
					Wr_Com_LCD_Left(x2);					
					Wr_Data_LCD_Left(0xff);
					
					}

					if(x >= 64 && x < 128)
					{
					y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
					Wr_Com_LCD_Middle(y2);
					x2 = (x - 64) | 0x40;										//x2为写入到lcd的命令字,用来设置列号
					Wr_Com_LCD_Middle(x2);					
					Wr_Data_LCD_Middle(0xff);
					}

					if(x >= 128 )
					{
					y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
					Wr_Com_LCD_Right(y2);

					x2=(x - 128) | 0x40;
					Wr_Com_LCD_Right(x2);				
					Wr_Data_LCD_Right(0xff);
											
					}
					x++;
				}
			}
	}

}


///////////////////////////////////////
void wryw16x8_string(uint8 x,uint8 y,char *z,uint8 length)
{
	uint8 i;
	for(i=0;i<length;i++)
	{
		wryw16x8(x+i,y,(z+i));
	}	
}

/**********************************************************************************************************
*函数名:wryw16x8s
*功能描述:写16x8的字
*调用函数:无
*全局变量:无
*输入:无
*返回:无
*设计者:潘江长                              日期:2006.1.11
*修改者:潘妙青                              日期:2008.2.23
*版本:
***********************************************************************************************************/

void wryw16x8s(uint8 x,uint8 y,uint8 z)
{
	uint8 i,j;
	uint8 x2,x3,y2;
	uint8 d;
	x2=0;
	y2=0;
	d=0;
	x=x*8;
	y=y*2;
	x3=x;														//下面的循环体实现在字库中搜索对应的点阵
	for(i=0;i<=1;i++)
	{
		x=x3;
		for(j=0;j<=7;j++)
		{
			if(x<64)
			{
				y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
				Wr_Com_LCD_Left(y2);
				x2=x|0x40;										//x2为写入到lcd的命令字,用来设置列号
				Wr_Com_LCD_Left(x2);
				d = yw16x8zk[z].ywdot[i+2*j];
				Wr_Data_LCD_Left(d);
			}

			if(x >= 64 && x < 128)
			{
				y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
				Wr_Com_LCD_Middle(y2);
				x2= (x - 64) | 0x40;							//x2为写入到lcd的命令字,用来设置列号
				Wr_Com_LCD_Middle(x2);
				d = yw16x8zk[z].ywdot[i+2*j];
				Wr_Data_LCD_Middle(d);
			}

			if(x >= 128)
			{
				y2=(y+i)|0xb8;								  	//y2为写入到lcd的命令字,用来设置行号
				Wr_Com_LCD_Right(y2);

				x2 = (x - 128)|0x40;		
				Wr_Com_LCD_Right(x2);
				d=yw16x8zk[z].ywdot[i+2*j];
				Wr_Data_LCD_Right(d);									
			}
			x++;
		}
	}	
}


void wryw16x8_2wei(uint8 x,uint8 y,uint8 z)
{
	if(z<100)
	{
		wryw16x8s(x,y,z/10);
		wryw16x8s(x+1,y,z%10);
	}
}

void wryw16x8_3wei(uint8 x,uint8 y,uint8 z)
{
	wryw16x8s(x,y,z/100);
	wryw16x8s(x+1,y,(z-((z/100)*100))/10);
	wryw16x8s(x+2,y,z%10);
}


/**********************************************************************************************************
*函数名:gbset
*功能描述:设置选项里使用的光标显示
*调用函数:无
*全局变量:无
*输入:无
*返回:无
*设计者:潘江长                              日期:2006.1.11
*修改者:                                    日期:
*版本:
***********************************************************************************************************/

void wryw16x8_4wei(unsigned char x,unsigned char y,uint16  z)
{
	uint16  uiWan;
	uint16  uiQian;
	uint16  uiBai;
	uint16  uiShi;
	uint16  uiGe;

	uiWan=z/10000;
	uiQian=(z-(uiWan*10000))/1000;
	uiBai=(z-uiWan*10000-uiQian*1000)/100;
	uiShi=(z-uiWan*10000-uiQian*1000-uiBai*100)/10;
	uiGe=(z-uiWan*10000-uiQian*1000-uiBai*100)%10;

	wryw16x8s(x+0,y,uiQian);
	wryw16x8s(x+1,y,uiBai);
	wryw16x8s(x+2,y,uiShi);
	wryw16x8s(x+3,y,uiGe);	
	
}



void wryw16x8_5wei(uint8 x,uint8 y,uint32  z)
{
	uint32  uiWan;
	uint32  uiQian;
	uint32  uiBai;
	uint32  uiShi;
	uint32  uiGe;

	uiWan=z/10000;
	uiQian=(z-(uiWan*10000))/1000;
	uiBai=(z-uiWan*10000-uiQian*1000)/100;
	uiShi=(z-uiWan*10000-uiQian*1000-uiBai*100)/10;
	uiGe=(z-uiWan*10000-uiQian*1000-uiBai*100)%10;
	wryw16x8s(x,y,uiWan);
	wryw16x8s(x+1,y,uiQian);
	wryw16x8s(x+2,y,uiBai);
	wryw16x8s(x+3,y,uiShi);
	wryw16x8s(x+4,y,uiGe);	
}
void ShowData_UINT32_(uint8 x,uint8 y,uint32 d)
{
	uint8  ShiYi;
	uint8  Yi;
	uint8  QianWai;
	uint8  BaiWai;
	uint8  ShiWai;
	uint8  Wai;
	uint8  Qian;
	uint8  Bai;
	uint8  Shi;
	uint8  Ge;

	ShiYi=d/1000000000 ;	
	Yi=(d%1000000000)/100000000;
	QianWai=(d%100000000)/10000000;
	BaiWai=(d%10000000)/1000000;
	ShiWai=(d%1000000)/100000;
	Wai=(d%100000)/10000;
	Qian=(d%10000)/1000;
	Bai=(d%1000)/100;
	Shi=(d%100)/10;
	Ge=d%10;

	wryw16x8s(x,y,ShiYi);

	wryw16x8(x+1,y,"@");
	wryw16x8s(x+2,y,Yi);
	wryw16x8s(x+3,y,QianWai);
	wryw16x8s(x+4,y,BaiWai);

	wryw16x8(x+5,y,"@");
	wryw16x8s(x+6,y,ShiWai);
	wryw16x8s(x+7,y,Wai);
	wryw16x8s(x+8,y,Qian);

	wryw16x8(x+9,y,"@");
	wryw16x8s(x+10,y,Bai);
	wryw16x8s(x+11,y,Shi);
	wryw16x8s(x+12,y,Ge);
	
}

⌨️ 快捷键说明

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