


я конечно могу перекомпилить на атмегу 8535 но не знаю как она будет работать. Я пишу в асме, библиотека для i2c написана в асме и работает крайне неустойчиво, т.к. в атмеге 8515 нет аппаратного TWI. Сейчас мучаю сей девайс на атмеге8а с аппаратным TWI для изучения протокола Xerox01. Так, для себя.
Добавлено спустя 1 час 56 минут 7 секунд:Правильно ли так условия писать?
;*************************************************************************
; Issues a start condition and sends address and transfer direction.
; addr = r24, return = r25(=0):r24
; return 0 = device accessible, 1= failed to access device
;*************************************************************************
i2c_start:
cbi PORTA,SDA
sbi DDRA,SDA ;force SDA low
rcall i2c_delay_T2 ;delay T/2
rcall i2c_write ;write address
ret
;*************************************************************************
; Issues a repeated start condition and sends address and transfer direction.
; addr = r24, return = r25(=0):r24
; return 0 = device accessible, 1= failed to access device
;*************************************************************************
i2c_rep_start:
cbi PORTA,SCL
sbi DDRA,SCL ;force SCL low
rcall i2c_delay_T2 ;delay T/2
sbi PORTA,SDA
cbi DDRA,SDA ;release SDA
rcall i2c_delay_T2 ;delay T/2
sbi PORTA,SCL
cbi DDRA,SCL ;release SCL
rcall i2c_delay_T2 ;delay T/2
cbi PORTA,SDA
sbi DDRA,SDA ;force SDA low
rcall i2c_delay_T2 ;delay T/2
rcall i2c_write ;write address
ret