И я решил-таки вернуться к этому проекту, поскольку, похоже, что для двух устройствLavr wrote: 11 Jul 2022 21:48Давно я хотел вот этот проект "пошевелить": Схема для RS232 (КР1878ВЕ1)
Но поскольку проект этот не более чем демонстрация возможностей КР1878ВЕ1 в качестве приёмника
и передатчика UART, я решил смоделировать устройство в PROTEUS и добавить необходимый мне функционал.
...
Вот тут-то и всплыли "подарки" от модели! Воистину - бесплатного сыра не бывает!![]()
http://www.nedopc.org/forum/viewtopic.php?p=137107#p137107
http://www.nedopc.org/forum/viewtopic.php?p=181327#p181327
мне понадобится аппаратный загрузчик вот такого типа: RS232 - в параллельный код,
чтобы записывать прошивки в ОЗУ этих устройств.
Я не могу сказать, что стал большой специалист по КР1878ВЕ1, с последнего проекта в этой ветке
так больше их и не трогал...
Но надо же куда-то применять их 20 штук!
В оригинальной программе мне не понравились две вещи: в настройке линии порта А4 указана
возможность прерывания как по фронту, так и по спаду, но прерывания не разрешены...
Нет и вектора прерывания от изменения на линии порта А4.
А второе - таймер настроен на один "тик" от внешнего устройства - так определяется "старт-бит" последовательной посылки. Оригинально весьма... но я бы так делать не стал, тем более, что у меня и задача несколько иная: реализовать устройство, по принципу упрощенного LPT-порта с протоколом Centronics.
Приём и выдача байта параллельно + strob и "послушать" busy, но отдать его на усмотрение передающего компьютера.
Так что опрос сигналов я сделал по polling-y, а последовательный сигнал принимал по прерываниям таймера, используя уже оригинальный, но слегка адаптированный алгоритм.
В общем-то всё получилось! Единственное, что заметил, таймер модели КР1878ВЕ1 работает вдвое отличаясь от оригинала, так что может случиться, что заработает это не на 9600, как рассчитано, а на 4800...
Хотя... возможно, и я чего-то недопонял, хотя пересчитал несколько раз.
Архив с проектом, оригиналом, моим кодом и компилятором прилагаю: Сразу хотел прошить, ибо уже 2 дня как закончил этот проект... но в упор не могу найти свой программатор...
Не сработала народная пословица:"Подальше положишь - поближе возьмёшь..."
Так что, видимо, займусь всем этим уже после Нового Года.
С НАСТУПАЮЩИМ НОВЫМ ГОДОМ ВАС ВСЕХ, КОЛЛЕГИ!
