есть переменная VAR1(WORD) со значением "16#2239" . По факту это десятичное значение 2239. Как его вытащить не прибегая к доп. библиотеке с функцией "WORD_TO_HEXSTR", используя только стандартные codesys 2.X ?
есть переменная VAR1(WORD) со значением "16#2239" . По факту это десятичное значение 2239. Как его вытащить не прибегая к доп. библиотеке с функцией "WORD_TO_HEXSTR", используя только стандартные codesys 2.X ?
Вечер добрый нужна помощь с написанием софта для клавиатуры. Сейчас поясню Нужно запрограмирвать клавиши так чтобы при нажатии... Читать далее
Да ты ж самый умный, не? Нашу ветку не ты ли хотел на 35к кидануть со спомобом полной отвязкой от лизинга. Зачем ты мне пишешь... Читать далее
А в 11 как то решили эту проблему, т.к. все что описано и снято на видео уже в 95% случаев не актуально от слова совсем.... Читать далее
Уважаемые специалисты подскажите новичку в профинет. До этого были только трехсотые, в них забивал нужный ip и опрашивал... Читать далее
Всем привет. Есть такой вопрос, планируется подключение трёхфазной нагрузки на 37,6 кВт(суммарная мощность потребителя, если... Читать далее
Обновление 1.6.0 доступно для загрузки! Проделана большая работа. Множество улучшений и исправлений. Вам точно понравится. Новое... Читать далее
Комментарии: 10
Alexander
Эм... А точно это десятичное значение?
Andrey
Да
Alexander
Странный подход
Andrey
Ну если устройство так выдаёт.
Alexander
Может все же это hex?
Andrey
Двоично-десятичный код (англ. binary-coded decimal), BCD, 8421-BCD — форма записи рациональных чисел, когда каждый десятичный разряд числа записывается в виде его четырёхбитного двоичного кода. Таким образом, каждая тетрада двоично-десятичного числа может принимать значения от 00002 (010) до 10012 (910). Например, десятичное число 31110 будет записано в двоичной системе счисления в двоичном коде как 1 0011 01112, а в двоично-десятичном коде как 0011 0001 0001BCD. Вот код который успешно работает и даёт то что надо на ПЛК где есть библиотека. Это значение напряжения со счётчика Меркурий 200. На Меркурий 230 этого извращения с преобразованием нет, если что. Хочу затащить где такой библиотеки нет. MEMCPY(ADR(Uv_word),ADR(ReceiveBuffer[7]),1); MEMCPY(ADR(Uv_word)+1,ADR(ReceiveBuffer[6]),1); Uv:=STRING_TO_DINT(WORD_TO_HEXSTR(Uv_word,1,FALSE));
Alexander
А в codesys 2. X есть функция BCD_to_Word?
Andrey
есть BCD_TO_DEC, тестить надо :) Думал может у кого готовое решение есть...
Alexander
Ну у меня работает В эмуляторе, но codesys 3.5
Andrey
там где 3.5 там проблем с доп библиотекой нет... тут надо ужать по минимуму.. всё, сделал с oscat функцией DWORD_TO_STRH