INSiraJMENTS


///. Интерфейс с внешними устройствами


MOV.В IN, R1C AND.В #SDA, R1C JZ busy3 BIS.В #SCL, DIR MOV.В IN, R1C

устройству

проверка шины маскировать всё, кроме SDA

освободить линию SCL определение повторяю­щейся стартовой после довательности

AND.В #SDA, R1C

JZ busy3

POP Rll

POP RIO
RET

******************************************************

; Отправить «О» ******************************************************

sendzero

PUSH R1C

PUSH Rll

BIS.В #SDA, DIR ; выставить лог. «О» ; на линии SDA

BIC.B #SCL, DIR ; выставить лог. «1»

; на линии SCL

; проверка удлинения тактового сигнала ; (clock low extending), чтобы не опережать ведомое ; устройство

счетчик времени перехода SCL в «1» проверка шины арбитраж - время истекло проверка линии SCL освободить линию SCL

MOV #04h, Rll

clke MOV.В IN, R1C DEC Rll JZ busy3

AND.В #SCL, R1C

JZ clke

BIS.В #SCL, DIR

POP Rll

POP R1C

RET

******************************************************

; Ожидание подтверждения (АСК) ******************************************************

ack