ledfution.bak

来自「多字节汉字屏显示控制程序」· BAK 代码 · 共 123 行

BAK
123
字号
#include 	"config.h"
extern 	set_data_l(uchar xdata *pt, uchar xdata *ptr_d, uchar j);
extern 	movedata(uchar xdata *pt, uchar xdata *i, uchar xdata *j);
extern 	adddata(uchar xdata *pt, uchar xdata *i, uchar xdata *j);
extern 	movedata_l(uchar xdata *pt, uchar xdata *i,uchar lie,uchar hang);
extern 	movedata_r(uchar xdata *pt, uchar xdata *i, uchar xdata *j);

uint 	system_run;					//系统运行监视


extern uchar comtimeout;
#ifdef  STATIC
	uchar	xdata static_print[HANGDIP][LIEDIP/8];	//静态应用的
#endif
/*****************************************************************************************************************************************************
*宏结实,下面是函数开始
*****************************************************************************************************************************************************/


static void changpage(struct windows xdata *pt) //new
{		
	#ifdef	STATIC
	    	uchar xdata  *data pd;
			uchar i,j;
			/*静态扫描*/
			pd = &static_print[0][0];
			if(PRINT_INFOR.SWAP == SWAP_PRINT1) 
			{
				for(i=0; i<LIEDIP/8; i++)
				{
					j = HANGDIP/2;
					--j;
					while(j)
						{
							*pd++ = pt->PRINT2_R[j--][i];
						}
					*pd++ = pt->PRINT2_R[0][i];
			    }
				for(i=0; i<LIEDIP/8; i++)
				{
					j = HANGDIP;
					--j;
					while(j != HANGDIP/2)
					{
						*pd++ = pt->PRINT2_R[j--][i];
					}
					*pd++ = pt->PRINT2_R[HANGDIP/2][i];
		    	}
												  
			}
			else 
			{
					for(i=0; i<LIEDIP/8; i++)
					 {
 					   j = HANGDIP/2;
					   --j;
					   while(j)
					   {
					   *pd++ = pt->PRINT1_R[j--][i];
					   }
					   *pd++ = pt->PRINT1_R[0][i];
		    	     }
					for(i=0; i<LIEDIP/8; i++)
					 {
 					   j = HANGDIP;
					   --j;
					   while(j != HANGDIP/2)
					   {
					   *pd++ = pt->PRINT1_R[j--][i];
					   }
					   *pd++ = pt->PRINT1_R[HANGDIP/2][i];
		    	     }
   			        }
			if(PRINT_INFOR.SWAP == SWAP_PRINT1) 
			{
				PRINT_INFOR.PRINTBUF2_R1 = &static_print[0][0];
				#ifndef ALONE
					PRINT_INFOR.PRINTBUF2_R2 = &static_print[HANGDIP/2][0];
				#endif
				while(PRINT_INFOR.CHANG < pt->movsize[pt->plan]) REBOOT;
				while(!rell_print);
				PRINT_INFOR.CHANG = 0;
				PRINT_INFOR.SWAP = SWAP_PRINT2;
			}
			else 
			{
				PRINT_INFOR.PRINTBUF1_R1 = &static_print[0][0];
				#ifndef ALONE
				PRINT_INFOR.PRINTBUF1_R2 = &static_print[HANGDIP/2][0];
				#endif
				while(PRINT_INFOR.CHANG < pt->movsize[pt->plan]) REBOOT;
				while(!rell_print);
				PRINT_INFOR.CHANG = 0;
				PRINT_INFOR.SWAP = SWAP_PRINT1;
		 	}
	 #else
			/*扫描的*/
			if(PRINT_INFOR.SWAP == SWAP_PRINT1) 
			{
				PRINT_INFOR.PRINTBUF2_R1 = (uchar xdata *)&pt->PRINT2_R[0][0];
				#ifndef ALONE
					PRINT_INFOR.PRINTBUF2_R2 = (uchar xdata *)&pt->PRINT2_R[16][0];
				#endif
				while(PRINT_INFOR.CHANG < pt->movsize[pt->plan]) REBOOT;
				while(!rell_print);
				PRINT_INFOR.CHANG = 0;
				PRINT_INFOR.SWAP = SWAP_PRINT2;
			}
			else 
			{
				PRINT_INFOR.PRINTBUF1_R1 = (uchar xdata *)&pt->PRINT1_R[0][0];
				#ifndef ALONE
				PRINT_INFOR.PRINTBUF1_R2 = (uchar xdata *)&pt->PRINT1_R[16][0];
				#endif
				while(PRINT_INFOR.CHANG < pt->movsize[pt->plan]) REBOOT;
				while(!rell_print);
				PRINT_INFOR.CHANG = 0;
				PRINT_INFOR.SWAP = SWAP_PRINT1;
		 	}
	#endif
}

⌨️ 快捷键说明

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