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

📄 tinter.c

📁 电力变电站RTU监控软件(80C196NT单片机) 遥控
💻 C
📖 第 1 页 / 共 5 页
字号:
	     data++;
	     if(data>=60)
	     {
	       data=0;
	       pVar->Can_hour++;
	       if(pVar->Can_hour>=24) pVar->Can_hour=0;
	     }
	   }

	   portid=DS_SECOND;
	   asm	estb   value,  [portid];
	   portid=DS_MINUTE;
	   asm	estb   data,   [portid];
	   portid=DS_HOUR;
	   value=pVar->Can_hour;
	   asm	estb   value,  [portid];
	   portid=DS_DATE;
	   value=pVar->Can_date;
	   asm	estb   value,  [portid];
	   portid=DS_MONTH;
	   value=pVar->Can_month;
	   asm	estb   value,  [portid];
	   portid=DS_YEAR;
	   value=pVar->Can_year;
	   asm	estb   value,  [portid];
	   portid=DS_CENTURY;
	   value=pVar->Can_century;
	   asm	estb   value,  [portid];
	   portid=DS_REGB;
	   value=0x1E;
	   asm	estb   value,  [portid];
	   portid=DS_REGC;
	   asm	eldb   value,  [portid];
	   portid=DS_REGD;
	   asm	eldb   value,  [portid];
	   pVar->Can_clock_fg=0;
	}
     }

     switch(XMFlag)
     {
	   case  0x00:if(XM0FullFlag!=0)
		      {
			 XMFlag=1;
			 asm	ld	YS_addr,     #lsw  YXBUF1;
			 asm	ld	YS_addr+2,   #msw  YXBUF1;
			 XMCount=0;//处理任务到
			 // Task[XmScanTaskNo].WaitStatus |=0x08;
		      }else
		      {

			 portioa=PIO_A_CMD;
			 value=0;
			 asm  stb  value, [portioa];/* PIO_A_CMD=0 inpout  */

			 portioa=PIO_B_CMD;
			 value=0xff;
			 asm  stb  value, [portioa];/* PIO_B_CMD=1 outpout  */


			 portioa=PIO_A_DAT;   /*  数据	  */
			 portiob=PIO_B_DAT;   /*  地址	  */

			 switch(yxnum)	//遥信板个数
			 {
			   case  0x01:/* 1 遥信板   */
				      value=YX_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      YS_addr=YS_addr+15;
				      break;
			   case  0x02:/* 2 遥信板   */
				      value=YX_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      YS_addr=YS_addr+12;
				      break;
			   case  0x03:/* 3 遥信板   */
				      value=YX_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      YS_addr=YS_addr+9;
				      break;
			   case  0x04:/* 4 遥信板   */
				      value=YX_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;

				      YS_addr=YS_addr+6;
				      break;
			   case  0x05:/* 5 遥信板   */
				      value=YX_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_5_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_5_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_5_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      YS_addr=YS_addr+3;
				      break;
			   case  0x06:/* 6 遥信板   */
				      value=YX_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_2_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_3_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_4_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_5_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_5_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_5_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_6_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_6_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YX_BOARD_6_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      break;
			      default:/* 无  */
				      value=0;
				      YS_addr=YS_addr+18;
				      break;
			 }

			 switch(ymnum)
			 {
			   case  0x01:/* 1 遥脉板   */
				      value=YM_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;

				      YS_addr=YS_addr+9;
				      break;
			   case  0x02:/* 2 遥脉板   */
				      value=YM_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_2_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_2_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_2_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;

				      YS_addr=YS_addr+6;
				      break;
			   case  0x03:/* 3 遥脉板   */
				      value=YM_BOARD_1_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_1_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_1_KRH;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_2_KRL;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_2_KRM;
				      asm  stb	 value,    [portiob];
				      asm  ldb	 value,    [portioa];
				      asm  estb  value,    [YS_addr]+;
				      value=YM_BOARD_2_KRH;
				      asm  stb	 value,    [portiob];

⌨️ 快捷键说明

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