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

📄 an11.c

📁 采用PC104实现多串口通信,同时显示数据.此程序可以直接使用.
💻 C
📖 第 1 页 / 共 5 页
字号:
				 {
				  set_cur_line(&curx,&cury,1,3,8);
				  b0=0;curx=curx-6;
				  set_cur_line(&curx,&cury,7,3,8);
				  }
				  }
				}
			 else if(shui_x==6)
				{
				 if(b0<3)
				 {
				  set_cur_line(&curx,&cury,1,3,8);
				  b0=b0+1;curx=curx+6;
				  set_cur_line(&curx,&cury,7,3,8);
				  }
				 else
				  {
				  set_cur_line(&curx,&cury,1,3,8);
				  b0=0;curx=curx-18;
				  set_cur_line(&curx,&cury,7,3,8);
				  }
				}


			}
	  m0=1;xx=curx+4;//yy=cury-2;//b0=0;
	  break;


case 115:
			if(h==1)
			{
			 zhong_done=0;

		  if(shui_x==1)
			 {
			 if(b0==0)
				 {
				set_cur_line(&curx,&cury,1,3,8);
				b0=6;curx=curx+36;m0=1;//b0=0;
				set_cur_line(&curx,&cury,7,3,8);
				 }
				else
				{
			  set_cur_line(&curx,&cury,1,3,8);
			  b0=b0-1;curx=curx-6;
			  set_cur_line(&curx,&cury,7,3,8);
				 }
			  }
			else if(shui_x==3)
			 {
			  if(b0==0)
			  {
				set_cur_line(&curx,&cury,1,3,8);
				b0=1;curx=curx+6;m0=1;//b0=0;
				set_cur_line(&curx,&cury,7,3,8);
				}
			  else
			  {
				set_cur_line(&curx,&cury,1,3,8);
				b0=b0-1;curx=curx-6;
				set_cur_line(&curx,&cury,7,3,8);
				}
			 }
			 else if(shui_x==5)
			 {
			  if(tzhong_jiazai==1)
			  {
			  if(b0==0)
			  {
				set_cur_line(&curx,&cury,1,3,8);
				b0=1;curx=curx+6;m0=1;//b0=0;
				set_cur_line(&curx,&cury,7,3,8);
				}
			  else
			  {
				set_cur_line(&curx,&cury,1,3,8);
				b0=b0-1;curx=curx-6;
				set_cur_line(&curx,&cury,7,3,8);
				}
				}
			 }
			 else if(shui_x==6)
			 {
				 if(b0==0)
				 {
				set_cur_line(&curx,&cury,1,3,8);
				b0=3;curx=curx+18;m0=1;//b0=0;
				set_cur_line(&curx,&cury,7,3,8);
				 }
				else
				{
			  set_cur_line(&curx,&cury,1,3,8);
			  b0=b0-1;curx=curx-6;
			  set_cur_line(&curx,&cury,7,3,8);
				 }
			 }


		  }


	m0=1;xx=curx+4;//xx=curx;yy=cury;xx=curx+4;yy=cury-2;
	break;

case 48:
case 49:
case 50:
case 51:
case 52:
case 53:
case 54:
case 55:
case 56:
case 57:
if(h==1)
	 {
		zhong_done=0;
		if(shui_x==1)
		 {p=&smg_pinlui[b0];
		  num=ch-48;
		  draw_number(&m0,&b0,&xx,&yy,&curx,&cury,p,num,7);
		 }
		else if(shui_x==3)
		 {p=&smg_pinpian[b0];
		  num=ch-48;
		  draw_number(&m0,&b0,&xx,&yy,&curx,&cury,p,num,2);
		  }
		else if(shui_x==5)
		{if(tzhong_jiazai==1)
		{
		 p=&smg_gonglui[b0];
		 num=ch-48;
		 draw_number(&m0,&b0,&xx,&yy,&curx,&cury,p,num,2);
		 }
		 }
		else if(shui_x==6)
		{p=&smg_cishu[b0];
		 num=ch-48;
		 draw_number(&m0,&b0,&xx,&yy,&curx,&cury,p,num,4);
		 }

	}
	break;
case 97:

	if(clr_led==1)
	 {
	  smg_cishu[0]='0';
	  smg_cishu[1]='0';
	  smg_cishu[2]='0';
	  smg_cishu[3]='5';

	 led_dataok=1;
	 outportb(SPPDATA,led_dataok);
	 zhong_done=0;
	 tzhong_falinn=1;
	 jfalin_data_communt(COM_1,0x10);
	 delay(100);
	 sfalin_data_communt(COM_3,0x12);
	 clr_led=0;
	 }

	break;
case 100:
	/*canshu_10_communt(COM_1);
	delay(100);
	canshu_11_communt(COM_2);
	delay(100);
	canshu_12_communt(COM_3); */
	break;
case 98:
	if(clr_led==1)
	{
	  smg_cishu[0]='0';
	  smg_cishu[1]='0';
	  smg_cishu[2]='0';
	  smg_cishu[3]='5';
	led_dataok=4;
	outportb(SPPDATA,led_dataok);
	zhong_done=0;
	tzhong_falinn=2;
	jfalin_data_communt(COM_1,0x10);
	delay(100);
	sfalin_data_communt(COM_3,0x12);
	clr_led=0;
	}
	break;
case 101:
	if(clr_led==1)
	{
	 smg_cishu[0]='0';
	 smg_cishu[1]='0';
	 smg_cishu[2]='0';
	 smg_cishu[3]='5';

	 led_dataok=16;
	 outportb(SPPDATA,led_dataok);
	 zhong_done=0;
	 tzhong_falinn=3;

	 jfalin_data_communt(COM_1,0x10);
	 delay(100);
	 sfalin_data_communt(COM_3,0x12);


	 clr_led=0;
	}
	break;
case 85:
	if(clr_led==1)
	{
	  smg_cishu[0]='0';
	  smg_cishu[1]='0';
	  smg_cishu[2]='0';
	  smg_cishu[3]='5';

	  led_dataok=64;
	  outportb(SPPDATA,led_dataok);
	  zhong_done=0;
	  tzhong_falinn=4;
	  jfalin_data_communt(COM_1,0x10);
	  delay(100);
	  sfalin_data_communt(COM_3,0x12);


	  clr_led=0;
	}

	break;
case 9:
	 led_dataok=0;
	 clr_led=1;
	 outportb(SPPDATA,led_dataok);
	 qin_data_communt(COM_3,0x12);

	 zhong_done=0;
	 setcolor(12);
	 setfillstyle(1,12);
	 fillellipse(165+7,155+5+3+2,7,6);

	 setcolor(7);
	 outtextxy(60,213,smg_error);
	 setcolor(1);
	 smg_error[0]='0';
	 smg_error[1]='0';
	 smg_error[2]='0';
	 smg_error[3]='0';
	 outtextxy(60,213,"0000");

	 setcolor(7);
	 outtextxy(260,213,cbili);
	 setcolor(1);
	 cbili[0]='0';
	 cbili[1]='0';
	 outtextxy(260,213,"00");


	break;
default:break;
  }

 wrfile=fopen("wrsave.dat","w");
for(i=0;i<3;i++)
 fprintf(wrfile,"malui_data_flow=%c",malui_data_flow[i]);

for(i=0;i<7;i++)
 fprintf(wrfile,"smg_pinlui=%c",smg_pinlui[i]);

for(i=0;i<2;i++)
 fprintf(wrfile,"smg_pinpian=%c",smg_pinpian[i]);

for(i=0;i<2;i++)
 fprintf(wrfile,"smg_gonglui=%c",smg_gonglui[i]);

for(i=0;i<4;i++)
 fprintf(wrfile,"huzaibo_data_char=%c",huzaibo_data_char[i]);

fprintf(wrfile,"tzhong_jiatiao=%d",tzhong_jiatiao);
fprintf(wrfile,"tzhong_jiazai=%d",tzhong_jiazai);

fclose(wrfile);

 }


}

setvect(9,oldkb);

closegraph();

 }

////////////////////////////////////////////////////////////////////////////////
void draw_number(int* m0,int* b0,int* xx,int* yy,int* curx,int* cury,char* p,int x,int length)
{
char number[10]={'0','1','2','3','4','5','6','7','8','9'};
char temp[2];
temp[1]='\0';
	if(*m0==1)
		 {
		  if(*b0<length-1)
			{
			setcolor(7);
			setfillstyle(SOLID_FILL,1);
			bar(*xx,*yy+3,*xx+4,*yy+9);
			setcolor(1);
			setlinestyle(SOLID_LINE,1,1);
			line(*curx+3,*cury+8,*curx+9,*cury+8);
			setcolor(15);

			temp[0]=number[x];

			outtextxy(*xx,*yy,temp);

			*xx=*xx+6;*curx=*xx-4;
			setcolor(7);
			setlinestyle(SOLID_LINE,1,1);
			line(*curx+3,*cury+8,*curx+9,*cury+8);

			*p=number[x];
			*b0=*b0+1;
			}

		 else
			{
			 *p=number[x];
			 setcolor(1);
			 setlinestyle(SOLID_LINE,1,1);
			 line(*curx+3,*cury+8,*curx+9,*cury+8);
			 setfillstyle(SOLID_FILL,1);
			 bar(*xx,*yy+3,*xx+4,*yy+9);

			 setcolor(15);

			 temp[0]=number[x];

			 outtextxy(*xx,*yy,temp);

			 *xx=*xx-(length-1)*6;*curx=*xx-4;
			 setcolor(7);
			 setlinestyle(SOLID_LINE,1,1);
			 line(*curx+3,*cury+8,*curx+9,*cury+8);

			 *b0=0;//m0=0;
			 }
		 }
}

//编辑状态初始化时在屏幕上画边框

///////////////////////////////////////////////////////////////////////////////

int hanzic(int color,int star,int end)
{
	FILE *fp1,*fp2;
	int i,j,k,f,xx,yy;
	WORD mode2[22][16];
	WORD mode1[22][16];
	settextstyle(SMALL_FONT, HORIZ_DIR, 4);
	xx=a+4+4+30;yy=b+139-2;
		if((fp1=fopen("hanzida.dat","r"))==NULL)
	 {printf("Can not open the file\n");
		 exit(0);}
	for(k=0;k<22;k++)
	 for(f=0;f<16;f++)
		fscanf(fp1,"%x,",&mode2[k][f]);
	fclose(fp1);


  xx=a+4+4+44+50;yy=b+134;
  setcolor(color);
  for(k=star;k<star+7;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode2[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

  xx=xx+2;
  outtextxy(xx,yy+1,",");
  xx=xx+5;
  for(k=star+7;k<end;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode2[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
  outtextxy(xx+2,yy+1,".");

}
/////////////////////////////////////////////////////////////////////////
int hanzib()
{
  int x,y;
	FILE *fp1,*fp2;
	int i,j,k,f,xx,yy;
	WORD mode1[74][16];
	WORD mode2[5][16];
	settextstyle(SMALL_FONT, HORIZ_DIR, 4);

	if((fp1=fopen("hanzi16.dat","r"))==NULL)
	 {printf("Can not open the file\n");
		 exit(0);}
	for(k=0;k<5;k++)
	 for(f=0;f<16;f++)
		fscanf(fp1,"%x,",&mode2[k][f]);
	fclose(fp1);

  if((fp2=fopen("hanzi12.dat","r"))==NULL)
	 {printf("Can not open the file\n");
		 exit(0);}
	for(k=0;k<74;k++)
	 for(f=0;f<16;f++)
		fscanf(fp2,"%x,",&mode1[k][f]);
	fclose(fp2);

  xx=a+5+118;yy=4;
  setcolor(15);
  for(k=0;k<5;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode2[k][i],NORM_WIDTH);
	 line(xx+15,yy,xx,yy);
	 }
	 xx+=16;yy-=16;i=0;
	 }

  xx=a+6;yy=b+24+6+2;
  setcolor(0);
  for(k=0;k<4;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 yy=yy+2;
  outtextxy(xx,yy,"(KHz)");

  xx=a+6+155+5;yy=b+24+6+2;
  setcolor(0);
  for(k=4;k<8;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 yy=yy+2;
  outtextxy(xx,yy,"(KHz)");

  xx=a+5;yy=b+24+6+2+24;
  setcolor(0);
  for(k=8;k<13;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 yy=yy+2;
  outtextxy(xx,yy,"(KHz)");

	xx=a+6+155+5;yy=b+24+6+2+24;
  setcolor(0);
  for(k=13;k<17;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 yy=yy+2;
  outtextxy(xx,yy,"(KHz)");

 xx=a+6;yy=b+24+6+2+24+24+24;
  setcolor(0);
  for(k=17;k<21;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

  xx=a+6+155+5;yy=b+24+6+2+24+24;
  setcolor(0);
  for(k=21;k<25;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 yy=yy+2;
  outtextxy(xx,yy,"(dBm)");

	xx=a+6;yy=b+24+6+2+24+24;
  setcolor(0);
  for(k=25;k<29;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

  xx=a+6+155+5;yy=b+24+6+2+24+24+24;
  setcolor(0);
  for(k=59;k<63;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }


  xx=a+6;yy=b+24+6+2+24+24+24+30+24;      //shan
  setcolor(0);
  for(k=31;k<34;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

  xx=a+6+120;yy=b+24+6+2+24+24+24+30+24;      //shan
  setcolor(0);
  for(k=34;k<37;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

	xx=a+6+120+120;yy=b+24+6+2+24+24+24+30+24;      //shan
  setcolor(0);
  for(k=37;k<41;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

	xx=a+6;yy=b+24+6+2+24+24+24+30+24+30;
  setcolor(0);
  for(k=41;k<45;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }



  xx=a+6;yy=b+24+6+2+24+24+24+30+24+30+24;
  setcolor(0);
  for(k=45;k<48;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

  xx=a+76+7+1+10+5;yy=b+31+1+24+24;
  setcolor(8);
  for(k=53;k<55;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

  xx=a+76+7+1+10+5;yy=b+31+1+24+24+24;
  setcolor(8);
  for(k=57;k<59;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

  xx=a+6+186;yy=b+24+6+2+24+24+24+30+24+30+24;
  setcolor(0);
  for(k=48;k<51;k++)
	{for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode1[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

⌨️ 快捷键说明

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