Страница 5 из 5 ПерваяПервая ... 345
Показано с 41 по 44 из 44

Тема: ПЛК110.60-М + МУ110-6У. Ступеньки на выходе МУ110-6У.

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Дык ведь целочисленная математика..


    И тута тоже - целочисленная.. Пока байтом не станет. А потом становится плавающей.
    А потом по просьбе (REAL_TO_BYTE) сызнова байт. А так байт байтом и был - все замечательно и влезает в байт. Это ж очевидно ))
    Т.е. Вы хотите сказать, что когда я делаю DACcode := DACcode + 1 при этом DACcode у меня REAL, то это делается c данными формата плавающей точки?
    Если да, то почему тогда на выходе именно ступеньки, причём масштаб(шкала по Y) той части, которая без ступенек, верный? Там ведь должна быть вообще абракадабра,т.к. формат плавающей точки не похож на обычный.

  2. #2

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Мдя.... сказка продолжается.
    А вот эта откуда ?
    Код:
    DAC_code : REAL;
    ведь с этим вот это

    германская механизьма не даст работать
    DAC_code тоже переделана в WORD, конечно же. Вы ведь смотрите на исходную версию кода, я же сейчас правлю и пишу.))

  3. #3

    По умолчанию

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

    А
    Код:
    tx_arr[1]	:= WORD_TO_BYTE(DACcode);
    просто отрезает младший байт и пихает в массив.

    Но почему такое не проходит с переменными типа REAL я не понимаю.
    Последний раз редактировалось Daedal; 18.06.2017 в 23:52.

  4. #4

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    А какое - такое ? Разве формат хранения плавающих совпадает форматом хранения целочисленных ?

    PS
    А с реалом нужно было сделать всего-то :
    .. := word_to_byte(real_to_word(..) / 256);
    .. := word_to_byte(real_to_word(..) );
    Хм...а почему нельзя сразу-то REAL_TO_BYTE ?

Страница 5 из 5 ПерваяПервая ... 345

Похожие темы

  1. Ответов: 10
    Последнее сообщение: 05.06.2017, 21:03
  2. ПЛК110 + МУ110-8И
    от PotokU в разделе ПЛК1хх
    Ответов: 17
    Последнее сообщение: 06.02.2017, 22:26
  3. ПЛК110-60 + МУ110-6У
    от kosmas в разделе ПЛК1хх
    Ответов: 13
    Последнее сообщение: 24.02.2015, 14:28
  4. Ответов: 5
    Последнее сообщение: 29.06.2013, 22:04
  5. ПЛК110+МУ110-32Р
    от mayak в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 09.04.2012, 08:05

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •