Библиотека Компэла


Глава 6.

Реализация шины SMBus на базе микроконтроллера MSP430

 

CALL #pbit ; отправить стоповую
  ; посылку
MOV. В #01h, 30(SP) ; возвращает «1» при
  ; успешном завершении
POP R13
POP R12
POP R11
POP R1C
POP R15
POP R14
POP R9
POP R8
POP R7
POP SR
RET  
. ****************** ***********************************

Подпрограммы нижнего уровня, общие для всех протоколов *****************************************************

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

отправка стартовой последовательности и адреса *****************************************************

sbit ; «отпустить» обе линии

BIC.B #DNC, DIR ; проверка освобождения шины

MOV #05h, R1C

wait

счётчик на 50 микросе­кунд

MOV.В IN, Rll

копировать состояние

входов в R11

AND #DNC, Rll
CMP #DNC, Rll
JNZ busy  
DEC RIO  
JNZ wait  
BIC.B #DNC, DIR

маска входов

если линии SDA или

SCL в лог. «0»то шина

занята

декремент счётчика

rsbit

дополнительное освобождение линии с целью использования этой же подпрограммы для команды повторяю­щегося старта отправка стартовой последовательности

Библиотека Компэла


f& Texas