Skip to main content
Visitor II
April 7, 2004
Question

How to do NO-STOP & RepSTART with I2C

  • April 7, 2004
  • 2 replies
  • 856 views
Posted on April 07, 2004 at 03:38

How to do NO-STOP & RepSTART with I2C

    This topic has been closed for replies.

    2 replies

    Visitor II
    April 6, 2004
    Posted on April 06, 2004 at 13:28

    My Interrupt driven I2C Function can read and write (as descibed on Fig. 58 Transfer Sequencing ST72264) in 7-bit Master Mode.

    Now I nead more ''complex'' telegrams:

    - 1) Telegram with NO STOP, to access the Bus for longer time (e.g. next telegram(s)). The pending IRQ flags (EVF*TRA*BUSY*BTF*M/SL) stay set and the SW hangs up in the ISR. I don't want to set the STOP condition!

    - 2) ... with repeated Start Condition (after the last EV8 as 7-bit Master Transmitter).

    Who knows the tricks?
    Visitor II
    April 7, 2004
    Posted on April 07, 2004 at 03:38

    You need not to set the STOP condition for sending next telegram.

    You can simply set START bit in I2CCR register after sending the last byte or before receiving the last byte. By setting START bit, the RESTART condition will be generated after last byte and next telegram can be transmitted.

    But after the last telegram you have to generate the STOP condtion to free the I2C bus.