Здравствуйте.
Пишу макрос для СП310
static WORD ArrValueDW[2];
static float RegFloat;
WORD Temp1;

if (GetPSBStatus(318)==1) {//1
if (Reads(HMI_LOCAL_MCH, 0, TYPE_PFW, 300, 2, &ArrValueDW)) {//2
RegFloat=*(float*)(ArrValueDW);//float
*(float*)(PSW+318)=RegFloat;//PSW[318] DWord float
RegFloat=RegFloat*10.0;
Temp1=(WORD)RegFloat;
PSW[320]=Temp1;//PSW[320] Word Dec
if (Write(PLC, 82, MODBUS_RTU_REG_4X, 186, 0, TYPE_WORD, Temp1)) {//Wr adr 0x0080+58=186
ResetPSB(318);
} //Wr
}//2
}//1
При вводе данных в PFW[300] устанавливается бит PSB[318] и панель сразу зависает ( не реагирует на нажатия)...что я делаю не так?