Но, то руки не доходили, то PIC12F629 мне не нравился (у меня такого нет)... Смущало также, что у одних он великолепно работает, а у других - категорически не работает...Lavr wrote:Ну в общем-то, чтобы не морочить себе голову, давно придумали люди простой переходник АТ-ХТ.![]()
Ну это, конечно, если религия позволяет заюзать "богомерзкий" PIC в "кошерной" схеме "тёплого, лампового"...![]()
На zx-pk.ru обсуждали, что схема эта работает без проблем...
На нашем форуме давали на этот материал ссылку:
Ну а исходные все материалы - вот здесь: AT2XT keyboard convertermurgatroid_79 wrote:архив в котором все необходимое для сборки адаптера xt-at
http://narod.ru/disk/32390970001/XTAT.rar.html
И схема-то проще некуда, но для проверки нужен ей симулятор сигнала АТ-клавиатуры...
В общем, вчера меня интерес захлестнул, и всё срослось!

Имитатор клавиатуры АТ я сделал вот из этого проекта на 8051: Имитируем работу клавиатуры.
Чтобы не шаманить с программой, я приделал генератор 5...10 Гц, который "нажимает" на кнопку и вызывает передачу
"клавиатурой АТ" кода 55Н - он хорошо виден на осциллограммах.
Чтобы всегда выдавался код 55Н, я чуть подпортил исходник программы для 8051, найти это можно.
В остальном проект на 8051 весьма путно имитирует "клавиатуру АТ".

В совокупности с PIC12F629 получилось вот что:

I2C монитор там, чтобы отслеживать наличие сигнала. По коду он лажает.. да и годен ли он для такого I2C?
PIC12F629 нормально опознает код 55Н от "клавиатуры АТ", правильно преобразует его в код ХТ = 0DH,
а вот имитирует протокол ХТ клавиатуры он, на мой взгляд, херовенько.

От того и, видимо, он у одних работает, у других - нет.
На осциллограммах: верхняя пара - то, что выдает PIC12F629

Нижняя пара - то, что передает 8051 в качестве "клавиатуры АТ" (масштаб сжат вдвое).
Видимо, для большей четкости передачи, надо код PIC12F629 чутка подработать, хотя авторы в комментах
пишут, что времянки все четко по стандарту реализованы.
Исходник проекта Протезус доступен вот здесь, если кто захочет "поиграть" с ним.
В исходнике - XTATKEY_094.HEX оригинальная прошивка от автора АТ2ХТ.
XTATKEY.ASM - оригинальный код, но я в нем кое что правил на свой взгляд, так что
оригинал исходника лучше брать с сайта http://www.vintage-computer.com/
Ну и мне сегодня удался очень приятный трюк, может кому пригодится...

При симуляции PIC в Протезусе надо вручную выставит биты конфигурации, хотя для прошивки они уже есть в НЕХ-файле.
__CONFIG _MCLRE_OFF & _CP_OFF & _WDT_OFF & _INTRC_OSC_NOCLKOUT ;Internal osc.
В MPLAB есть встроенная утилита, которая этот код вычисляет наглядно, но у меня - только MPASM...
И я с этим кодом всегда вручную мучаюсь...

Может я чего не знаю, и он тоже где-то может нужный код посчитать - я не нашел...

А порешал я проблему так: в свободном месте программы вставил следующее...
dw _MCLRE_OFF & _CP_OFF & _WDT_OFF & _INTRC_OSC_NOCLKOUT ;Internal osc.
Ну и при компиляции в листинге мне MPASM нужный код конфигурации PIC и сосчитал!
