
Сообщение от
rw6hrm
Вот кстати.., а в коде есть процедура проверки флагов наличия в буфере принятого символа и флага занятости буфера на передачу? Чтот не нашёл...
В коде чего?
Впрочем, я везде использую проверки флагов. Оно даже из Бейсика доступно, там порты платы доступны.
- - - Добавлено - - -
У меня тут была эпопея с прерываниями от 580ВВ51А...
У этого порта есть выход RxRDY, взлетающий в единицу при поступлении очередного байта. Так оно и есть, взводится.
Я через инвертов прикошачил этот сигнал на INT_n процессора. Всё нормуль, байт прилетел, лапа ИНТ процессора вниз просела, пошла обработка прерывания. В обработчике читаем принятый байт, выходим по RETI и...
Код:
INTERR: IN A,(#80)
RETI
И тут косячина страшная! Выход ВВ51, несмотря на произведенное чтение, так и остается в "1", вопреки даташиту. Читаю регистр данных "вручную" - сбрасывается. Из обработчика прерывания читаю - хрен там! Мистика... Порядок сигналов-то не отличается! Или ВВ51 надо много времени, чтобы она осилила сброс путем чтения?
Пробовал и "пустышку" вперед ставить:
Код:
INTERR: IN A,(#81)
AND 1
JR Z,INTERR
IN A,(#80)
RETI
Один фиг...
В общем, убрал прерывания, можно и без них обойтись. Но загадка осталась.