ВУЗ:
Составители:
254
;Подпрограммы------------------------------------------------------------------
;Подпрограммы организации обмена (записи и чтения по произвольному адресу)
;по шине I2C для мастер-устройства.
;------------------------------------------------------------------------------
;Подпрограмма базового интервала (полупериода сигнала SCL) I2C
;------------------------------------------------------------------------------
Pod_DEL_I2C:
NOP ;тело задержки
RET
;------------------------------------------------------------------------------
;Подпрограмма отрицательного перепада на линии SCL I2C
;------------------------------------------------------------------------------
Pod_LOW_SCL:
CLR _SCL ;спад SCL
LCALL Pod_DEL_I2C ;пауза
RET
;------------------------------------------------------------------------------
;Подпрограмма отрицательного перепада на линии SDA I2C
;------------------------------------------------------------------------------
Pod_LOW_SDA:
CLR _SDA ;спад SDA
LCALL Pod_DEL_I2C ;пауза
RET
;------------------------------------------------------------------------------
;Подпрограмма положительного перепада на линии SCL I2C
;------------------------------------------------------------------------------
Pod_HIGH_SCL:
SETB _SCL ;фронт SCL
LCALL Pod_DEL_I2C ;пауза
RET
;------------------------------------------------------------------------------
;Подпрограмма положительного перепада на линии SDA I2C
;------------------------------------------------------------------------------
Pod_HIGH_SDA:
SETB _SDA ;фронт SDA
LCALL Pod_DEL_I2C ;пауза
RET
;------------------------------------------------------------------------------
;Подпрограмма положительного импульса на линии SCL I2C
;------------------------------------------------------------------------------
Pod_CLOCK_PULSE:
LCALL Pod_HIGH_SCL ;фронт SCL
JNB _SCL,$ ;дожидаемся перехода SCL в выс уров
LCALL Pod_LOW_SCL ;спад SCL
RET
;------------------------------------------------------------------------------
;Подпрограмма генерации условия START I2C
;------------------------------------------------------------------------------
Pod_START:
LCALL Pod_LOW_SCL ;
LCALL Pod_HIGH_SDA ;
LCALL Pod_HIGH_SCL ;
LCALL Pod_LOW_SDA ;START
LCALL Pod_LOW_SCL ;
RET
;------------------------------------------------------------------------------
;Подпрограмма генерации условия STOP I2C
;------------------------------------------------------------------------------
Pod_STOP: LCALL Pod_LOW_SCL ;
Страницы
- « первая
- ‹ предыдущая
- …
- 252
- 253
- 254
- 255
- 256
- …
- следующая ›
- последняя »