Показано с 1 по 7 из 7

Тема: СП310-Р и Modbus TCP

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #6
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,054

    По умолчанию

    если ей передано "Количество регистров" значение = 0, возвращает TRUE.
    Считаю такое поведение некорректным, поскольку запрашивать на чтение 0-ое количество регистров - это ошибка, и функция должна возвращать TRUE.
    А на что жалуетесь-то ?


    Цитата Сообщение от andemeno Посмотреть сообщение
    ...
    Код:
    typedef struct regs_entry_ {
    	WORD addr;
    	WORD count;
    	void* tm;
    } regs_entry_t;
    
    BOOL tcpReadInputRegs(regs_entry_t entry) {
    	static WORD regs[256];
    	if(Reads(NET_0, 1, MODBUS_TCP_REGS_3X, entry.addr, entry.count, &regs)) {
    		memcpy(regs, entry.tm, 2*sizeof(entry.count));
    		return TRUE;
    	}
    	return FALSE;
    }
    ..
    1.Накой читать в regs а после записывать В regs ИЗ tm (а не наоборот) ?
    2.Накой regs вообще ?
    3.Ну видоизмените условия как считате нужным. Например:
    Код:
    BOOL tcpReadInputRegs(regs_entry_t entry) {
    	if((entry.count >= 1) && (entry.count <= 125) //это ж специфицировано протоколом
    			&& (еще может чего ?))
    		return Reads(NET_0, 1, MODBUS_TCP_REGS_3X, entry.addr, entry.count, entry.tm);
    	else
    		return TRUE; //и это логично т.к. транзакции не было, значит не было ошибки связи или другая плоскость - FALSE как результат получения данных? Разные логика вообще для связи и для получения данных
    }
    А если хотите большего интеллекта чем убогий BOOL, то возвращайте какой-нить код типа:
    -с_голимыми_входными_в_сад
    -транзакция_не_прокатила
    -нормуль
    и т.п.
    Последний раз редактировалось Валенок; 01.03.2023 в 00:19.

Похожие темы

  1. Ответов: 26
    Последнее сообщение: 31.01.2023, 17:42
  2. СП310 и 4 ТРМ212 по Modbus RTU
    от lenusan в разделе Панели оператора (HMI)
    Ответов: 1
    Последнее сообщение: 16.10.2020, 09:05
  3. Чтение/запись данных по Modbus панели СП310
    от _Алексей_ в разделе Панели оператора (HMI)
    Ответов: 7
    Последнее сообщение: 29.08.2018, 07:43
  4. СП310 и ПЛК110 - связь по Modbus TCP
    от DmitriiAnyushin в разделе Панели оператора (HMI)
    Ответов: 21
    Последнее сообщение: 24.08.2017, 10:41
  5. ПЛК73 slave - СП310 master ModBus вопрос по обмену
    от Иван Чернецкий в разделе ПЛК63/73
    Ответов: 4
    Последнее сообщение: 21.02.2017, 15:55

Ваши права

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