Т.е. сейчас вопрос сводится к преобразованию типов..
Мне всегда казалось, что преобразование
пихает не всё,а только старший байт из двух, т.к. деление на 256 - это фактически сдвиг на 8 бит вправо.Код:tx_arr[0] := WORD_TO_BYTE(DACcode /256);
т.е. я не пихаю все в байт, а пихаю старший байт слова в байт, т.к. массив байтовый.
А
просто отрезает младший байт и пихает в массив.Код:tx_arr[1] := WORD_TO_BYTE(DACcode);
Но почему такое не проходит с переменными типа REAL я не понимаю.