Сломал себе мозг. Работает, но через раз. Не могу понять, почему. Если включать "на холодную", то всегда работает с ошибками. Если сбрасывать через reset, тоже всегда дает ошибки, даже если до этого работало нормально. Без ошибок работает если после небольшого прогрева передернуть по питанию. При этом все сканкоды читаются и распознаются правильно. Даже если выдернуть клавиатуру из разъема и снова воткнуть. Но стоит нажать ресет - и снова прут ошибки. Плохо то, что сброс по питанию помогает не всегда.
Правильный MAKE 'Q' Внизу состояние выхода RxRDY, от которого работает прерывание процессора.
Правильный BREAK 'Q'
А это то же самое с ошибкой контроля четности
Подключена ВВ51 просто. RxC и RxD к клавиатуре, RxRDY на вход INT процессора, /CS к A15, /WR и /RD/ к /IOWR и /IORD системного контроллера, вход /C/D к A0/, на CLK идет 2,4576 с ГФ24. Настроена ВВ51 на работу асинхронный режим с внешней синхронизацией. Вход SYNDET подтянут к +5. Для отображения сканкодов используется LCD 2004а, подключенный напрямую к шине данных.
Вопрос: где может быть косяк? Почему так нестабильно запускается ВВ51?




Ответить с цитированием