Здравствуйте!
Проекты на форуме не проверяли.
Статья с рабочим проектом по МКИО:
https://startmilandr.ru/doku.php/prog:m ... le1986ve8n
Напишите, пожалуйста, решится ли проблема.
Также обратите, пожалуйста, внимание, что в зависимости от того, на основе каких микросхем выполнен модуль МКИО, могут быть необходимы дополнительные настройки:
Модуль МКИО для 1986ВЕ8(81)Т может быть выполнен на основе микросхем 5559ИН67 или на основе микросхем 5559ИН13У2.
Для модуля МКИО(5559ИН13У2) в регистре CONTROL бит [19] INVTR(разрешение инверсии сигналов) должен быть установлен в "0", а для модуля МКИО(5559ИН67) бит [19] - "1".
В нашем распоряжении есть две платы МКИО2 на основе микросхем 5559ИН13У2, соответственно бит 19 не выставляется.
Проект на вики, по существу совпадает с тем что устанавливаем в нашем проекте.
Но соединение плат прямым кабелем друг на друга также ни к чему не приводит VD14 горит после каждого обмена.
Порты ввода вывода проверены, если соответствующие линии использовать как ГПИО то сигнал от МК до разъёмов ХР22 и ХР23 проходит.
На линиях разъёма XP23(КШ) во время работы и попыток отправки сообщения тишина.
МКО1:
STATUS = 0x00000109 (Ошибка в последнем сообщении)
ERROR = 0x00000001 (Нет ответа на КС)
При этом, повторюсь, КС физически не ушло в линию из МК.
Обратите также внимание, что для памяти принимаемых/передаваемых слов данных используется общее адресное пространство 0x000-0xFFC (относительно базового адреса блока МКПД), при этом по записи осуществляется доступ к памяти передатчика, а по чтению к памяти приёмника. Таким образом считать ранее записанные данные из памяти передатчика не получится. Пример записи и чтения данных для подадреса 1 приведён в спецификации, пункт 7.22.8 Приём и передача в режиме ОУ, стр. 516.
Это интересное замечание.
Значит что физически приёмные и передающие буфера ПА всё таки разные?
Однако в спецификации прямого заявления о том что:
при этом по записи осуществляется доступ к памяти передатчика, а по чтению к памяти приёмника. Таким образом считать ранее записанные данные из памяти передатчика не получится.
нет.
Хотелось бы видеть это в спецификации.