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

📄 an11.c

📁 采用PC104实现多串口通信,同时显示数据.此程序可以直接使用.
💻 C
📖 第 1 页 / 共 5 页
字号:
	x=a+76+7+1+10+155+5;y=b+31+1+24+24+24;
	change_han(chuan_start,chuan_over,&x,&y,8);




	 outtextxy(xx+1,yy+2,"(%)");
	 setcolor(12);
	 setfillstyle(1,12);
	 fillellipse(165+7,155+5+3+2,7,6);

	 setcolor(12);
	 setfillstyle(1,12);
	 fillellipse(56,155+5+3+2,7,6);

	 setcolor(12);
	 setfillstyle(1,12);
	 fillellipse(295+7,155+5+3+2,7,6);
	 setcolor(1);

	 outtextxy(60,213,"0000");
	 outtextxy(260,213,"0");






}
///////////////////////////////////
void huanwei(int h_count,int start_bei,int over_bei)
{
	int x,y;
	FILE *fp1,*fp2,*fp3;
	int i,j,k,f,xx,yy;
	WORD mode1[74][16];
	WORD mode2[5][16];
	WORD mode3[35][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);


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




	xx=a+40;yy=b+31+1+24+24+24+30;
	if(h_count==2||h_count==4||h_count==6)

	{
	 setcolor(1);
	 for(k=67;k<72;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=xx+2;yy=yy+2;
	 if(h_count==2)
	  {
		outtextxy(xx,yy,"(1750000--1850000)KHz,");
		 xx=xx+130;yy=yy-2;
	  }
	 else if(h_count==4)
	  {xx=xx+20;
		outtextxy(xx,yy,"(15--50)KHz,");
		xx=xx+80;yy=yy-2;
	  }

	 else if(h_count==6)
	  { xx=xx+20;
		outtextxy(xx,yy,"(0--30)dBm,");
		xx=xx+80;yy=yy-2;
	  }


	 setcolor(1);
	 for(k=72;k<74;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=xx+2;yy=yy+2;
	 if(h_count==2)
	  {
		outtextxy(xx,yy,"1KHz.");

	  }
	 else if(h_count==4)
	  {
		outtextxy(xx,yy,"1KHz.");
	  }

	 else if(h_count==6)
	  {
		outtextxy(xx,yy,"1dBm.");
	  }

	 }

  else
  {
	if(h_count==1)
	 { xx=xx-15;
		setcolor(1);
	 for(k=0;k<4;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

	 outtextxy(xx+2,yy+2,":");
	 outtextxy(xx+6,yy+2,"1.2KHz,2.4KHz,4.8KHz,9.6KHz.");
	 xx=xx+155 ;

	  setlinestyle(0,1,0);
		for(i=4;i>0;i--)
	{
		setcolor(0);
		line(xx+7+i,yy+8-i,xx+7+8-i,yy+8-i);
		line(xx+7+4,yy+8-4,xx+7+4,yy+8-4+10);
	}

	 xx=xx+10;

	 setlinestyle(0,1,0);
	 for(i=4;i>0;i--)/* 绘制三角形标志 */
	{
		setcolor(0);
		line(xx+7+i,yy+6+i+4,xx+7+8-i,yy+6+i+4);
		line(xx+7+4,yy+6+4+4,xx+7+4,yy+6+4+4-10);
	}

	xx=xx+17;
	 setcolor(1);
	 for(k=32;k<35;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

	outtextxy(xx+2,yy+2,".");
	 }
	else if(h_count==3)
	 {
	 setcolor(1);
	 for(k=4;k<9;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

	 outtextxy(xx+2,yy+2,"=");
	 xx=xx+8;
	 setcolor(1);
	 for(k=0;k<4;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 xx=xx+2;

	 if(huzaibo_data_y==36)
		 outtextxy(xx,yy+2,"*(8--30)");
	 else if(huzaibo_data_y==18)
		 outtextxy(xx,yy+2,"*(4--15)");
	 else if(huzaibo_data_y==9)
		 outtextxy(xx,yy+2,"*(2--7)");
	 else if(huzaibo_data_y==4)
		 outtextxy(xx,yy+2,"*(1--5)");
	 xx=xx+50;
	 setcolor(1);
	 for(k=13;k<16;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 outtextxy(xx,yy+2,".");


	  setlinestyle(0,1,0);
		for(i=4;i>0;i--)
	{
		setcolor(0);
		line(xx+7+i,yy+8-i,xx+7+8-i,yy+8-i);
		line(xx+7+4,yy+8-4,xx+7+4,yy+8-4+10);
	}



	 xx=xx+10;
	 setlinestyle(0,1,0);
	 for(i=4;i>0;i--)/* 绘制三角形标志 */
	{
		setcolor(0);
		line(xx+7+i,yy+6+i+4,xx+7+8-i,yy+6+i+4);
		line(xx+7+4,yy+6+4+4,xx+7+4,yy+6+4+4-10);
	}

	xx=xx+17;
	 setcolor(1);
	 for(k=32;k<35;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }

	// outtextxy(xx+6,yy+2,);
	outtextxy(xx+2,yy+2,".");

	 }
	else if(h_count==5)
	 {
	  xx=xx+20;
	 setcolor(1);
	 for(k=16;k<20;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 xx=xx+6;
	 outtextxy(xx,yy+2,":");
	 xx=xx+4;
	 for(k=22;k<24;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 xx=xx+2;
	 outtextxy(xx,yy+2,",");
	  xx=xx+4;
	  for(k=20;k<22;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 xx=xx+2;
	 outtextxy(xx,yy+2,".");



	  setlinestyle(0,1,0);
		for(i=4;i>0;i--)
	{
		setcolor(0);
		line(xx+7+i,yy+8-i,xx+7+8-i,yy+8-i);
		line(xx+7+4,yy+8-4,xx+7+4,yy+8-4+10);
	}


		xx=xx+10;

	 setlinestyle(0,1,0);
	 for(i=4;i>0;i--)/* 绘制三角形标志 */
	{
		setcolor(0);
		line(xx+7+i,yy+6+i+4,xx+7+8-i,yy+6+i+4);
		line(xx+7+4,yy+6+4+4,xx+7+4,yy+6+4+4-10);
	}

	 xx=xx+17;
	 setcolor(1);
	 for(k=32;k<35;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	  outtextxy(xx+2,yy+2,".");
	 }
	else if(h_count==7)
	 {
	  xx=xx+20;
	 setcolor(1);
	 for(k=24;k<28;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 xx=xx+4;
	 outtextxy(xx,yy+2,":");
	  xx=xx+4;
	  for(k=30;k<32;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 xx=xx+2;
	 outtextxy(xx,yy+2,",");

	 xx=xx+4;
	 for(k=28;k<30;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	 xx=xx+2;
	 outtextxy(xx,yy+2,".");

	  setlinestyle(0,1,0);
		for(i=4;i>0;i--)
	{
		setcolor(0);
		line(xx+7+i,yy+8-i,xx+7+8-i,yy+8-i);
		line(xx+7+4,yy+8-4,xx+7+4,yy+8-4+10);
	}


		xx=xx+10;

	 setlinestyle(0,1,0);
	 for(i=4;i>0;i--)/* 绘制三角形标志 */
	{
		setcolor(0);
		line(xx+7+i,yy+6+i+4,xx+7+8-i,yy+6+i+4);
		line(xx+7+4,yy+6+4+4,xx+7+4,yy+6+4+4-10);
	}

	 xx=xx+17;
	 setcolor(1);
	 for(k=32;k<35;k++)
	 {for(i=0;i<16;i++,yy++)
	 {setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
	 line(xx+12,yy,xx,yy);
	 }
	 xx+=12;yy-=16;i=0;
	 }
	  outtextxy(xx+2,yy+2,".");
	 }
  }

}
//////////////////////////////////
void draw_lin()
{
	int x1,y,x2,xx,yy;
  /*	x1=a+4;y=b+130;x2=a+4+4+44+265;
	setcolor(8);
	rectangle(x1,y, x2,y+20);
	setcolor(15);
	line(x1,y+20, x2,y+20);
	line(x2,y+1, x2,y+20);
	setfillstyle(1,11);
	bar(x1+1,y+1, x2-1,y+20-1);
	setcolor(7);
	line(x1,y+21, x2,y+21);
	line(x1,y+22, x2,y+22);
	setcolor(8);
	line(x1,y+23, x2,y+23);?*/



	x1=0;y=211;x2=115;
	setcolor(8);
	rectangle(x1+50,y, x2,y+20);
	setcolor(15);
	line(x1+50,y+20, x2,y+20);
	line(x2,y+1, x2,y+20);
	setfillstyle(1,7);
	bar(x1+1+50,y+1, x2-1,y+20-1);

	x1=200;y=211;x2=315;
	setcolor(8);
	rectangle(x1+50,y, x2,y+20);
	setcolor(15);
	line(x1+50,y+20, x2,y+20);
	line(x2,y+1, x2,y+20);
	setfillstyle(1,7);
	bar(x1+1+50,y+1, x2-1,y+20-1);





}

////////////////////////////////////////////////////////////////
void change_han(int start,int end,int *xx,int *yy,int color)
  {
	 FILE *fp3;
	 int i,j,k;
	 WORD mode3[67][16];

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


	 setcolor(color);
	 for(k=start;k<end;k++)

	  {for(i=0;i<16;i++,(*yy)++)
		{setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
		 line(*xx+12,*yy,*xx,*yy);
		}
	  *xx+=12;*yy-=16;i=0;
	 }
	*xx=*xx-(end-start)*12;
  }
//////////////////////////////////////////////////////////////////
void change_han_zz(int start,int end,int *xx,int *yy,int color)
  {
	 FILE *fp3;
	 int i,j,k;
	 WORD mode3[11][16];

	 if((fp3=fopen("hanzi10.dat","r"))==NULL)
	 {printf("Can not open the file\n");
		 exit(0);
	  }
	 for(k=0;k<11;k++)
	  for(j=0;j<16;j++)
		 fscanf(fp3,"%x,",&mode3[k][j]);
	 fclose(fp3);

	 setcolor(color);
	 for(k=start;k<end;k++)
	  {for(i=0;i<16;i++,(*yy)++)
		{setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
		 line(*xx+15,*yy,*xx,*yy);
		}
	  *xx+=16;*yy-=16;i=0;
	 }
	*xx=*xx-(end-start)*16;
  }
//////////////////////////////////////////////////////////////////
void anzi()
  {
	 FILE *fp3,*fp1;
	 long int i,j,k;
	 int xx,yy;
	 int x,y;
	 WORD mode3[35][16];

	 if((fp3=fopen("kai.dat","r"))==NULL)
	 {printf("Can not open the file\n");
		 exit(0);
	  }
	 for(k=0;k<35;k++)
	  for(j=0;j<16;j++)
		 fscanf(fp3,"%x,",&mode3[k][j]);
	 fclose(fp3);

	 setcolor(1);
	 x=0;y=0;
	 set_bar(&x,&y,1,320,240,0,0);

	 xx=60;yy=0+70;
	 setcolor(14);
	 for(k=0;k<11;k++)
	  {for(i=0;i<16;i++,yy++)
		{setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
		 line(xx+15,yy,xx,yy);
		}
	  xx+=20;yy-=16;i=0;
	 }

	 xx=0+80;yy=0+120;
	 setcolor(14);
	 for(k=11;k<22;k++)
	  {for(i=0;i<16;i++,yy++)
		{setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
		 line(xx+15,yy,xx,yy);
		}
	  xx+=16;yy-=16;i=0;
	 }



	 xx=0+150;yy=0+170;
	 setcolor(14);
	 for(k=33;k<34;k++)
	  {for(i=0;i<16;i++,yy++)
		{setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
		 line(xx+15,yy,xx,yy);
		}
	  xx+=16;yy-=16;i=0;
	 }
	 outtextxy(120,170+4,"2004");
	 xx=xx+10;
  for(k=34;k<35;k++)
	  {for(i=0;i<16;i++,yy++)
		{setlinestyle(USERBIT_LINE,mode3[k][i],NORM_WIDTH);
		 line(xx+15,yy,xx,yy);
		}
	  xx+=16;yy-=16;i=0;
	 }
	outtextxy(170,170+4,"9");

  }


//////////////////////////////////////////////////////////////////
void set_bar(int *x,int *y,int color,int hen,int shu,int addx,int addy)
{
	setcolor(color);
	setfillstyle(SOLID_FILL,color);
	bar(*x+addx,*y+addy,*x+hen,*y+shu);
}

//////////////////////////////////////////////////////////////////
void set_cur_line(int *curx,int *cury,int color,int hen,int shu)
{

	setcolor(color);
	setlinestyle(SOLID_LINE,1,1);
	line(*curx+hen,*cury+shu,*curx+hen+6,*cury+shu);
}

/////////////////////////////////////////////////////////////////////////////
void interrupt far Serial_Isr_12(__CPPARGS)
  {
	unsigned char ku;
	sserial_lock = 1;
	//open_port=COM_3;
	sser_ch = inp(COM_3 + SER_RBF);
	if (++sser_end > sSERIAL_BUFF_SIZE-1)
	 {
	  sser_end=0;
	  sser_start=-1;

	  }

  sser_buffer[sser_end] = sser_ch;


  if(sser_end==3)
	{
	 ku=sser_buffer[3]>>4;


	if(ku!=0x08)
		{

		 switch(sser_buffer[3])
		 {

		  case 1:
			 sSERIAL_BUFF_SIZE=18;shanwei_flag=1;shanwei_data_long=sSERIAL_BUFF_SIZE-1;
			 break;
		  case 2:
			 sSERIAL_BUFF_SIZE=43;shanwei_flag=1;shanwei_data_long=sSERIAL_BUFF_SIZE-1;
			 break;
		  c

⌨️ 快捷键说明

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