Keil Logo

Peripheral Simulation

For Analog Devices ADuC7027 — I²C Interface: I2C0

Simulation support for this peripheral or feature is comprised of:

  • Dialog boxes which display and allow you to change peripheral configuration.

These simulation capabilities are described below.

I2C0 Interface - Communication Dialog

I2C0 Interface - Communication

The I2C0 Interface - Communication dialog displays the I2C communication activity on the I2C bus. The message Mode, Address, Direction and data message content are displayed for each message. To clear the message display, double-click anywhere in the message display area.

I2C0 Interface - Control Dialog

I2C0 Interface - Control

The I2C0 Interface - Controller dialog configures one of the on-chip I2C controllers. Each I2C controller fully support master or slave operations. The following groups control the simulation of the I2C Interface:

I2C Configuration Group

  • I2C0CFG (Configuration Register) controls the basic operating mode of the I2C controller and contains the following control bits:
  • Slave Enable is set to enable the slave mode for this controller.
  • Master Enable is set to enable the master mode for this controller.
  • General Call is set to address every device on the I2C bus.
  • HW General Call is set to enable hardware general call.
  • Start Back-off Dis. is set to immediately retry a transmission after losing a bus arbitration.
  • Loop Back is set to internally connect the transmit and receive signals for test purposes.
  • Master Clock is set to generate a serial clock in master mode.

I2C Slave Status Group

  • I2C0SSTA (Slave Status Register) contains the following status bits:
  • Tx FIFO Empty is set when the slave transmit FIFO is empty.
  • Tx FIFO Underflow is set when slave transmit FIFO is underflowing.
  • Tx IRQ is set at the end of a transmission.
  • Rx IRQ is set after receiving message data.
  • Rx FIFO Overflow is set when the receive FIFO overflows.
  • No Ack is set when the master requests data and none is available.
  • Slave Busy is set when the slave is busy.
  • Tx FIFO Flush is set to clear the transmit FIFO.

I2C Master Status Group

  • I2C0MSTA (Master Status Register) contains the following status bits:
  • Tx FIFO Empty is set when the master transmit FIFO is empty
  • Tx IRQ is set at the end of a transmission.
  • Rx IRQ is set after receiving message data.
  • Rx FIFO Overflow is set when slave receive FIFO overflows.
  • No Ack is set when the master receive FIFO is full and the master hasn't acknowledged the received data.
  • Arbitration Loss is set when another master has control of the bus.
  • Master Busy is set when the master is busy.
  • Tx FIFO Flush is set to clear the transmit FIFO

I2C Broadcast Byte

  • I2C0BYTE is the byte used for broadcast.

I2C HW Gen. Call ID

  • I2C0ALT contains the identifier used when hardware general call is enabled.

I2C Clock Divider Group

  • I2C0DIVH contains the high-order byte of the 16-bit divisor term used to calculate the master serial clock.
  • I2C0DIVL contains the low-order byte of the 16-bit clock divisor term used to calculate the master serial clock.
  • Master Clock contains the calculated master clock frequency.

I2C Slave Data Group

  • I2C0SRX contains the last data byte received when in slave mode.
  • I2C0STX contains the last data byte sent when in slave mode.

I2C Slave Address ID Group

  • I2C0ID0 contains the first byte of the slave device ID.
  • I2C0ID1 contains the second byte of the slave device ID.
  • I2C0ID2 contains the third byte of the slave device ID.
  • I2C0ID3 contains the lastst byte of the slave device ID.

I2C Master Data Group

  • I2C0MRX contains the last data byte received when in master mode.
  • I2C0MTX contains the last data byte sent when in master mode.

I2C Master Address Group

  • I2C0ADR (Master Address Byte Register) contains the address of the slave device. This is transmitted automatically a the start of a tranmit sequence.

I2C Master RX Count Group

  • I2C0CNT (Master Data Receive Count Register) contains the number of bytes to be read from the slave device.
Get more information about the
Peripheral Simulation Capabilities
of the µVision Debugger.
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.