📄 tinter.c
字号:
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_3_KRL;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_3_KRM;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_3_KRH;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
YS_addr=YS_addr+3;
break;
case 0x04:/* 4 遥脉板 */
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]+;
value=YM_BOARD_3_KRL;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_3_KRM;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_3_KRH;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_4_KRL;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_4_KRM;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
value=YM_BOARD_4_KRH;
asm stb value, [portiob];
asm ldb value, [portioa];
asm estb value, [YS_addr]+;
break;
default:/* 无 */
YS_addr=YS_addr+12;
break;
}
asm est msvalue, [YS_addr]+;
asm estb Sys_Second, [YS_addr]+;
asm estb Sys_Minute, [YS_addr]+;
asm estb Sys_Hour, [YS_addr]+;
asm estb Sys_Day, [YS_addr]+;
if(XMCount>=99)
{
XMFlag=1;
XM0FullFlag=0xFF;
asm ld YS_addr, #lsw YXBUF1;
asm ld YS_addr+2, #msw YXBUF1;
//处理任务到
Task[XmScanTaskNo].WaitStatus |=0x80;
}
XMCount=XMCount+1;
}
break;
case 0x01:if(XM1FullFlag!=0)
{
XMFlag=0;
XMCount=0;
asm ld YS_addr, #lsw YXBUF0;
asm ld YS_addr+2, #msw YXBUF0;
//处理任务到
//Task[XmScanTaskNo].WaitStatus |=0x08;
}else
{
portioa=PIO_A_CMD;
value=0;
asm stb value, [portioa];/* PIO_A_CMD=0 inpout */
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;
br
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -