Помогите пжл,

Мне надо взять Float он же real, со слейв модуля с адресом 20, по смещению 4 (МВА8, температура в канале 1)
и записать ее:
- в панель по адресу 256.
- в другой слейв (плк150) по адресу 60.
Верен ли нижеследующий макрос?

WORD ArrValue[2];
READ(PLC, 20, MODBUS_RTU_REG_4X, 4, 0, TYPE_DWORD, &ArrValue);
*(float*)(PSW+256)=ArrValue;
WRITE(PLC, 1, MODBUS_RTU_REG_4X, 60, 0, TYPE_DWORD, ArrValue);

И почему в "директоре" нет никакой проверки синтаксиса?