megas
08.04.2009, 10:59
Какой-то баг в адресации float переменных или я что недопонял.
На панели, в элементе "ввод данных" прописываю регистр psw300. формат float, данные тип - Dword. Панель слэйвом. В контроллере определяю переменную real input с адресом 300 - и в этой переменной хрень приходит. Но если ставлю адрес 301 - число с панели приходит нормально. Сдвигал вперед-назад на байт-два - все равно такой эффект. чтобы получить нормально float - в контроллере адрес должен быть +1 от адреса в панели. С целыми типами такого нет! И с ИП320 такого не было.
Грешить на 4-рех байтовое выравнивание float переменных - не получается.
В общем можно терпеть, но как-то не логично.
На панели, в элементе "ввод данных" прописываю регистр psw300. формат float, данные тип - Dword. Панель слэйвом. В контроллере определяю переменную real input с адресом 300 - и в этой переменной хрень приходит. Но если ставлю адрес 301 - число с панели приходит нормально. Сдвигал вперед-назад на байт-два - все равно такой эффект. чтобы получить нормально float - в контроллере адрес должен быть +1 от адреса в панели. С целыми типами такого нет! И с ИП320 такого не было.
Грешить на 4-рех байтовое выравнивание float переменных - не получается.
В общем можно терпеть, но как-то не логично.