chiark / gitweb /
fixes to new repeated start
authorian <ian>
Sat, 26 Nov 2005 17:55:19 +0000 (17:55 +0000)
committerian <ian>
Sat, 26 Nov 2005 17:55:19 +0000 (17:55 +0000)
detpic/i2clib.asm

index 1ebebb351b87cc03eb9049e89ebcc41e7d7cdb73..addff1cbe5b5b79d696167dc5d76d280eaa0c5c2 100644 (file)
@@ -288,15 +288,15 @@ i2cm_read_start
 ;----------
 m_read_start_busy
                bt_f_if1 st, st_awaiting
-               bra     m_read_another
+               bra     m_read_different
                panic   morse_SR
 
 ;----------
-m_read_another
+m_read_different
 ; Main program would like to address another slave.
                mov_wf  slave_next
                bra_z   m_improper_slave
-               bra     m_read_ack
+               bra     i2cm_read_done
 
 ;----------
 m_event_done_addressing_read
@@ -359,6 +359,7 @@ m_event_done_acking
                bra_z   m_stop
 ; ok, we want to read another:
                mov_wf  slave
+               clr_f   slave_next
                bs_f    st, st_reading
                bs_f    SSPCON2, RSEN
                bra     m_start_or_restart