Интерфейс RS-485 протокол MODBUS RTU.
- Mr.Kubikus
- Сотрудник ПАКПАК
- Сообщения: 1020
- Зарегистрирован: 22 окт 2010, 23:57
Re: Интерфейс RS-485 протокол MODBUS RTU.
Исходники библиотеки и примеры лежат на гугл диске.
Re: Интерфейс RS-485 протокол MODBUS RTU.
А адрес прибора где указывается в скетче?
- Mr.Kubikus
- Сотрудник ПАКПАК
- Сообщения: 1020
- Зарегистрирован: 22 окт 2010, 23:57
Re: Интерфейс RS-485 протокол MODBUS RTU.
Второй параметр в функции modbus_construct().
Re: Интерфейс RS-485 протокол MODBUS RTU.
А какая именно библиотека использовалась в примере? В скаченном архиве еще несколько архивов с разными версиями библиотек.
- Mr.Kubikus
- Сотрудник ПАКПАК
- Сообщения: 1020
- Зарегистрирован: 22 окт 2010, 23:57
Re: Интерфейс RS-485 протокол MODBUS RTU.
Я использовал SimpleModbusMasterV2rev2.zip
Re: Интерфейс RS-485 протокол MODBUS RTU.
С этой библой ругается на строчку
Если убрать "1" после "&Serial" ругаться перествет...
Код: Выделить всё
modbus_configure(&Serial1, baud, SERIAL_8N1, timeout, polling, retry_count, TxEnablePin, packets, TOTAL_NO_OF_PACKETS, regs);
- Mr.Kubikus
- Сотрудник ПАКПАК
- Сообщения: 1020
- Зарегистрирован: 22 окт 2010, 23:57
Re: Интерфейс RS-485 протокол MODBUS RTU.
Я проводил эксперименты с платой Arduino Leonardo. В ней доступны два последовательных порта Serial и Serial1. Serial - это виртуальный порт, реализованный через USB, а Serial1 - физический, он выведен на ноги RX и TX контроллера. Поэтому у меня используется Serial1.
Если вы используете плату Arduino UNO, у которой доступен только один порт Serial, то в исходном коде надо заменить Serial1 на Serial. Вот так:
Если вы используете плату Arduino UNO, у которой доступен только один порт Serial, то в исходном коде надо заменить Serial1 на Serial. Вот так:
Код: Выделить всё
modbus_configure(&Serial, baud, SERIAL_8N1, timeout, polling, retry_count, TxEnablePin, packets, TOTAL_NO_OF_PACKETS, regs);
Тима писал(а):С этой библой ругается на строчкуЕсли убрать "1" после "&Serial" ругаться перествет...Код: Выделить всё
modbus_configure(&Serial1, baud, SERIAL_8N1, timeout, polling, retry_count, TxEnablePin, packets, TOTAL_NO_OF_PACKETS, regs);
Re: Интерфейс RS-485 протокол MODBUS RTU.
Ясно. Спасибо за разъяснение.
Я хотел попробовать на нано, но мой ноут почему-то не видит дуину. ВООБЩЕ не видит. Хотя в последний раз с домашнего компа все работало нормально. К домашнему компу доступа нету, нахожусь на вахте до конца недели. Когда приеду домой, продолжу эксперименты и отпишусь.
И еще...
Я хотел попробовать на нано, но мой ноут почему-то не видит дуину. ВООБЩЕ не видит. Хотя в последний раз с домашнего компа все работало нормально. К домашнему компу доступа нету, нахожусь на вахте до конца недели. Когда приеду домой, продолжу эксперименты и отпишусь.
И еще...
Если это возможно, давай на "Ты". Я не люблю когда ко мне обращаются на "Вы", особенно если этот человек мне помогает.Mr.Kubikus писал(а):Если вы...
- Mr.Kubikus
- Сотрудник ПАКПАК
- Сообщения: 1020
- Зарегистрирован: 22 окт 2010, 23:57
Re: Интерфейс RS-485 протокол MODBUS RTU.
Хорошо. Напиши, что у тебя получилось когда вернешься. Мы тут внимательно следим всем офисом ![Улыбается :)](./images/smilies/icon_e_smile.gif)
![Улыбается :)](./images/smilies/icon_e_smile.gif)
Re: Интерфейс RS-485 протокол MODBUS RTU.
Пока не получается считать данные с МВА8.
Может это быть из-за того, что порт SERIAL один?
Если так, буду пробовать отправлять данные не на порт , а на экран.
И еще, нужно считать данные из ячеек с адресами 4 и 5. Где их указывать?
Может это быть из-за того, что порт SERIAL один?
Если так, буду пробовать отправлять данные не на порт , а на экран.
И еще, нужно считать данные из ячеек с адресами 4 и 5. Где их указывать?