Страница 463 из 1047 ПерваяПервая ... 363413453461462463464465473513563963 ... ПоследняяПоследняя
Показано с 4,621 по 4,630 из 10464

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #4621

    По умолчанию

    Всем добрый день.
    Решил разобраться как работать по modbus через библиотеку, а не через конфигурацию. Опрос получается успешно. Читаю несколько регистров и пишу их в заранее сформированную структуру
    Код:
    		pRead1:=ADR(bufRead);
    		bufRead1:=pRead1^;
    Сюрпризом стало, что чередование байт не совпадает (как то изначально не задумывался над этим). Соответственно, чтобы получить значение переменной, например WORD, x1:=bufRead1.in_x1 не подходит, а писать к каждой переменной:
    Код:
    x1:=BYTE_TO_WORD(bufRead[20]) OR SHL(BYTE_TO_WORD(bufRead[19]),8)
    а есть ещё и DWORDы и REAL - совсем получается некрасиво. Думаю, что каждую структуру можно загнать в цикл и переставить байты местами, но вот с этим пока мне не очень понятно. Может гуру толкнут в правильном направлении?

    P.S.
    сваял такую штуку:
    Код:
    pBuf:=ADR(bufRead);
    		FOR i:=0 TO 23 BY 2 DO
    		p:=ADR(pBuf^[i])+1;
    		p1:=ADR(pBuf^[i]);
    		p1^:=p^;
    		p1:=p1+1;
    		p:=p-1;
    		p1^:=p^;
    		i:=i+1;
    		END_FOR;
    		pRead1:=ADR(pBuf);
    		bufRead1:=pRead1^;
    Где bufRead1 - структура, а pRead1, соответственно указатель на эту структуру.
    Не работает...

    Всё, вопрос неактуален, разобрался сам.

  2. #4622
    Пользователь
    Регистрация
    13.10.2007
    Адрес
    Воскресенск
    Сообщений
    68

    По умолчанию

    подскажите пожалуйста.....
    ПЛК 160 <=> АС3-М -------- RS485 800m ------- АС4 <=> ПК CodeSys будет работать?

  3. #4623

    По умолчанию

    Как можно сделать такую логику, при нажатии на кнопку появляется 1 а при повторном нажатии на эту же кнопу появляется 0?

  4. #4624
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,254

    По умолчанию

    Цитата Сообщение от ООО "БЛС инжинеринг" Посмотреть сообщение
    Как можно сделать такую логику, при нажатии на кнопку появляется 1 а при повторном нажатии на эту же кнопу появляется 0?
    ищите по ключевым словам toggle switch
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  5. #4625

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    ищите по ключевым словам toggle switch
    Если не секрет где и как в CoDeSys V2.3 на CFC это искать?

  6. #4626
    Пользователь Аватар для Эдуард_Н
    Регистрация
    22.09.2014
    Адрес
    Курган
    Сообщений
    1,612

    По умолчанию

    Как можно сделать такую логику, при нажатии на кнопку появляется 1 а при повторном нажатии на эту же кнопу появляется 0?
    наверное как то так

  7. #4627
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,125

    По умолчанию

    А что Т триггера нет что ли
    электронщик до мозга костей и не только

  8. #4628
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,842

    По умолчанию

    Цитата Сообщение от Эдуард_Н Посмотреть сообщение
    наверное как то так
    Узнаю картинку http://www.owen.ru/forum/showthread....ll=1#post94449
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  9. #4629

    По умолчанию

    Спасибо вам

  10. #4630
    Пользователь Аватар для Эдуард_Н
    Регистрация
    22.09.2014
    Адрес
    Курган
    Сообщений
    1,612

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Решение очень простое и хорошее. И конечно спасибо Вам за него.

Страница 463 из 1047 ПерваяПервая ... 363413453461462463464465473513563963 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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