С портом разобрались здесь. Теперь надо разобраться с адресацией, чтением и записью по rs485. Создадим проект для тачпанели в программе VIJEO.
В ней я создал по три переменных, вывел, их на лицевую панель, задал адреса первым трем в разделе памяти 30001+, вторым трем в разделе памяти 40001+. Надо быть внимательными с типами данных, на рисунке ниже взгляните, одних целых типов сколько :)
Создали, залили в панель, теперь надо читать и писать их. Здесь я обратился опять к TERMITE, и с помощью него выяснил:
что область 30001+ читается функцией "4", а область 40001+ функцией "3". Запись функцией 6 происходит в область 40001+.
На этой табличке как раз мои два массива. Определить адрес для чтения довольно просто, Для области 30001+ надо вычитать 30001 из адреса переменной - получим адрес, который указываем в мастере для чтения (не забываем, что для области 30001 - функция "4")
Для области 40001+ отнимаем из адреса 40001, получаем адрес, который вставляем в запрос (для этой области функция "3")
Например INT01[0] имеет адрес 30001, адрес для запроса 30001-30001=0, т.е в мастере нужно сделать такой запрос 07 04 0000 0001 + CRC. Для INT0[2] адрес 30003, запрос будет такой 07 04 0002 0001 + CRC.
Для INT02[0] адрес 40001, адрес для запроса 40001-40001=0, запрос 07 03 0000 0001+ CRC.
40002 - 07 03 0000 0001+CRC
Как сделать тачпанель слэйвом?
Вот и написал себе напоминаловку :), вдруг еще раз шнейдеровская панель прилетит.